日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

github镜像网站_Jenkins把GitHub项目做成Docker镜像

發布時間:2024/3/13 编程问答 28 豆豆
生活随笔 收集整理的這篇文章主要介紹了 github镜像网站_Jenkins把GitHub项目做成Docker镜像 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

本文是《Jenkins流水線(pipeline)實戰》系列的第三篇,前面已對Jenkins流水線有了基本認識,也試過從GitHub下載pipeline腳本并執行,今天的實戰是編寫一段pipeline腳本,該腳本的作用是從GitHub下載一個Java項目(Maven構建的),然后編輯構建此項目,并將構建結果制作成Docker鏡像并且推送到私有鏡像倉庫;

系列文章地址

  • Jenkins流水線(pipeline)實戰之:從部署到體驗
  • 讓Jenkins執行GitHub上的pipeline腳本
  • 環境信息

    為了快速完成Jenkins部署,本次實戰用到了Docker,請在實戰前準備好以下環境:

  • 操作系統:Ubuntu 18.04.2 LT
  • Jenkins:2.176.3
  • Docker:19.03.1
  • 私有鏡像倉庫:Harbor 1.9.0
  • 實戰內容簡介

    今天的實戰功能如下圖所示:

    關于Docker私有鏡像倉庫Harbor

    構建好的Docker鏡像,會被推送到Docker鏡像倉庫Harbor,此倉庫是我自己在本地搭建的,詳細搭建步驟請參考CentOS部署Harbor鏡像倉庫 ,如果您有hub.docker.com網站的賬號,也可以直接將鏡像推送到此網站,這樣大家都能使用到您制作的鏡像了。

    關于本次用到的GitHub項目

    本次實戰會將一個GitHub上的項目先編譯,再構建成Docker鏡像,我這邊準備了一個基于Maven構建的SpringBoot項目,這是個Hello world級別的工程,唯一特別之處是pom.xml中用到了Jib插件,用來將SpringBoot項目構建成Docker鏡像。

    該項目的源碼可以從GitHub上下載,地址是:https://github.com/zq2599/blog_demos.git

    這個git項目中有多個文件夾,本章的應用在hellojib文件夾下,如下圖所示:

    來看看此工程的pom.xml,重點是Jib插件部分,如下所示:

    com.google.cloud.tools jib-maven-plugin 1.3.0openjdk:8-jdk-stretchbolingcavalry/hellojib:${project.version}-Xms4g-Xmx4g8080

    使用Jib將SpringBoot項目構建成Docker鏡像的更多信息,請參考https://blog.csdn.net/boling_cavalry/article/details/94355659;

    用私有的GitHub倉庫來實戰

  • 考慮到實際工作中大多數源碼都沒有對外公開,因此我這里也建了個私有GitHub倉庫,地址是:https://github.com/zq2599/pipeline.git ,將前面提到的的hellojib工程所有源碼都放入此倉庫;
  • pipeline下載私有倉庫的源碼時需要身份驗證,驗證方式后面會說到。
  • 這個私有倉庫里面并不只有hellojib一個工程,倉庫的根目錄下的目錄里面才是構建鏡像會用到的Maven工程:
  • 創建Jenkins任務

    1. 創建一個名為流水線任務:

    2. 接來下我們要借助Jenkins提供的語法工具來生成下載GitHub的pipeline代碼,如下圖,在設置任務的頁面點擊紅框中的按鈕:

    3. 現在進入的頁面是Jenkins輔助我們編寫pipeline腳本的地方,請按照下圖操作:

    4. 在彈出的窗口配置一個保存了GitHub賬號和密碼的秘鑰配置項,請按照下圖的數字順序操作:

    5. 如下圖紅框所示,在下拉菜單中選擇剛才創建的秘鑰配置:

    6. 此時可以發現之前的紅色錯誤提示已經消失(因為鑒權通過了),點擊下圖紅框中的按鈕即可生成pipeline源碼:

    7. 完整的pipeline腳本內容如下,其中階段從GitHub下載的那段腳本,就是上圖中自動生成的:

    pipeline { agent any tools { maven 'mvn-3.6.2' } stages { stage('Checkout') { steps { echo '從GitHub下載項目源碼' checkout([$class: 'GitSCM', branches: [[name: '*/master']], doGenerateSubmoduleConfigurations: false, extensions: [], submoduleCfg: [], userRemoteConfigs: [[credentialsId: 'git-account-passwd', url: 'https://github.com/zq2599/pipeline.git']]]) } } stage('Build') { steps { echo '開始編譯構建' sh 'cd hellojib && mvn clean compile -U -DskipTests jib:dockerBuild' } } stage('Push') { steps { echo '將本地Docker鏡像推送到Harbor鏡像倉庫' echo '給當前鏡像設置帶有Harbor地址和項目名稱的Tag,這樣才能推送到Harbor的library項目之下' sh 'docker tag bolingcavalry/hellojib:0.0.1-SNAPSHOT 192.168.50.167/library/hellojib:0.0.1-SNAPSHOT' echo '登錄Harbor' sh 'docker login 192.168.50.167 -u admin -p Harbor12345' echo '登錄chengg成功,開始推送鏡像' sh 'docker push 192.168.50.167/library/hellojib:0.0.1-SNAPSHOT' } } stage('Clean') { steps { echo '清理Maven工程' sh 'cd hellojib && mvn clean' echo '刪除鏡像' sh 'docker rmi bolingcavalry/hellojib:0.0.1-SNAPSHOT 192.168.50.167/library/hellojib:0.0.1-SNAPSHOT' echo '清理完畢' } } }}

    8. 將上面的pipeline腳本填寫到build-image任務的流水線腳本輸入框中,如下圖:

    9. 點擊下圖紅框中的立即構建即可開始執行流水線任務:

    10. 如果配置無誤的話任務可以執行成功,如下圖,每個階段的執行結果和耗時都展現出來了:

    11. 如果您的任務構架失敗了,點擊下圖紅框中的小圓球,會打開任務執行的詳細日志,用來檢查錯誤原因:

    12. 登錄Harbor網站,可以看到推送過來的鏡像:

    把pipeline腳本放在GitHub上

    今天的實戰中,編寫的pipeline腳本是保存在任務的設置中的,還記得 讓Jenkins執行GitHub上的pipeline腳本一文的內容么?您可以嘗試將今天的pipeline腳本存放在GitHub上,這樣從構建腳本到業務項目都實現了版本控制,在多人開發階段更加實用。

    至此,基于pipeline操作的GitHub項目的實戰就完成了,如果您正在尋求容器化環境的CI && CD方案,愿本文能給您提供一些參考。

    歡迎關注我的公眾號:程序員欣宸

    總結

    以上是生活随笔為你收集整理的github镜像网站_Jenkins把GitHub项目做成Docker镜像的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

    主站蜘蛛池模板: 国语对白做受欧美 | 红色假期黑色婚礼2 | 国产91一区在线精品 | 午夜黄色福利视频 | 国产精品91一区 | 女性女同性aⅴ免费观女性恋 | 亚洲天堂资源网 | 五月婷婷七月丁香 | 小嫩嫩12欧美 | 欧美精品一二三四区 | 成人激情在线观看 | 欧美日韩123区 | 91网国产 | 成人在线观看黄色 | 香蕉视频99| 在线激情| 各处沟厕大尺度偷拍女厕嘘嘘 | 成年人黄网站 | 国产精品美女一区 | 黑人巨大精品欧美一区二区蜜桃 | 国产福利一区二区视频 | 亚洲50p | 亚洲天堂123| 男人插入女人下面的视频 | 色哟哟在线观看视频 | 伊人国产精品 | 美女视频毛片 | 老狼影院伦理片 | 3d动漫精品啪啪一区二区竹菊 | 影音先锋国产精品 | 亚洲综合成人网 | 色呦呦国产 | 亚洲一区在线视频观看 | 日本一区二区不卡视频 | 色羞羞| 欧美日韩免费在线 | 91欧美日韩国产 | 邪恶久久 | 欧美一级影院 | 亚洲我射av | 蜜臀视频网站 | 国产精品久久久久久久久久久新郎 | 人妻熟女一区二区aⅴ水 | 91麻豆精品国产91久久久久久久久 | 精品一区二区久久久久久按摩 | 欧亚乱熟女一区二区在线 | 性色av一区二区三区在线观看 | 日韩中文字幕 | 欧美色图校园春色 | 中文字幕成人在线观看 | 国产白嫩美女无套久久 | 艳妇乳肉豪妇荡乳 | 性做久久 | 欧美一级在线视频 | 国产无毛av | 五月天色综合 | 亚洲情在线 | 精品一二三 | 爱情岛论坛亚洲自拍 | 国产高清不卡av | 色射网 | 亚洲欧美字幕 | 无码人妻丰满熟妇精品区 | 性色av一区二区三区免费 | 日韩欧美亚洲一区 | 久操视频在线 | 欧美性猛交xx乱大交 | 操日本老太太 | 免费观看日批视频 | www在线观看视频 | 深夜福利一区 | 美国毛片av | 波多野结衣电车痴汉 | 欧美精品乱码久久久久久按摩 | 不卡的av在线播放 | 天天做天天看 | 日韩综合一区二区三区 | 亚洲图片另类小说 | 被绑在床强摁做开腿呻吟 | 日韩视频在线观看一区二区 | 亚洲熟妇一区二区 | 999色综合| 台湾综合色 | 女女同性高清片免费看 | 新婚夫妇白天啪啪自拍 | 亚洲最大网| 色综合区| missav|免费高清av在线看 | 97爱视频 | 黄色网址在线播放 | 521a人成v香蕉网站 | 久色亚洲 | 成人av图片 | 午夜久久电影 | 国产粉嫩呻吟一区二区三区 | av一区二区不卡 | 青青视频在线免费观看 | 丁香花高清在线 | av午夜精品|