如何在CentOS 8/RHEL 8上安装Jenkins

时间:2020-02-23 14:30:44  来源:igfitidea点击:

本文将指导我们完成在CentOS 8/RHEL 8服务器上安装Jenkins的过程。 Jenkins是用Java编写的开源工具,用于自动化和更快的部署。 Jenkins具有丰富的功能,并且可以通过插件广泛扩展。

在安装Jenkins之后,将共享有关将Nginx设置为Jenkins服务器的反向代理的指南。我们假设我们已经准备好RHEL/CentOS 8服务器,然后再继续。该过程与RHEL/CentOS 7系统上的设置相同.256MB RAM,建议1GB + 1GB驱动器空间(尽管如果将Jenkins作为Docker容器运行,建议最小为10GB)

最低硬件要求:

由于Jenkins是用Java编写的,因此我们需要在RHEL/CentOS 8上设置Java运行时环境。

在RHEL/CentOS 8上安装Java

检查Java版本。

sudo yum -y install java-11-openjdk-devel

设置Java环境。

$java -version
openjdk version "11-ea" 2016-09-25
OpenJDK Runtime Environment (build 11-ea+28)
OpenJDK 64-Bit Server VM (build 11-ea+28, mixed mode, sharing)

加:

sudo vi /etc/profile.d/java.sh

提供文件源以开始使用它而无需注销。

export JAVA_HOME=$(dirname $(dirname $(readlink $(readlink $(which javac)))))
export PATH=$PATH:$JAVA_HOME/bin
export JRE_HOME=/usr/lib/jvm/jre
export CLASSPATH=.:$JAVA_HOME/jre/lib:$JAVA_HOME/lib:$JAVA_HOME/lib/tools.jar

测试

source /etc/profile.d/java.sh

首先从Jenkins导入存储库密钥

echo $JAVA_HOME
env

添加Jenkins RPM存储库

导入密钥后,将存储库添加到系统

sudo rpm --import https://jenkins-ci.org/redhat/jenkins-ci.org.key

然后使用yum安装Jenkins软件包:

sudo yum -y install wget
sudo wget -O /etc/yum.repos.d/jenkins.repo http://pkg.jenkins-ci.org/redhat/jenkins.repo

在RHEL 8/CentOS 8上安装Jenkins

如果仅需要LTS发行版,请改为运行以下命令:

sudo yum -y install jenkins

安装后,请使用以下命令启动并启用Jenkins服务:

sudo wget -O /etc/yum.repos.d/jenkins.repo http://pkg.jenkins-ci.org/redhat-stable/jenkins.repo
sudo rpm --import https://jenkins-ci.org/redhat/jenkins-ci.org.key
sudo yum -y install jenkins

状态检查应返回运行状态:

sudo systemctl start jenkins
sudo systemctl enable jenkins

在防火墙上允许端口8080/tcp。

$systemctl status jenkins
 ● jenkins.service - LSB: Jenkins Automation Server
    Loaded: loaded (/etc/rc.d/init.d/jenkins; generated)
    Active: active (running) since Mon 2019-04-15 00:32:01 EAT; 3min 26s ago
      Docs: man:systemd-sysv-generator(8)
     Tasks: 44 (limit: 11512)
    Memory: 713.8M
    CGroup: /system.slice/jenkins.service
            └─10841 /etc/alternatives/java -Dcom.sun.akuma.Daemon=daemonized -Djava.awt.headless=true -DJENKINS_HOME=/var/lib/jenkins -jar /usr/lib>
 Apr 15 00:32:01 rhel8.localhost systemd[1]: Starting LSB: Jenkins Automation Server…
 Apr 15 00:32:01 rhel8.localhost runuser[10819]: pam_unix(runuser:session): session opened for user jenkins by (uid=0)
 Apr 15 00:32:01 rhel8.localhost runuser[10819]: pam_unix(runuser:session): session closed for user jenkins
 Apr 15 00:32:01 rhel8.localhost systemd[1]: Started LSB: Jenkins Automation Server.

浏览到URL http://[serverip | hostname]:8080以访问Web安装向导。

sudo firewall-cmd --add-port=8080/tcp --permanent
sudo firewall-cmd --reload
sudo firewall-cmd --list-all

在RHEL/CentOS 8上配置Jenkins

首次访问新的Jenkins实例时,系统会要求我们使用自动生成的密码将其解锁。

将自动生成的字母数字密码复制粘贴到"管理员密码"字段中,然后单击"继续"。

# cat /var/lib/jenkins/secrets/initialAdminPassword
5e29f788df7748d2b5b3a62304aa0bc9

选择要安装的插件

接下来是创建一个用于管理Jenkins服务器的管理员用户帐户。

建议在受SSL证书保护的代理服务器后面访问Jenkins服务器。检查以下指南。

配置Nginx和SSL(可选)

在Nginx反向代理后面配置Jenkins并让SSL加密

默认情况下,Jenkins用户策略允许登录用户访问任何内容。情况并非如此,我们需要设置适当的用户策略。请在下面查看我们的Jenkins政策和用户管理指南。

在Jenkins上配置用户角色

如何在Jenkins中管理用户和角色

让其他用户使用其凭据登录并为他们分配角色,这些角色定义了他们在Jenkins服务器上可以执行的操作。

恭喜!!我们已经在RHEL/CentOS 8上成功安装了Jenkins。有关更多信息,请参阅官方文档。