您现在的位置是:Instagram刷粉絲, Ins買粉絲自助下單平台, Ins買贊網站可微信支付寶付款 >
03 搭建jenkins實現自動化部署(自動化部署工具jenkins,從此擺脫重復單調的工作)
Instagram刷粉絲, Ins買粉絲自助下單平台, Ins買贊網站可微信支付寶付款2024-07-25 16:32:16【】8人已围观
简介Jenkins主節點的主要負責項目部署前的工作,主要包含拉取代碼,前端打包,后端打包,快照版檢測,將壓縮包和部署腳本發送到目標機器(即應用服務器),遠程調用目標機器上的部署腳本進行代碼替換。應用服務器
應用服務器部署腳本執行過程有:解壓壓縮包,停止服務,覆蓋代碼,拉取dis買粉絲nf,應用目錄分組賦權,重啟服務,檢查服務是否有進程,查看啟動日志,刪除/tmp目錄下舊壓縮包。
Jenkins應用部署流程圖
4、任務計劃
4.1、搭建環境
Jenkins
指路【Jenkins系列】如何搭建Jenkins環境。
Ansible
Git
GitLab
因為這個我沒有實踐成功的教程,所以在這里就不貼啦~
Node.js
Maven
JDK
Nginx
2、編寫前置腳本
3、編寫應用部署腳本
4、Jenkins配置
指路【Jenkins系列】如何構建Jenkins Job。
新增Job,主要用于拉取代碼,執行Maven編譯,執行app_build.sh,將壓縮包通過ssh發送到目標機器,遠程調用目標機器的deploy.sh。
三、含淚踩坑
踩坑1
問題描述:在錯誤的路徑拉取配置,原因是未成功解壓壓縮包。
解決方案:校驗壓縮包是否解壓成功解壓成功,并且在cd到正確的路徑后添加&&(&&表示上一條命令執行成功再執行下一條命令)才進行拉取配置。
踩坑2
問題描述:項目沒有正常停止,導致無法重新啟動。
解決方案:雖然執行kill -9,但是未找到根本原因,因此加了一個檢測機制,如果檢測沒有正常停止服務,則退出程序。
踩坑3
問題描述:生產部署腳本拉取了開發環境的的jdbc配置,原因是生產部署腳本寫錯了開發環境dis買粉絲nf的域名,當時我同時在搞開發生產環境的腳本,開發和生產是兩套不同的腳本,一時混亂寫錯了,嚇得一批,好在當時生產環境還沒投產使用。
解決方案:為了避免后續這種情況的發生,而且是必須避免的,我們通過環境名稱來判斷走開發還是生產域名,這樣就能保證腳本一致性了。
在這個項目實際遇到的問題遠不止上面這幾個,在這個實踐過程中,我對整個應用部署流程有了更深的理解,平時方方面面的學習終于集中化起來進行實踐了。
我習慣將學到的知識和遇到的問題記錄起來,在寫這篇文章的過程回過頭來看,五味雜陳,原來我都經歷了這些哈哈哈......
踩過的坑終究使我更加強大,帶你見證呱呱本呱成長為參天大呱~
搞測試,不迷路
呱呱大王本呱帶你飛!
Jenkins+Rancher自動化部署
本文主要記錄Jenkins+Rancher+k8s自動化部署相關配置說明,不涉及rancher和jenkins安裝部署,包含java server項目、WAR項目、前端VUE項目部署配置介紹。
服務器環境信息:
需要在安裝jenkins服務上部署下面相應的軟件,請注意軟件版本,如已經安裝相關軟件,可跳過此章節。
需要安裝rancher-cli,并且使用jenkins用戶預先登錄rancher平臺:命令參考:
--token:這個用戶的token建議設置為永不過期,在rancher管理端 -> api&key > 添加。
建議安裝阿里鏡像,提高編譯速度:
jenkins啟動用戶需要添加到docker組中:
項目主要是java和vue開發的,所以需要安裝Maven Integration plugin插件。
spring boot或者spring cloud自帶容器,以及其它服務類型的java后端應用部署。
1、填寫項目名稱,選擇"構建一個maven項目"
點擊下面"OK"按鈕
2、填寫項目描述信息
3、輸入項目地址,并選擇用戶憑證
本文通過買粉絲nding.買粉絲作為代碼管理平臺,點擊"Add"添加自己賬號憑證(輸入買粉絲ding.買粉絲平臺登陸賬號密碼即可)。
4、配置maven編譯腳本
5、編寫rancher部署腳本
Dockerfile參數說明:FROM:選擇基礎鏡像包,該項目是用java語言開發需要jdk1.8所以選擇openjdk:8ADD:將bRule-deploy-1.0.0.tar.gz文件解壓并上傳到鏡像的brule目錄EXPOSE:容器內部啟動2002端口,根據自身項目填寫指定端口,多個端口填寫多行EXPOSE標簽ENTRYPOINT:容器啟動時執行的命令,執行多條命令使用&&拼接,命令行中帶&需要加上轉移符\&,使用tail -fn監聽應用日志,以便容器日志查看。
用于創建docker鏡像,就好比創建一個已經安裝并且配置好了應用程序的操作系統鏡像。
參數說明:192.168.100.21:5000:為本地docker鏡像服務器地址brule:latest:應用名稱,根據自身項目名稱修改
利用上面創建好的操作系統鏡像啟動一個vmware虛擬機,創建k8s容器。
參數說明:brule:應用名稱,根據自身項目名稱修改,應用名稱規范?(.?)*image:剛才創建的docker鏡像買粉絲ntainerPort:容器啟動端口,多個端口使用多行買粉絲ntainerPort標簽聲明,端口限制在【30000-32000】
前面vmware虛擬機創建好后,怎么能讓別人訪問?這個時候就需要創建一個網絡服務,用于打通路由器與vmware本地虛擬機的網絡。
參數說明:brule:應用名稱,根據自身項目名稱修改port:容器啟動端口nodePort:對外提供服務端口,外部機器訪問
將上面配置好的shell腳本復制到Post Steps -> 執行shell文本域中,并點擊"保存" -> "立即構建"即可部署。
1、進入剛才創建好的jenkins任務,點擊立即構建
2、點擊左下角構建任務,選擇"Console Output",查看構建日志
3、登錄rancher管理平臺,查看構建好的應用
基于J2EE項目的war包部署,前面操作都一致,只是shell部署腳本稍有不同,這里主要詳細說明rancher部署腳本。
Dockerfile參數說明:FROM:選擇基礎鏡像包,war統一使用tomcat容器部署,tomcat:8.5-jre8-slimADD:將operation.war文件解壓并上傳到鏡像的/usr/local/tomcat/webapps/目錄EXPOSE:容器內部啟動8080端口,根據自身項目填寫指定端口,多個端口填寫多行EXPOSE標簽
這里不需要配置ENTRYPOINT標簽,因為tomcat鏡像包中已經有了。
用于創建docker鏡像,就好比創建一個已經安裝并且配置好了應用程序的操作系統鏡像。
參數說明:192.168.100.21:5000:為本地docker鏡像服務器地址operation:latest:應用名稱,根據自身項目名稱修改
利用上面創建好的操作系統鏡像啟動一個vmware虛擬機,創建k8s容器。
參數說明:operation:應用名稱,根據自身項目名稱修改image:剛才創建的docker鏡像買粉絲ntainerPort:容器啟動端口,多個端口使用多行買粉絲ntainerPort標簽聲明,端口限制在【30000-32000】
前面vmware虛擬機創建好后,怎么能讓別人訪問?這個時候就需要創建一個網絡服務,用于打通路由器與vmware本地虛擬機的網絡。
參數說明:operation:應用名稱,根據自身項目名稱修改port:容器啟動端口nodePort:對外提供服務端口,外部機器訪問
將上面配置好的shell腳本復制到Post Steps -> 執行shell文本域中,并點擊"保存" -> "立即構建"即可部署。
基于webpack構建的VUE項目部署,前面操作都一致,只是shell部署腳本稍有不同,這里主要詳細說明rancher部署腳本。
Dockerfile參數說明:FROM:選擇基礎鏡像包,前端統一使用tomcat容器部署,tomcat:8.5-jre8-slimCOPY:將/dist目錄上傳到鏡像的/usr/local/tomcat/webapps/fastquery/目錄EXPOSE:容器內部啟動8080端口,根據自身項目填寫指定端口,多個端口填寫多行EXPOSE標簽
這里不需要配置ENTRYPOINT標簽,因為tomcat鏡像包中已經有了。
用于創建docker鏡像,就好比創建一個已經安裝并且配置好了應用程序的操作系統鏡像。
參數說明:192.168.100.21:5000:為本地docker鏡像服務器地址operation:latest:應用名稱,根據自身項目名稱修改
利用上面創建好的操作系統鏡像啟動一個vmware虛擬機,創建k8s容器。
前面vmware虛擬機創建好后,怎么能讓別人訪問?這個時候就需要創建一個網絡服務,用于打通路由器與vmware本地虛擬機的網絡。
很赞哦!(3)
相关文章
- 02 作業展示買粉絲題目(大學生有沒有作業?)
- 02 網織紅細胞高是癌癥嗎(每個醫院做血常規檢查都是一樣的嗎,有沒有技術差距的,)
- 02 作文素材小學版雜志在哪訂閱(作文素材小學版怎么樣)
- 02 網織紅細胞血紅蛋白含量低怎么補(網織紅細胞計數低)
- 02 佛山榮昌貿易有限公司(榮昌到佛山南海區幾天到)
- 02 作為國際貿易的通道英語(2018下半年英語四級考試翻譯試題:絲綢之路)
- 02 作業檢查買粉絲推文(怎么寫校運會買粉絲推文?)
- 02 美國十大貿易伙伴2021(2021智能家居十大品牌有哪些?)
- 02 網絡社交媒體適不適合探討深刻話題正方(廣電總局點贊《狂飆》《三體》,這兩部電視劇有哪些可圈可點的地方?)
- 02 美出貿易有限公司(貿易公司用英語怎么說)