Jenkins是一种开源自动化服务器,它提供了一种简便的方法来建立持续集成和持续交付CI/CD管道。

持续集成CI是DevOps的一种实践,团队成员定期将其代码更改提交到版本控制仓库,然后运行自动构建和测试。

持续交付CD也是其中的一系列实践,代码更改会自动生成,测试并部署到生产中。

本教程说明如何安装Jenkins在CentOS 7的步骤。以root用户或具有sudo权限的用户执行以下步骤在CentOS 7安装Jenkins。

Jenkins使用用Java编写。因此第一步是安装Java。Jenkins需要的Java版本是open-jdk 8和open-jdk 11。

但某些Jenkins插件可能无法与Java 8一起编译。你可能根据自己需要选择安装的java版本。

如你需要在同一计算机上安装Java/OpenJDK的版本,且可轻松自由的切换Java版本。可参考我们的教程如何在CentOS 7安装Java

在本教程中,我们将使用dnf命令/yum命令安装OpenJDK 8,因为这是使用得最多的java版本。

在您的系统上安装了多个Java版本,请确保Java 8是默认Java版本。下一步是启用Jenkins仓库。

使用wget命令下载Jenkins的仓库库文件并导入GPG密钥,wget命令-O 选项表示将文件下载到/etc/yum.repos.d/jenkins.repo目录中。

然后运行yum命令安装最新的Jenkins。安装过程完成后,运行systemctl命令启动Jenkins服务并使其在系统启动时自动启动。

如你要检查Jenkins是否正在运行,可以运行以下systemctl命令查看jenkins服务的状态确定是否在运行。

sudo dnf install java-1.8.0-openjdk-devel
sudo wget -O /etc/yum.repos.d/jenkins.repo http://pkg.jenkins-ci.org/redhat-stable/jenkins.repo
sudo yum install jenkins
sudo systemctl start jenkins
sudo systemctl enable jenkins
systemctl status jenkins

配置防火墙

如果你的CentOS启用了FirewallD防火墙,你可能需要打开端口8080,允许远程的访问。

由于CentOS在Firewalld防火墙中默认使用的是public区域zone,因此我们默认更改public区域。

如你不知道Firewalld防火墙的默认区域zone,你可查看我们的教程如何配置和管理防火墙在CentOS 8

sudo firewall-cmd --permanent --zone=public --add-port=8080/tcp命令将会将在public区域zone打开tcp的8080端口。然后重新加载防火墙配置。

sudo firewall-cmd --reload

设置Jenkins

要开始设置过程,请在浏览器打开http://127.0.0.1:8080。其中127.0.0.1是IP地址,端口8080是Jenkins的默认监听端口。

在安装过程中,Jenkins安装程序会创建一个初始的32个字符长的字母数字密码。你可通过命令sudo cat /var/lib/jenkins/secrets/initialAdminPassword查看密码。

复制密码,将其粘贴到管理员密码字段中,然后单击Continue

在下一个屏幕上,安装向导将询问您是否要安装建议的插件或要选择指定的插件。单击Install suggested plugins框,安装过程将立即开始。

接下来,系统将提示您设置第一个管理员用户。填写所需的信息,然后单击Save and Continue。下一页将要求您设置Jenkins实例的URL。该字段将填充自动生成的网址。

单击Save and Finish按钮确认URL,然后完成设置过程。单击Start using Jenkins按钮。

您将被重定向到以前面的步骤之一创建的admin用户身份登录的Jenkins仪表板。至此,您已经在系统上成功安装了Jenkins。

在本教程中,我们向您展示了如何在基于CentOS/RHEL的系统上安装并完成Jenkins的初始配置。

您可以访问Jenkins官方文档,并开始探索Jenkins的工作流程和插件模型。如有任何疑问,请在下面发表评论。