最近在倒騰Kubernetes的一些東西,這次需要用到Jenkins來實作自動化建構.來講一講搭建的整個過程.
Jenkins是什麼 |
Jenkins提供了軟體開發的持續內建服務.它運作在Servlet容器中(例如Apache Tomcat).它支援軟體配置管理(SCM)工具(包括AccuRev SCM、CVS、Subversion、Git、Perforce、Clearcase和RTC),可以執行基于Apache Ant和Apache Maven的項目,以及任意的Shell腳本和Windows批處理指令
CentOS7下Jenkins搭建過程 |
Jenkins需要jdk環境:【Linux】CentOS7.0下安裝JDK環境
接下來我們開始準備安裝Jenkins,幾條指令即可(#後面為注釋内容):
#下載下傳Jenkins庫
wget -O /etc/yum.repos.d/jenkins.repo https://pkg.jenkins.io/redhat-stable/jenkins.repo
#導入key
rpm --import https://pkg.jenkins.io/redhat-stable/jenkins.io.key
#安裝Jenkins
yum install -y jenkins
#啟動Jenkins服務
systemctl start jenkins
到這裡,CentOS下Jenkins搭建便是完成了.
此時我們可以通過ip:port的方式,通路到Jenkins,如下圖所示

點選Continue之後,會出現下圖:
然後根據自己的需求,進行安裝即可.到此,CentOS下Jenkins搭建便是完成了.
可能遇到的問題 |
- Starting jenkins (via systemctl): Job for jenkins.service failed because the control process exited with error code.
-
運作指令:systemctl status jenkins.service 檢視錯誤詳細資訊
[Jenkins]CentOS7下Jenkins搭建 請注意我在圖中标注出來的兩個地方,第一個地方是Jenkins加載的路徑,第二個地方是Jenkins的錯誤詳細資訊:Failed to start LSB: Jenkins Automation Server
這是因為Jenkins 未加載到 java 環境的問題,直接修改 Jenkins 的啟動檔案,并在 candiddates 參數内追加 java 的環境變量即可
Jenkins的啟動檔案,在圖中第一個地方我已經做了标注,是以運作以下指令:
具體修改見下圖:vi /etc/rc.d/init.d/jenkins
關于java環境變量這部分,因為每個人的配置不同,是以你需要根據自己的實際情況做修改.如果是按照我開篇給出的方法安裝的jdk環境,可以直接套用.然後再做以下步驟即可(#後内容為注釋内容):[Jenkins]CentOS7下Jenkins搭建 #重新啟動Jenkins服務 systemctl restart jenkins.service #檢視Jenkins服務,可以看到服務已經起來了 systemctl status jenkins.service
- 在CentOS環境下,Jenkins已經安裝好了,但是在外部通路不到.這可能是因為防火牆的問題.出于安全的考慮,我是不建議直接将防火牆關掉的.開啟Jenkins需要的端口即可(以開啟8080端口為例,具體可根據自己需求更改):
-
開端口指令:firewall-cmd --zone=public --add-port=8080/tcp --permanent 重新開機防火牆:systemctl restart firewalld.service
- 因為Jenkins預設端口是8080,可能會導緻端口沖突.修改Jenkins的預設端口即可:
-
vi /etc/sysconfig/jenkins 在該配置檔案中,可以看到JENKINS_PORT這一項,根據需求修改即可.