您好,登錄后才能下訂單哦!
這篇文章主要講解了springboot docker jenkins如何自動化部署并上傳鏡像,內(nèi)容清晰明了,對此有興趣的小伙伴可以學(xué)習(xí)一下,相信大家閱讀完之后會有幫助。
springboot + docker + jenkins自動化部署項目,jenkins、mysql、redis都是docker運行的,并且沒有使用虛擬機,就在阿里云服務(wù)器(centos7)運行
1、前期準(zhǔn)備工作不說了
2、在項目根目錄下新建Dockerfile
Dockerfile文件內(nèi)容為:
#基礎(chǔ)鏡像 FROM openjdk:12 #作者 MAINTAINER demo <demo@qq.com> VOLUME /tmp #指定配置文件,以及jar包在服務(wù)器上的路徑 ENTRYPOINT ["java","-Dspring.profiles.active=prod","-jar","/lcy/work/tools/tools.jar"] #暴露端口 EXPOSE 8092
3、在服務(wù)器找個目錄新建一個.sh文件
#!/bin/sh echo '================開始構(gòu)建鏡像==============' #鏡像名稱 IMAGE_NAME='registry.cn-beijing.aliyuncs.com/???/tools' #打包后在jenkins的地址 SOURCE_PATH='/lcy/jenkins/workspace/tools' #Dockerfile執(zhí)行jar包的地址 BASE_PATH='/lcy/work/tools' echo IMAGE_NAME=$IMAGE_NAME echo '================復(fù)制JAR包===================' echo $SOURCE_PATH/target/tools-0.0.1-SNAPSHOT.jar cp $SOURCE_PATH/target/tools-0.0.1-SNAPSHOT.jar $BASE_PATH/tools.jar chmod -R 777 $BASE_PATH/tools.jar echo '================復(fù)制完成====================' echo '================當(dāng)前docker版本==============' docker -v echo '================構(gòu)建鏡像開始================' docker build -t $IMAGE_NAME -f $SOURCE_PATH/Dockerfile . echo '================構(gòu)建鏡像結(jié)束================' #輸入要推送鏡像的地址,根據(jù)鏡像倉庫提示的地址復(fù)制 echo '================推送鏡像開始================' docker login --username=??? --password=??? registry-vpc.cn-beijing.aliyuncs.com docker push $IMAGE_NAME echo '================推送鏡像結(jié)束================' echo '================獲取容器id==================' CID=$(docker ps | grep "$IMAGE_NAME" | awk '{print $1}') echo 容器id=$CID echo '================獲取鏡像id==================' IID=$(docker images | grep "$IMAGE_NAME" | awk '{print $3}') echo 鏡像id=$IID if [ -n "$CID" ]; then echo 存在$IMAGE_NAME容器,停止容器并刪除 docker stop tools docker rm tools else echo 不存在$IMAGE_NAME容器,開始啟動 docker run -p 8092:8092 -d --name tools -v $BASE_PATH:$BASE_PATH $IMAGE_NAME fi
4、配置jenkins,執(zhí)行新建的.sh文件(記得給好權(quán)限)其它的配置就不說了,比如github的配置
5、運行結(jié)果
看完上述內(nèi)容,是不是對springboot docker jenkins如何自動化部署并上傳鏡像有進一步的了解,如果還想學(xué)習(xí)更多內(nèi)容,歡迎關(guān)注億速云行業(yè)資訊頻道。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。