Jenkins 是⼀个开源的Java软件项⽬,是基于 Java 开发的⼀种持续集成CI&CD⼯具,⽤于监控持续重复 的⼯作,旨在提供⼀个开放易⽤的软件平台,使软件的持续集成变成可能.
官⽅⽹站:https://jenkins.io/
一. 准备工作首先判断服务器(Ubuntu)上是否安装了Java JDK,并配置了环境变量.
yyg@sun:~$ java -version
java version "1.8.0_211"
Java(TM) SE Runtime Environment (build 1.8.0_211-b12)
Java HotSpot(TM) 64-Bit Server VM (build 25.211-b12, mixed mode)
如果没有安装,则安装并配置JDK环境变量.
#默认安装方式
sudo apt-get install openjdk-8-jdk
#也可以采用安装包方式进行安装配置
注意:
安装完JDK,并进行JDK的环境变量配置,请自行参考Linux下JDK环境变量的配置教程.
二. 安装Jenkins默认情况下,Ubuntu软件包中的Jenkins版本往往比较陈旧,所以为了得到较新的版本,为了利用最新的修复和功能,我们将使用Ubuntu中自带的软件包来安装Jenkins.
1. 首先安装存储库密钥wget -q -O - https://pkg.jenkins.io/debian/jenkins.io.key | sudo apt-key add -
添加密钥后,系统将返回OK.
2. 接下来,将Debian包存储库地址附加到服务器的sources.list中sudo sh -c 'echo deb http://pkg.jenkins.io/debian-stable binary/ > /etc/apt/sources.list.d/jenkins.list'
3. 更新Ubuntu的source.list软件源列表,以便apt-get将下载较新的存储库.
sudo apt-get update
4. 最后安装Jenkins及其依赖项
sudo apt-get install jenkins
注意
安装这个软件包将会:
-
将jenkins设置为开机启动的守护进程,可以查看/etc/init.d/jenkins获取更多细节;
-
将创建一个’jenkins'用户来运行此服务;
-
会将控制台日志输出到文件/var/log/jenkins/jenkins.log中,如果我们想解决Jenkins中碰到的问题,可以去检查该日志文件;
-
在/etc/default/jenkins 文件中,将会为启动选项配置必要参数,例如JENKINS_HOME等;
-
将jenkins设置在8080端口上进行监听,使用浏览器访问此端口以开始配置;
-
如果你的
/etc/init.d/jenkins
文件无法启动jenkins,可以编辑/etc/default/jenkins
,修改默认的----HTTP_PORT=8080----
为----HTTP_PORT=8081----
等其他未被使用的端口,本人系统端口号改为了8085!
sudo systemctl start jenkins
2. status命令检查运行状态
由于systemctl不显示输出,我们可以使用status命令来验证是否成功启动.
sudo systemctl status jenkins
如果一切顺利,则会在输出的开始显示服务处于活动状态,并配置为启动时自启动:
jenkins.service - LSB: Start Jenkins at boot time
Loaded: loaded (/etc/init.d/jenkins; bad; vendor preset: enabled)
Active: active (exited) since Wed 2020-01-15 10:00:11 CST; 3min 10s ago
Docs: man:systemd-sysv-generator(8)
Process: 1067 ExecStart=/etc/init.d/jenkins start (code=exited, status=0/SUCCESS)
Tasks: 0
Memory: 0B
CPU: 0
3. 设置防火墙规则
接下来我们可以调整防火墙的规则,以便我们可以在浏览器中对jenkins进行初始化设置.
3.1 打开防火墙
默认情况下,jenkins在端口8080上运行,因此我们将使用ufw打开该端口:
sudo ufw allow 8080
3.2 检查ufw的状态可以看到新的规则.
sudo ufw status
我们应该看到,从任何地方都可以访问8080端口:
Status: active
To Action From
-- ------ ----
OpenSSH ALLOW Anywhere
8080 ALLOW Anywhere
OpenSSH (v6) ALLOW Anywhere (v6)
8080 (v6) ALLOW Anywhere (v6)
现在,Jenkins已安装,并且防火墙也允许我们访问它,接下来我们可以去完成其他的初始化设置了.