您现在的位置是:Instagram刷粉絲, Ins買粉絲自助下單平台, Ins買贊網站可微信支付寶付款 > 

01 jenkins自動化部署流程(Jenkins自動化部署到多臺服務器配置)

Instagram刷粉絲, Ins買粉絲自助下單平台, Ins買贊網站可微信支付寶付款2024-06-09 15:57:56【】0人已围观

简介Jenkins+Rancher自動化部署本文主要記錄Jenkins+Rancher+k8s自動化部署相關配置說明,不涉及rancher和jenkins安裝部署,包含javaserver項目、WAR項目

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本地虛擬機的網絡。

參數說明:shutcm-fastquery-web:應用名稱,根據自身項目名稱修改port:容器啟動端口nodePort:對外提供服務端口,外部機器訪問

將上面配置好的shell腳本復制到Post Steps -> 執行shell文本域中,并點擊"保存" -> "立即構建"即可部署。

自動化集成:Jenkins管理工具詳解

下載Jenkins包

注意這里直接下載war文件,以Java服務的形式啟動。

啟動命令

啟動日志

訪問本地端口:8090

該頁面會提示初始登錄密碼的位置,查看該文件中初始密碼,并完成登錄。

安裝推薦插件

登錄之后先把推薦的插件裝上。

創建用戶

插件安裝完成之后會提示創建用戶。

這樣初始化完成。

重新啟動:restart

基礎配置

打開: Manage-Jenkins 選項,配置 Global-Tool-Configuration 選項:

配置組件:JDK、Git、Maven,采用開發環境的組件版本;

插件安裝

安裝如下插件:

簡介:基于Jenkins完成本地的Git倉庫項目打包;

保持構建的天數:3天,保持構建的最大個數:10個;

前置 Pre-Steps 步驟,這里執行一次maven版本查看:

構建 Build 步驟,這里直接寫項目的pom路徑,注意執行的maven命令:

后置 Post Steps 步驟,注意選擇構建成功后才執行,自行忽略這里shell語法的不入流組合:

上述配置完成后,打開任務頁面,執行如下操作:

這樣就可以通過jenkins完成本地項目的打包和啟動了。

簡介:通過配置用戶API訪問的token令牌,脫離jenkins控制臺,直接觸發構建任務;

進入用戶面板的設置選項,配置 API Token :

注意這里生成令牌后要立刻復制下來,頁面會提示token無法復現。

任務配置的構建觸發器模塊,設置遠程構建的令牌:

上面已經給到token的使用方式。

通過如下方式,直接觸發上述構建任務的流程:

這里通過腳本直接請求URL的方式觸發流程。

創建MavGit任務,這里不做過多的配置,與本地倉庫相比,只是把倉庫地址換成Gitee地址,只配置倉庫url和分支即可,其他采用默認:

因為是開放的倉庫地址,所以不用配置賬號密碼,默認指定master分支,然后執行build構建。

上面流程執行完后,查看MavGit的工作空間: /.jenkins/workspace/MavGit :

這里可以明顯發現,倉庫的代碼已經被pull下來,并且完成了自動打包流程,后續結合shell腳本完成jar啟動管理即可。

同系列文章 : 服務部署發布 灰度模式 自動化流程 消息中間件改造 微服務組件二次淺封裝 源碼倉庫

自動化部署工具jenkins,從此擺脫重復單調的工作

它是基于Java開發的一種持續集成工具,用于監控持續重復的工作,旨在提供一個開放易用的軟件平臺,使軟件的持續集成變成可能。

有了它你可以免除手工編譯,發布代碼,上線更容易。節省的時間你可以喝杯咖啡,放松一下 ^_^

道路千萬條,熟悉第一條,我這里使用 R

很赞哦!(57325)

Instagram刷粉絲, Ins買粉絲自助下單平台, Ins買贊網站可微信支付寶付款的名片

职业:程序员,设计师

现居:河南商丘民权县

工作室:小组

Email:[email protected]