Jenkins+maven+gitlab自動化部署之docker發布sprint boot項目(七)


Jenkins發布docker應用與發布java應用配置基本一致,需要配置Dockerfile及構建的步驟,步驟如下:

1、jenkins主機構建應用為jar包

2、jenkins主機把生產的jar包構建為docekr鏡像

3、jenkins主機把構建好的鏡像推送至鏡像倉庫

4、目標主機去鏡像倉庫拉取鏡像

5、目標主機以拉取的最新鏡像啟動新的服務

注意:需要在jenkins以及目標主機部署docker服務,關於docker的部署網上問的一堆,請自行百度。

1、新建項目

跟據之前創建任務一樣,創建maven項目

2、項目配置

  a)源碼管理:指定代碼倉庫位置,以及分支

  b)build

  

  c)Post Steps

  指定構建docker鏡像的命令

  

  說明:這里是說把打包好的jar包復制到我們創建好的構建eureka鏡像的目錄

  build.sh 是一個腳本,用來構建鏡像,並把鏡像推送至指定鏡像倉庫,腳本內容如下: 

[tchua@centos01 one-eureka]$ vim build.sh
#!/bin/bash docker_hub="registry-vpc.cn-hangzhou.aliyuncs.com/xxx/uat-images" ## 鏡像倉庫地址 TAG="eureka" #rm docker rmi ${docker_hub}:$TAG  ## 刪除上一次構建鏡像 #login docker login -u ${USER} -p ${PASSWD} ${docker_hub} ## 登陸鏡像倉庫,${USER} ${PASSWD}修改為自己具體的用戶名密碼 #build docker build -t ${docker_hub}:$TAG .        ## 構建新鏡像,. 是指DOckerfile在當前目錄下 #push docker push ${docker_hub}:$TAG            ## 推送鏡像至鏡像倉庫

鏡像構建需要一個Dockerfile,Dockerfile文件內容:

FROM registry-vpc.cn-hangzhou.aliyuncs.com/vanje_one/software:java1.8

MAINTAINER vanje@vanje.com.cn

ADD eureka-1.0.0.jar /apps/

EXPOSE 8076

ENTRYPOINT ["java","-jar","/apps/eureka-1.0.0.jar"]

  d)構建后操作

  說明:這里是遠程登陸服務器執行服務啟動腳本。

  腳本內容如下:

#!/bin/bash

docker_hub="registry-vpc.cn-hangzhou.aliyuncs.com/vanje_one/uat-images"  ## 鏡像倉庫地址

TAG="eureka"
#rm
docker rm -f eureka                        ## 刪除現有容器
docker rmi ${docker_hub}:${TAG}                 ## 刪除現有容器鏡像

#login
docker login -u ${USER} -p ${PASSWD} ${docker_hub} ## 登陸鏡像倉庫,${USER} ${PASSWD}修改為自己具體的用戶名密碼

docker pull ${docker_hub}:${TAG}                  ## 拉去鏡像

docker run --name eureka -p 8076:8076 -d ${docker_hub}:${TAG}  ## 啟動指定鏡像服務

3、發布

以上保存點擊發布后,查看控制台日志可以看到對應的構建信息:

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM