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