您现在的位置是:Instagram刷粉絲, Ins買粉絲自助下單平台, Ins買贊網站可微信支付寶付款 >
01 Jenkins pipeline script(jenkins 2 pipeline怎么獲取各個階段的log)
Instagram刷粉絲, Ins買粉絲自助下單平台, Ins買贊網站可微信支付寶付款2024-05-26 22:42:09【】8人已围观
简介在容器中運行Jenkinspipeline任務持續集成中的pipeline技術和docker都是當前正在發展的主流方向,當然把它們結合起來在CI/CD過程中發揮出更強大的威力也是大家共同的目標。本文將
在容器中運行 Jenkins pipeline 任務
持續集成中的 pipeline 技術和 docker 都是當前正在發展的主流方向,當然把它們結合起來在 CI/CD 過程中發揮出更強大的威力也是大家共同的目標。本文將介紹如何在 Jenkins pipeline 中集成使用 docker,好在當前的 Jenkins 已經默認通過插件實現了與 docker 的集成,所以這將是一段輕松愉快的旅程。
簡單起見,我們使用一臺安裝了 docker 的 linux 虛機,并通過 ssh 將其啟動為 Jenkins server 的 build agent。主要操作步驟如下:
我們通過下面的腳本一次搞定這些操作(docker 的安裝請參考官方文檔):
在 linux 虛機上執行上面的腳本,然后在 Jenkins 中添加 node(build agent):
其中的 "Remote root directory" 就是剛才創建的 /var/jenkins 目錄。"Launch method" 選擇 "Launch slave agents via SSH"。Host 為 linux 虛機的 IP,Credentials 則為剛才創建的 jenkins 用戶。
先來運行一個簡單的 demo。創建一個 pipeline 類型的 job,并輸入下面的 pipeline script:
運行該任務,執行結果如下:
其中的命令 node --version 就是在容器中執行的。
Jenkins 默認會把任務分配給任何可用的 agent,如果我們要指定任務執行的 agent,可以在 docker 的配置中指定 label,這樣該任務只會被分配到具有某個 label 的 agent 上運行:
我們還可以在 folder 級別指定 label,這樣的設置會應用在 folder 內所有沒有設置 label 的任務上:
除了 label,還可以設置 docker registry URL 及其身份認證的憑據。
我們還可以在不同的 stage 中運行不同的容器,其實就是每個 stage 用自己的容器鏡像創建容器并執行任務,stage 之間沒啥關系:
通過指定 Dockerfile 文件,在 build agent 上直接構建容器鏡像,然后生成容器并執行命令。下面的 demo 中我們通過 Dockerfile 創建一個包含 curl 工具的容器鏡像,然后通過該鏡像啟動容器并執行 HTTP 請求。該 demo 一共包含三個文件:Dockerfile 、entrypoint.sh 和 Jenkinsfile,大家可以直接從這里下載它們。先看一下 Dockerfile 文件的內容:
其中的 entrypoint.sh 內容如下:
Jenkinsfile 的內容如下:
注意,該文件中我們設置了 dir 為 curl 目錄,這是因為此項目的 Dockerfile 文件不是在代碼庫的根目錄下,所以需要指定其相對目錄的路徑。
然后在 Jenkins 中創建 pipeline 類型的 job,并把 pipeline 的 Definition 設置為 "Pipeline script from SCM" 。接下來設置好代碼倉庫的路徑就可以了。運行該任務,從日志上可以看到取完代碼后先通過 Dockerifle 文件構建了容器鏡像:
并在容器中運行了 curl 買粉絲://買粉絲.買粉絲blogs.買粉絲/sparkdev/p/8795141.買粉絲 命令。
上面的例子中我們通過 Dockerfile 生成了容器鏡像,并且完成了相關的測試(通過 curl 請求了測試網頁)。接下來就是把生成的容器鏡像推送到鏡像倉庫中。下面將演示如何在 pipeline 中把構建的鏡像推送的鏡像倉庫。首先在 Folder 的配置界面中添加訪問 dockerhub.買粉絲 憑據如下:
如果是訪問 dockerhub 就不需要填寫 "Docker registry URL"。然后添加下面的 Pipeline script:
注意, 9e70c1eb-814c-4cf2-97e9-5bfc20461231 剛才創建的憑據的 ID,可以從 folder 的 Credentials 界面中獲得。運行這個任務,執行成功后去 dockerhub.買粉絲 上看一下,是不是已經把新構建的鏡像推送上去了:
從本文的幾個簡單 demo 可以看出,jenkins pipeline 和 docker 集成的已經很好了。當然你還可以實現更多更復雜的用例,趕緊動手吧!
參考:
Using Docker with Pipeline
Pipeline Syntax
作者:sparkdev
出處:買粉絲://1t.click/aerf
Jenkins-pipeline中SSH方式登錄遠程機器
pipeline{
agent any
stages {
stage ('Pipeline 買粉絲nfiguration') {
agent none
steps {
script {
stage ('Pull & PushImage') {
def remote = [:]
remote.name = 'test'
remote.host ='192.168.248.190'
remote.user = 'root'
remote.password ='password'
remote.allowAnyHosts= true
writeFile file:'jemeter.sh', text: 'cd /ibm \n ls'
sshScript remote: remote,script: "jemeter.sh"
很赞哦!(549)
相关文章
- 03 關于國際服務貿易的論文題目(求國際貿易論文題目)
- 03 閱讀訂閱源2022(2022屬豬結婚日子,2022上等嫁娶吉日查詢)
- 03 青島十大網紅景點圖片(網紅旅游景點介紹素材圖片 網紅旅游景點介紹素材圖片)
- 03 阿里國際貿易平臺由誰監管(阿里巴巴現在在國際上有多大影響?處于怎么一個地位?)
- 03 關注福建少先隊買粉絲(少先隊員買粉絲怎么關注)
- 03 軍工貿易上市公司(軍工半導體芯片制造商哪些上市公司)
- 03 集體生日會買粉絲(兒童節的來歷)
- 03 內蒙古黨員教育買粉絲買粉絲是什么(如何寫實施方案)
- 03 農產品出口貿易公司(農產品商貿公司經營范圍怎么寫)
- 03 陜西省水利廳官網買粉絲關注(發布招標公告在哪個網)
热门文章
站长推荐
03 農產品國際貿易的特殊性包括(國際貿易和農產品國際貿易有哪些不同?)
03 陜西四方汽車貿易有限公司招聘(東莞市東城區下橋第一工業區有東莞市三新電子電器有限公司嗎?)
03 農產品國際貿易格局有什么樣的變化(國際形勢對農產品出口貿易的影響)
03 門到門或站到站運輸方式的貿易術語是(我國對外貿易中經常使用的貿易術語有幾種在集裝箱海運和多式聯運上應采用哪些貿易術語為什么?)
03 寫上海外灘的作文600字(上海之旅作文600字)
03 陜西省外貿實業有限公司(求各大貨代電話)
03 內蒙古滿世國際貿易有限公司(在內蒙古企業有哪些)
03 內陸國家怎么對外貿易(地理位置對一個國家或地區的經濟發展和對外貿易的重要性)