如何在CentOS 7上安装Jenkins
Zuoxiaojuan
・5 分钟阅读
Jenkins是一个流行的开源CI (持续集成)工具,广泛用于项目开发,部署和自动化。
本文会指导你完成在 CentOS 7服务器实例上安装Jenkins的过程,为了方便访客访问,Nginx也会被安装为Jenkins的反向代理。
前提条件
在继续之前,你必须具备:
- 从头部署了一个CentOS 7服务器实例,
- 以sudo权限的形式登录到你的计算机作为非root用户,
步骤1更新CentOS 7系统
Linux系统最好的管理员做法之一是使系统保持最新,安装最新的稳定软件包,然后重新启动。
sudo yum install epel-release
sudo yum update
sudo reboot
重新启动后,使用相同的sudo用户登录。
步骤2安装Java
安装Jenkins之前,你需要在系统上安装一个Java虚拟机,在这里,我们使用YUM安装最新的OpenJDK Runtime环境1.8.0 :
sudo yum install java-1.8.0-openjdk.x86_64
安装后,你可以通过运行以下命令来确认它:
java -version
此命令会告诉你已安装的Java运行时环境:
openjdk version"1.8.0_91"
OpenJDK Runtime Environment (build 1.8.0_91-b14)
OpenJDK 64-Bit Server VM (build 25.91-b14, mixed mode)
为了帮助基于Java的应用程序正确定位Java虚拟机,你需要设置两个环境变量: "JAVA_HOME"还有"jre_home"
sudo cp /etc/profile /etc/profile_backup
echo 'export JAVA_HOME=/usr/lib/jvm/jre-1.8.0-openjdk' | sudo tee -a /etc/profile
echo 'export JRE_HOME=/usr/lib/jvm/jre' | sudo tee -a /etc/profile
source /etc/profile
最后,你可以打印它们以进行查看:
echo $JAVA_HOME
echo $JRE_HOME
步骤3安装Jenkins
使用正式的YUM repo安装Jenkins的最新稳定版本。这是1.651.2
cd ~
sudo wget -O /etc/yum.repos.d/jenkins.repo https://pkg.jenkins.io/redhat-stable/jenkins.repo
sudo rpm --import https://pkg.jenkins.io/redhat-stable/jenkins.io.key
yum install jenkins
启动Jenkins服务并会它设置为在引导时运行:
sudo systemctl start jenkins.service
sudo systemctl enable jenkins.service
为了允许访问者访问Jenkins,您需要允许端口8080上的入站流量:
sudo firewall-cmd --zone=public --permanent --add-port=8080/tcp
sudo firewall-cmd --reload
现在,通过从你的网页浏览器访问以下地址来测试Jenkins :
http://<your--server-IP>:8080
步骤4安装nginx可选
为了方便访问者访问Jenkins你可以为Jenkins设置一个nginx反向代理,这样访问者在访问你的Jenkins应用程序时不再需要输入端口号8080.
使用YUM安装Nginx :
sudo yum install nginx
修改Nginx的配置:
sudo vi /etc/nginx/nginx.conf
查找下面的两行:
location/{
}
将下面的六行插入{ }段:
proxy_pass http://127.0.0.1:8080;
proxy_redirect off;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
最后的结果应该是:
location / {
proxy_pass http://127.0.0.1:8080;
proxy_redirect off;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
}
保存和退出:
:wq
启动并启用Nginx服务:
sudo systemctl start nginx.service
sudo systemctl enable nginx.service
允许端口80上的流量:
sudo firewall-cmd --zone=public --permanent --add-service=http
sudo firewall-cmd --reload
最后,从Web浏览器访问以下地址以确认您的安装:
http://<your--server-IP>