Linux搭建Jenkins服务
Jenkins 国内源
https://dl.bintray.com/jenkins-zh/generic/jenkins/
前言
Jenkins作为CI&CD工具不管在研发领域还是在测试领域,都有着重要作用,可以将开发的代码自动部署到测试环境,也可以自动运行我们编写的自动化代码。
Jenkins可以在Windows系统,Mac,Linux系统搭建,而企业内部服务器多以Linux为主。所以下面主要演示如何在CentOS7.6操作系统上部署Jenkins。
关于CI&CD: https://www.redhat.com/zh/topics/devops/what-is-ci-cd
Jenkins 官方网站:https://jenkins.io/
前提条件
- 系统: CentOS7.6 <操作系统可以安装在虚拟机里,也可以购买云服务器>,为了更方便演示,我使用的是腾讯云服务器。
- jdk:1.8版本 Jenkins为纯Java开发的应用,需要java环境。
下载jdk https://www.oracle.com/java/technologies/javase/javase-jdk8-downloads.html
在xshell中,使用rz命令,将jdk安装包上传到linux服务器,rz 回车后,会弹出一个选择文件的对话框,在自己电脑上选择文件后,点击【确定】即可。
选择Linux x64 rpm包。下载完成后将rpm文件上传到Linux服务器上执行命令安装。
rpm -ivh jdk-8u181-linux-x64.rpm
操作步骤
1.安装Jenkins
下载Jenkins
https://mirrors.tuna.tsinghua.edu.cn/jenkins/redhat-stable/ 找到最新的安装包,下载到服务器。
wget https://mirrors.tuna.tsinghua.edu.cn/jenkins/redhat-stable/jenkins-2.222.3-1.1.noarch.rpm
安装Jenkins
yum install jenkins-2.222.3-1.1.noarch.rpm
启动Jenkins
systemctl start jenkins
2.打开浏览器,地址栏输入 http://IP:8080 (ip为你自己的服务器地址)
3.查看Jenkins日志中的内容,将密码输入网页中。
使用cat 命令查看密码。
4.选择推荐的插件进行安装
等待一段时间安装完成
安装过程需要一段时间,请净心等待。⌛️
5.创建一个新用户
插件安装完成后,提示创建管理员账号。
6.登录用户
常见问题
1. 启动Jenkins报错
安装完成Jenkins之后,启动Jenkins服务报错,报错信息如下:
[root@iZ0ecn7ueg5v6wZ ~]# systemctl start jenkins.service Job for jenkins.service failed because the control process exited with error code. See "systemctl status jenkins.service" and "journalctl -xe" for details.
如下错误信息
root@iZ0ecn7ueg5v6wZ ~]# systemctl status jenkins.service ● jenkins.service - LSB: Jenkins Automation Server Loaded: loaded (/etc/rc.d/init.d/jenkins; bad; vendor preset: disabled) Active: failed (Result: exit-code) since Tue 2020-04-28 13:24:08 CST; 3s ago Docs: man:systemd-sysv-generator(8) Process: 1910 ExecStart=/etc/rc.d/init.d/jenkins start (code=exited, status=1/FAILURE) Apr 28 13:24:08 iZ0ecn7ueg5v6wZ systemd[1]: Starting LSB: Jenkins Automation Server... Apr 28 13:24:08 iZ0ecn7ueg5v6wZ runuser[1915]: pam_unix(runuser:session): session open...0) Apr 28 13:24:08 iZ0ecn7ueg5v6wZ jenkins[1910]: Starting Jenkins bash: /usr/bin/java: N...ry Apr 28 13:24:08 iZ0ecn7ueg5v6wZ runuser[1915]: pam_unix(runuser:session): session clos...ns Apr 28 13:24:08 iZ0ecn7ueg5v6wZ jenkins[1910]: [FAILED] Apr 28 13:24:08 iZ0ecn7ueg5v6wZ systemd[1]: jenkins.service: control process exited, c...=1 Apr 28 13:24:08 iZ0ecn7ueg5v6wZ systemd[1]: Failed to start LSB: Jenkins Automation Server. Apr 28 13:24:08 iZ0ecn7ueg5v6wZ systemd[1]: Unit jenkins.service entered failed state. Apr 28 13:24:08 iZ0ecn7ueg5v6wZ systemd[1]: jenkins.service failed. Hint: Some lines were ellipsized, use -l to show in full.
根据错误 提示 文件配置错误
Loaded: loaded (/etc/rc.d/init.d/jenkins; bad; vendor preset: disabled)
解决方法: 修改 /etc/rc.d/init.d/jenkins 文件,添加java执行路径。
vi /etc/rc.d/init.d/jenkins
找到java路径配置,添加自己java的可执行路径。
注意 jdk1.8.0_251 251为小版本,可能有所不一样,
命令行中执行
which java
查看java具体路径。
2.下载插件速度过慢如何解决
因为默认从国外服务器上进行下载安装插件的。可以通过更改服务器地址进行下载。
打开 /var/lib/jenkins/updates
将此路径下的 default.json 文件中路径进行修改
将 http://www.google.com
改为 http://www.baidu.com
将文件中 updates.jenkins.io/download
替换为 mirrors.tuna.tsinghua.edu.cn/jenkins
保存文件。
重新启动Jenkins。
systemctl stop jenkins
systemctl start jenkins
或者直接下载已经修改好的文件替换即可。