久久久久久久视色,久久电影免费精品,中文亚洲欧美乱码在线观看,在线免费播放AV片

<center id="vfaef"><input id="vfaef"><table id="vfaef"></table></input></center>

    <p id="vfaef"><kbd id="vfaef"></kbd></p>

    
    
    <pre id="vfaef"><u id="vfaef"></u></pre>

      <thead id="vfaef"><input id="vfaef"></input></thead>

    1. 站長資訊網(wǎng)
      最全最豐富的資訊網(wǎng)站

      技術(shù)解答之Pipeline整合Docker容器

      本篇文章給大家?guī)砹岁P(guān)于流水線繼承docker用法的相關(guān)知識,主要是Pipeline整合Docker容器的相關(guān)問題,希望對大家有幫助。

      技術(shù)解答之Pipeline整合Docker容器

      本篇文章主要描述流水線集成Docker用法

      技術(shù)解答之Pipeline整合Docker容器

      一、背景描述

      微服務(wù)架構(gòu)是當(dāng)前主流的技術(shù)選型,在業(yè)務(wù)具體落地時,會存在很多業(yè)務(wù)服務(wù),不管是在開發(fā)、測試、上線的任意節(jié)點中,如果基于手動編譯的方式打包服務(wù),操作成本不僅極高,而且很容易出現(xiàn)紕漏。

      通過Pipeline流水線的方式,將服務(wù)鏡像構(gòu)建編排成一鍵觸發(fā)執(zhí)行,實現(xiàn)自動化的管理流程,是微服務(wù)架構(gòu)中的必要的功能模塊。

      二、流程設(shè)計

      本篇中的流程節(jié)點,主要針對打包好的應(yīng)用Jar包,在docker模塊中的處理流程,主要是鏡像構(gòu)建管理與容器運行:

      技術(shù)解答之Pipeline整合Docker容器

      • 構(gòu)建docker文件目錄與內(nèi)容;
      • 拷貝Jar包,創(chuàng)建Dockerfile腳本文件;
      • 執(zhí)行docker鏡像構(gòu)建,推送云倉庫;
      • 拉取鏡像文件并運行docker容器;

      整個流程的都放在Pipeline流水線中,銜接在本地Jar包生成之后。

      三、實現(xiàn)過程

      1、插件安裝

      首先安裝流程中Docker集成的相關(guān)插件:Docker Pipeline,Docker plugin,CloudBees Docker Hub/Registry Notification

      在之前的流水線篇幅中,已經(jīng)通過流水線完成Gitee倉庫代碼pull和本地打包,下面開始處理docker環(huán)節(jié)。

      2、鏡像構(gòu)建腳本

      關(guān)于Dockerfile的腳本語法也可以參考之前docker篇幅,下面看流水線中的用法:

          environment {         docker_directory = 'docker-app'         docker_repository = '倉庫URL'     }              stage('Dockerfile') {             steps {                 sh '''                 rm -rf ${docker_directory}                 mkdir -p ${docker_directory}                 cp auto-client/target/auto-client-1.0-SNAPSHOT.jar ${docker_directory}/auto-client.jar                 cd ${docker_directory} cat>Dockerfile<<EOF FROM java:8 MAINTAINER cicadasmile VOLUME /data/docker/logs ADD auto-client.jar application.jar ENTRYPOINT ["java","-Dspring.profiles.active=dev","-Djava.security.egd=file:/dev/./urandom","-jar","/application.jar"] EOF                 cat Dockerfile                 '''                 echo "create Dockerfile success"             }         }

      腳本說明:

      • 在流水線的工作空間創(chuàng)建目錄docker-app;
      • 每次執(zhí)行都清空一次docker目錄,再把Jar包和Docker腳本放進去;
      • cat-EOF-EOF:即創(chuàng)建Dockerfile文件,并把中間的內(nèi)容寫入;
      • 腳本中的內(nèi)容必須在文件中頂行寫入;

      3、打包推送

      這里即進入docker目錄,執(zhí)行鏡像打包的操作,并把鏡像推送到云端倉庫,很多倉庫都是私有的,需要身份驗證,通過配置憑據(jù)去訪問:

      stage('DockerImage'){     steps {         script {             dir("${docker_directory}") {                 sh 'ls'                 docker.withRegistry("${docker_directory}", '訪問憑據(jù)') {                    docker.build("doc-line-app:latest").push()                 }             }             echo "build DockerImage success"         }     } }

      4、憑據(jù)配置

      打開Manage Jenkins界面,Manage Credentials選項;

      技術(shù)解答之Pipeline整合Docker容器

      按如下流程配置即可:

      技術(shù)解答之Pipeline整合Docker容器

      四、源代碼地址

      GitEE·地址 https://gitee.com/cicadasmile/butte-auto-parent Wiki·地址 https://gitee.com/cicadasmile/butte-java-note

      推薦學(xué)習(xí):《docker視頻教程》

      贊(0)
      分享到: 更多 (0)
      網(wǎng)站地圖   滬ICP備18035694號-2    滬公網(wǎng)安備31011702889846號