jenkins安裝教程


Build great things at any scale.

快速上手

  1. 安裝jenkins
  2. 使用jenkins

起源

一個項目比較完整的生命周期該是怎樣的?

由開發的coding階段和coding階段的質量測試,再到多次發布投入使用階段

而現代化的測試階段並不是從coding結束后開始,而是和coding同步進行的,今天上午coding完成一個功能,下午就要投入測試

如何測試呢,也就是將開發者完成的代碼,拉取到服務器A(一般是linux)上,按照開發者的部署文檔搭建各種依賴服務(可能是mysql,redis,kafka等等),然后運行代碼編譯后的文件或者是運行腳本

如果我們測試得出開發者今天完成的新功能存在問題,我們需要提出bug,然后開發者解決這個bug,解決完之后呢?

如果開發者在bug解決文檔中沒有說明是依賴服務出現了問題導致的這個bug,那么A機器上的依賴服務我們是不用重新搭建的,無非就是啟動和停止.

變化的往往都是開發者的功能的代碼部分.對於java coder,一般是將開發者在git的指定分支上的代碼pull下來之后編譯打包,然后替換掉A機器上的編譯后的包,重啟服務,繼續測試

每當需求發生變化,功能需要改進,bug等等問題的時候,代碼就會發成變化,而將這種變化需要我們在測試機器上得以體現,可能就是替換代碼包之類的,這個過程重復而且繁雜,也容易出現部署失誤,這種需求背景下產生了自動化持續構建的概念.

而jenkins正是貫徹和發揚了這一理念的持續構建工具

The leading open source automation server, Jenkins provides hundreds of plugins to support building, deploying and automating any project.

領先的開源自動化服務,jenkins中提供了眾多的插件以支持使用自動化的方式構建和發布任何工程.

本文作者同大家一起開始步入jenkins的鏡像世界,一步一步,深入jenkins,從入門到精通,從使用到理解掌握

為什么選擇jenkins

既然都是為了實現自動化持續構建,難道就jenkins這一個選擇嗎

通常我會使用百度指數,在涉足一個新的領域的時候幫助我了解這個領域哪些將會是趨勢,哪些只是殘留

百度指數只能反映國內的一部分情況,以后會加入google指數來反映國外的情況.

hudson/jenkins

hudson是jenkins的前稱

jenkins 2012-2019百度搜索指數趨勢圖

hudson的趨勢數量級在百,忽略不計

TeamCity
TeamCity是jet大腦的出品,百度搜索指數還未收錄

Travis

Travis CI是最老的托管解決方案之一

其他

其他有如gitlab ci,bamboo由於存在關鍵詞意義重疊的情況,目前還沒有想到比較好的解決方案,這次不加入比較.

結論

從上面的趨勢圖中無論是基數還是趨勢,jenkins的學習性價比對比travis要高許多.

當你選擇了一種語言,意味着你還選擇了一組技術、一個社區

從二次開發的角度來看,jenkins開源,而且使用的語言是java,使用的框架為spring,兩者分別為國內語言社區和框架社區中的頂級社區,發展的特別的好.

安裝

平台

目前僅支持到docker平台,其他平台安裝會錄取出,順序為列表順序.

Docker平台

下載鏡像

docker pull docker.io/jenkinsci/blueocean:1.10.1-bcc31d32159f

創建和啟動容器

docker run -d --name jenkins -p 8080:8080 -p 50000:50000 docker.io/jenkinsci/blueocean:1.10.1-bcc31d32159f

啟動之后使用

docker logs jenkins

在log信息的末行看到類似如下即說明安裝成功.

...
...
...
Jan 28, 2019 9:40:33 AM jenkins.install.SetupWizard init
INFO:
*************************************************************
*************************************************************
*************************************************************
Jenkins initial setup is required. An admin user has been created and a password generated.
Please use the following password to proceed to installation:
57ec07c4cc974ebd8d663f16056ebc81
This may also be found at: /var/jenkins_home/secrets/initialAdminPassword
*************************************************************
*************************************************************
*************************************************************
--> setting agent port for jnlp
--> setting agent port for jnlp... done
Jan 28, 2019 9:40:49 AM hudson.model.UpdateSite updateData
INFO: Obtained the latest update center data file for UpdateSource default
Jan 28, 2019 9:40:49 AM hudson.model.UpdateSite updateData
INFO: Obtained the latest update center data file for UpdateSource default
Jan 28, 2019 9:40:50 AM jenkins.InitReactorRunner$1 onAttained
INFO: Completed initialization
Jan 28, 2019 9:40:50 AM hudson.WebAppMain$3 run
INFO: Jenkins is fully up and running
Jan 28, 2019 9:40:51 AM hudson.model.DownloadService$Downloadable load
INFO: Obtained the updated data file for hudson.tasks.Maven.MavenInstaller
Jan 28, 2019 9:40:51 AM hudson.model.AsyncPeriodicWork$1 run
INFO: Finished Download metadata. 19,416 ms
Jan 28, 2019 10:28:12 AM hudson.model.AsyncPeriodicWork$1 run
INFO: Started telemetry collection
Jan 28, 2019 10:28:14 AM hudson.model.AsyncPeriodicWork$1 run
INFO: Finished telemetry collection. 2,339 ms
Jan 28, 2019 1:06:15 PM hudson.model.AsyncPeriodicWork$1 run
INFO: Started Fingerprint cleanup
Jan 28, 2019 1:06:15 PM hudson.model.AsyncPeriodicWork$1 run
INFO: Finished Fingerprint cleanup. 2 ms

如果在安裝過程中(即安裝還未完成),使用瀏覽器訪問頁面,訪問地址為 本機ip:8080,
會出現提示正在安裝,初始化的界面

相比與什么都不做,這個先反饋給安裝者我們正在安裝的設計非常的nice,用戶親和+1

稍等一會兒,頁面變為

大意是提示我們在安裝的環境的路徑為/var/jenkins_home/secrets/initialAdminPassword的文件里面包含中超級用戶的密碼

熟悉嗎?沒錯,聰明的讀者已經在上一步的安裝之后我們的確認命令docker logs jenkins中發現了端倪

*************************************************************
Jenkins initial setup is required. An admin user has been created and a password generated.
Please use the following password to proceed to installation:
57ec07c4cc974ebd8d663f16056ebc81
This may also be found at: /var/jenkins_home/secrets/initialAdminPassword
*************************************************************

復制消息57ec07c4cc974ebd8d663f16056ebc81粘貼到頁面輸入框

點擊continue進入界面

眾多豐富完善的插件是jenkins能夠自動化構建的一大殺器
這里我們選擇install suggested plugins,讓jenkins幫助我們自動安裝那些特別常用的插件,后續會有幾個重要插件我們單獨安裝

很快就完成了下載

之后我們創建管理員用戶

確認輸入一下訪問地址信息

點擊save and finish
之后提示我們安裝成功,點擊start using jenkins搞定

至此完成jenkins的安裝以及初始化

RedHat

Mac

Win10


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM