Ubuntu 18.04 搭建 Jenkins
前言
工欲善其事,必先利其器
打包是开发过程中必不可少的一步,随着项目的壮大,打包时间越来越长,如果一直手动操作,浪费时间不说,还容易出错。记录一下安装Jenkins
的过程,以备不时之需。
环境(要求)
- 宿主机系统:Ubuntu 18.04
root
用户最高权限
步骤
安装 JAVA
Jenkins
是基于JAVA
的应用程序,所以要先安装Java OpenJDK
。
添加源
安装包software-properties-common
,添加java OpenJDK PPA
仓库源
sudo apt install software-properties-common apt-transport-https -y
sudo add-apt-repository ppa:openjdk-r/ppa -y
安装JAVA 8
sudo apt install openjdk-8-jdk -y
检查 JAVA
是否安装成功
java -version
安装 Jenkins
Jenkins
提供Ubuntu
安装包,从该仓库安装
添加Jenkins
签名
wget -q -O - https://pkg.jenkins.io/debian-stable/jenkins.io.key | sudo apt-key add
添加Jenkins
仓库
添加稳定版
sudo apt-add-repository "deb https://pkg.jenkins.io/debian-stable binary/"
添加最新版
sudo apt-add-repository "deb http://pkg.jenkins-ci.org/debian binary/"
更新apt
,安装Jenkins
sudo apt update
sudo apt install jenkins -y
启动Jenkins
并加入开机自启
systemctl start jenkins
systemctl enable jenkins
检查Jenkins
是否启动
Jenkins
已经启动,默认端口是8080
,检查一下是否已运行
netstat -plntu
配置防火墙
ufw allow ssh
ufw allow http
ufw allow https
ufw enable
如果需要从外部机器打开Jenkins
,记得开启防火墙端口,以默认8080
端口为例
sudo firewall-cmd --permanent --add-port=8080/tcp
sudo firewall-cmd --reload
sudo firewall-cmd --list-all
启动Jenkins
浏览器打开localhost:8080
,不出意外进入Jenkins
界面了,Jenkins
会有一个初始的管理密码,查看:
cat /var/lib/jenkins/secrets/initialAdminPassword
安装推荐的插件
复制该密码到浏览器,将进入到Jenkins
初始化界面,按照指引安装推荐的插件,等待结束。如果一直提示网络离线,请确保没有使用 VPN,如果用了Shadowsocks
,走PAC
模式都不行,请关闭。
安装其它插件
正常联网安装
如果网络一直没问题的话,在jenkins
内可以安装插件就在 Manage Jenkins
-> Manage Plugins
-> Available
里面搜索想要安装的插件,安装完后记得重启Jenkins
,如果网络一直不好,可以选择下面的方式离线安装。
离线下载安装
去 https://plugins.jenkins.io 下载Jenkins
插件,下载好后在Jenkins
页面安装,在 Manage Jenkins
-> Manage Plugins
-> Advanced
-> Upload Plugin
里上传安装。这里建议安装Environment Injector Plugin
、build-name-setter
,第一个是在构建时可以在运行时引入环境变量,在master-slave
模式下尤为有用,第二个是可以动态修改构建名称,默认的是#1
、#2
这样直接根据构建次数命名的非常不直观,自定义以后就能实现类似于DongKe_ad_hoc_#9_origin/ftr-1.5.0_bbeec66325a14413ae17257793028ceb5cd6204b
这样非常直观的名称。
使用 Jenkins
新建 Item
开始使用,具体使用方法谷歌,其实不难。也可以查看 WIKI。
注意点
如果更改了用户组,记得修改权限,否则Jenkins
将抛出IO error
无法启动。比如本来/var/lib/jenkins
目录所有者是usera
,现在需要更改为userb
所有:
sudo chown -R userb:userb /var/lib/jenkins
# 修改权限,我是直接给了777
sudo chmod -R 777 /var/lib/jenkins