如何在CentOS 7上安装Jenkins

・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>

Zuoxiaojuan profile image