支持的操作系统
CentOS 7.5+
支持版本
建议使用版本为 Jenkins 2.249.1
安装和测试
-
获取源代码
执行以下命令,获取 Jenkins 软件包。
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
-
配置编译环境
(1) 要求 Java 的 OpenJDK 为 “1.8.0” 以上,可以通过以下命令安装。
yum install java-1.8.0-openjdk
(2) 要求 Maven 的版本为 “3.x” 以上,可以按照如下步骤安装 Maven。
a. 获取 Maven 软件包。
wget http://mirrors.tuna.tsinghua.edu.cn/apache/maven/maven-3/3.6.3/binaries/apache-maven-3.6.3-bin.tar.gz
b. 解压 Maven 软件包后,复制到待安装的目录。
tar -zxvf apache-maven-3.6.3-bin.tar.gz
cp -r apache-maven-3.6.3 /usr/local/maven
c. 配置 Maven 环境变量。
将如下内容添加到 “/etc/profile” 文件尾部:
MAVEN_HOME=/usr/local/maven
export PATH=
M
A
V
E
N
_
H
O
M
E
/
b
i
n
:
{MAVEN\_HOME}/bin:
MAVEN_HOME/bin:PATH
然后执行如下命令,加载环境变量。
source /etc/profile
d. 执行以下命令,查看 Maven 版本号。
mvn -v
回显内容如下,则证明 Maven 成功安装。
Apache Maven 3.6.1 (d66c9c0b3152b2e69ee9bac180bb8fcc8e6af555; 2019-04-05T03:00:29+08:00)
Maven home: /usr/local/maven
Java version: 1.8.0_181, vendor: Oracle Corporation, runtime: /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.181.b15-5.h3.eu
lerosv2r8.aarch64/jre
Default locale: en_US, platform encoding: UTF-8
OS name: “linux”, version: “4.19.36-vhulk1905.1.0.h276.eulerosv2r8.aarch64”, arch: “aarch64”, family: “unix”
-
安装软件
执行下面命令,安装 Jenkins 软件。
yum install jenkins
-
解决jenkins执行shell脚本等场景中遇见的权限不足问题
解决方法:以 root 用户运行 jenkins 中 shell 命令
以 centOS 系统为例,记录下修改 Jenkins 以 root 用户运行的方法。
修改 Jenkins 配置文件
打开配置文件
vim /etc/sysconfig/jenkins
修改 $JENKINS_USER,并去掉当前行注释
$JENKINS\_USER="root"
修改 Jenkins 相关文件夹用户权限
chown -R root:root /var/lib/jenkins
chown -R root:root /var/cache/jenkins
chown -R root:root /var/log/jenkins
解决jenkins内存溢出的问题及禁用CSRF解决403请求故障
同样修改jenkins的配置文件,修改JAVA_OPTIONS参数
vi /etc/sysconfig/jenkins
找到JENKINS_JAVA_OPTIONS="-Djava.awt.headless"
修改成
JENKINS_JAVA_OPTIONS="-Djava.awt.headless=true -Xms256m -Xmx512m -XX:MaxNewSize=256m -XX:MaxPermSize=256m -Dhudson.security.csrf.GlobalCrumbIssuerConfiguration.DISABLE_CSRF_PROTECTION=true"
具体参数根据自己的机器实际情况调整。
重启 Jenkins(若是其他方式安装的 jenkins 则重启方式略不同)
-
启动软件
(1) 执行以下命令,启动或重启Jenkins 服务。
systemctl start jenkins
systemctl restart jenkins
(2) 执行以下命令,查看 Jenkins 服务状态。
systemctl status jenkins
回显如下,则为正常启动。
● jenkins.service - LSB: Jenkins Automation Server
Loaded: loaded (/etc/rc.d/init.d/jenkins; generated)
Active: active (running) since Mon 2019-07-08 16:54:21 CST; 28min ago
Docs: man:systemd-sysv-generator(8)
Process: 7481 ExecStop=/etc/rc.d/init.d/jenkins stop (code=exited, status=0/SUCCESS)
Process: 8393 ExecStart=/etc/rc.d/init.d/jenkins start (code=exited, status=0/SUCCESS)
Tasks: 43 (limit: 26213)
Memory: 413.9M
CGroup: /system.slice/jenkins.service
└─8422 /etc/alternatives/java -Dcom.sun.akuma.Daemon=daemonized -Djava.awt.headless=true -DJENKINS_HOME>
Jul 08 16:54:20 ecs-1-0002 systemd[1]: Starting LSB: Jenkins Automation Server…
Jul 08 16:54:20 ecs-1-0002 runuser[8400]: pam_unix(runuser:session): session opened for user jenkins by (uid=0)
Jul 08 16:54:21 ecs-1-0002 runuser[8400]: pam_unix(runuser:session): session closed for user jenkins
Jul 08 16:54:21 ecs-1-0002 jenkins[8393]: Starting Jenkins [ OK ]
Jul 08 16:54:21 ecs-1-0002 systemd[1]: Started LSB: Jenkins Automation Server.
(3) 在浏览器地址栏输入 “http://[ECS IP]:8080” 访问 Jenkins,界面显示如下,表示 Jenkins 正常提供服务。
“ECS IP” 应为公网 IP 地址。
修改插件镜像源为清华镜像
镜像地址:https://mirrors.tuna.tsinghua.edu.cn/jenkins/updates/update-center.json