<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ??碼云GVP開源項目 12k star Uniapp+ElementUI 功能強大 支持多語言、二開方便! 廣告
                # 使用jenkins進行持續集成與發布 ### 基于Jenkins的CI/CD流程如下: ![image](https://i.imgur.com/nGGam7v.png) 1. 從gitlab拉取代碼, Jenkins 使用基礎鏡像,完成應用鏡像build 。 1. 應用鏡像上傳至harbor鏡像倉庫 1. Jenkins從harbor倉庫下載應用鏡像,完成容器啟動。 1. 從Zokeeper 配置中心拉取應用配置文件。 1. Nginx 反向代理到docker應用 ## 使用Docker構建Jenkins 集成環境 基礎docker鏡像準備 docker pull jenkins 運行JenkinsRun.sh腳本, #!/bin/bash # 使用阿里云 jenkins images 初始化全新配置 AppOrg='ttlinux' AppEnv='demo' AppName='jenkins' AppAddresses='10.175.189.38_8080,8080:8080' #指明啟動jenkins容器宿主機IP:Port AppCfgs='' ZookeeperCluster='' RunImage='jenkins:latest' RunOptions='-d -u root:jenkins -v /data/volume/jenkins/dump:/var/jenkins_home' RunCmd='' # 循環部署多實例 for AppAddress in ${AppAddresses} do # 初始化變量 ADDRESS=${AppAddress%%,*} # 宿主機地址和宿主機端口 AppExpose=`echo ,${AppAddress#*,} | sed 's/,/ -p /g'` # 需要影射的端口 AppIp=${ADDRESS%%_*} # 宿主機地址 AppPort=${ADDRESS##*_} # 宿主機端口 AppId=`echo ${AppOrg}_${AppEnv}_${AppName}_${AppIp}_${AppPort} | sed 's/[^a-zA-Z0-9_]//g' | tr "[:lower:]" "[:upper:]"` # 實例容器名 AppHostname=`echo ${AppPort}-${AppIp}-${AppName}-${AppEnv}-${AppOrg} | sed 's/[^a-zA-Z0-9-]//g'| tr "[:upper:]" "[:lower:]"` # 實例主機名 docker -H ${AppIp}:4243 pull ${RunImage} >/dev/null # 同步版本鏡像 RESULT=`docker -H ${AppIp}:4243 inspect -f '{{.Image}}' ${AppId} || echo 0` # 保留當前實例的鏡像Id docker -H ${AppIp}:4243 stop ${AppId} || echo # 停止當前實例 docker -H ${AppIp}:4243 rm ${AppId} || echo # 刪除當前實例 sleep 3 # 部署新實例 docker -H ${AppIp}:4243 run --restart=always --name=${AppId} --hostname=${AppHostname} -e JAVA_OPTS="-Xms2G -Xmx2G -XX:PermSize=256M -XX:MaxPermSize=256M -Duser.timezone=Asia/Shanghai" -e AppId=${AppId} ${AppExpose} ${RunOptions} ${RunImage} ${RunCmd} docker -H ${AppIp}:4243 rmi ${RESULT} || echo # 刪除之前的鏡像 done ### Jenkins 基本配置 - jenkins配置registry全局變量 - nginx 反向代理訪問jenkins
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看