一、前言
1、 Jenkins是什麼?
Jenkins是一個開源的支持自動化構建、部署等任務的平臺。基本上可以說是持續集成(CI)、持續發佈(CD)不可或缺的工具。
2、本篇環境信息
工具/環境 | 版本 |
---|---|
Linux Server | CentOS 7 |
Jenkins | 2.121.2 |
JDK | 1.8.0_181 |
Nginx | 1.14.0 |
3、準備工作
- 安裝JDK
參考:https://ken.io/note/centos-java-setup
將jdk1.8.0_181部署在目錄/usr/java/
部署完成後,jdk的根目錄就是:/usr/java/jdk1.8.0_181/
- 安裝Nginx(非必要步驟)
參考:https://ken.io/note/centos-quickstart-nginx-setup
部署Nginx是爲了方便我們通過域名訪問Jenkins,如果無此需求可忽略次操作
二、Jenkins安裝
1、Yum安裝
- yum源導入
#添加Yum源
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
- 安裝
sudo yum install -y jenkins
2、開放端口
Jenkins站點的默認監聽端口是8080
sudo firewall-cmd --add-port=8080/tcp --permanent
sudo firewall-cmd --reload
3、配置Java可選路徑
因爲Jenkins默認的java可選路徑不包含我們部署的jdk路徑,所以這裏要配置一下,不然Jenkins服務會啓動失敗
#修改jenkins啓動腳本
sudo vi /etc/init.d/jenkins
#修改candidates增加java可選路徑:/usr/java/jdk1.8.0_181/bin/java
candidates="
/etc/alternatives/java
/usr/lib/jvm/java-1.8.0/bin/java
/usr/lib/jvm/jre-1.8.0/bin/java
/usr/lib/jvm/java-1.7.0/bin/java
/usr/lib/jvm/jre-1.7.0/bin/java
/usr/bin/java
/usr/java/jdk1.8.0_181/bin/java
"
4、啓動Jenkins並設置Jenkins開機啓動
#重載服務(由於前面修改了Jenkins啓動腳本)
sudo systemctl daemon-reload
#啓動Jenkins服務
sudo systemctl start jenkins
#將Jenkins服務設置爲開機啓動
#由於Jenkins不是Native Service,所以需要用chkconfig命令而不是systemctl命令
sudo /sbin/chkconfig jenkins on
瀏覽器輸入 http://<ip address>:8080
訪問Jenkins
三、Nginx配置(非必要步驟)
1、配置Nginx反向代理Jenkins
- 新建配置文件
#新增Jenkins專用Nginx配置文件
sudo vi /etc/nginx/conf.d/jenkins.conf
#輸入以下內容並保存
server {
listen 80; #監聽80端口
server_name jenkins.ken.io; #監聽的域名
access_log /var/log/nginx/jenkins.access.log main;
error_log /var/log/nginx/jenkins.error.log error;
location / { #轉發或處理
proxy_pass http://127.0.0.1:8080;
}
error_page 500 502 503 504 /50x.html;#錯誤頁
location = /50x.html {
root /usr/share/nginx/html;
}
}
- 重載Nginx配置
sudo nginx -s reload
2、配置SELinux
如果不配置SELinux,通過Nginx反向代理訪問,可能會產如下錯誤
#查看錯誤信息
/var/log/nginx/jenkins.error.log
#錯誤信息示例
connect() to 127.0.0.1:8001 failed (13: Permission denied) while connecting to upstream, client: 127.0.0.1
- 方法1:
setsebool -P httpd_can_network_connect 1
- 方法2:
#關閉SELinux:
sed -i '/SELINUX/s/enforcing/disabled/' /etc/selinux/config
#重啓:
reboot
修改本地hosts,將域名jenkins.ken.io
指向CentOS IP,通過域名測試訪問
四、Jenkins初始化
1、解鎖Jenkins
查詢root賬號默認密碼
cat /var/lib/jenkins/secrets/initialAdminPassword
輸入密碼並解鎖
2、選擇插件
這裏直接選擇“安裝推薦的插件”即可
選擇安裝的插件後會進入插件安裝界面
3、添加管理員
插件安裝完成後會自動進入添加管理員界面
4、配置Jenkins URL
這裏的URL指的是默認訪問Jenkins的地址。
默認是是http://:8080,如果你通過Nginx配置了域名,那麼直接填寫配置的域名即可。
5、開始使用Jenkins
配置完Jenkins URL之後就完成了整個Jenkins配置引導
點擊“開始使用Jenkins”就會進入Jenkins主頁
搞定~