springboot docker jenkins 自動(dòng)化部署并上傳鏡像的步驟詳解
springboot + docker + jenkins自動(dòng)化部署項(xiàng)目,jenkins、mysql、redis都是docker運(yùn)行的,并且沒有使用虛擬機(jī),就在阿里云服務(wù)器(centos7)運(yùn)行
1、前期準(zhǔn)備工作不說了
2、在項(xiàng)目根目錄下新建Dockerfile
Dockerfile文件內(nèi)容為:
#基礎(chǔ)鏡像FROM openjdk:12#作者M(jìn)AINTAINER demo <demo@qq.com>VOLUME /tmp#指定配置文件,以及jar包在服務(wù)器上的路徑ENTRYPOINT ['java','-Dspring.profiles.active=prod','-jar','/lcy/work/tools/tools.jar']#暴露端口EXPOSE 8092
3、在服務(wù)器找個(gè)目錄新建一個(gè).sh文件
#!/bin/shecho ’================開始構(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_NAMEecho ’================復(fù)制JAR包===================’echo $SOURCE_PATH/target/tools-0.0.1-SNAPSHOT.jarcp $SOURCE_PATH/target/tools-0.0.1-SNAPSHOT.jar $BASE_PATH/tools.jarchmod -R 777 $BASE_PATH/tools.jarecho ’================復(fù)制完成====================’echo ’================當(dāng)前docker版本==============’docker -vecho ’================構(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.comdocker push $IMAGE_NAMEecho ’================推送鏡像結(jié)束================’echo ’================獲取容器id==================’CID=$(docker ps | grep '$IMAGE_NAME' | awk ’{print $1}’)echo 容器id=$CIDecho ’================獲取鏡像id==================’IID=$(docker images | grep '$IMAGE_NAME' | awk ’{print $3}’)echo 鏡像id=$IIDif [ -n '$CID' ]; then echo 存在$IMAGE_NAME容器,停止容器并刪除 docker stop tools docker rm toolselse echo 不存在$IMAGE_NAME容器,開始啟動(dòng) docker run -p 8092:8092 -d --name tools -v $BASE_PATH:$BASE_PATH $IMAGE_NAMEfi
4、配置jenkins,執(zhí)行新建的.sh文件(記得給好權(quán)限)其它的配置就不說了,比如github的配置
5、運(yùn)行結(jié)果
本文由博客一文多發(fā)平臺 OpenWrite 發(fā)布!
到此這篇關(guān)于springboot docker jenkins 自動(dòng)化部署并上傳鏡像的文章就介紹到這了,更多相關(guān)springboot docker jenkins 自動(dòng)化部署內(nèi)容請搜索好吧啦網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持好吧啦網(wǎng)!
相關(guān)文章:
1. HTML DOM setInterval和clearInterval方法案例詳解2. jscript與vbscript 操作XML元素屬性的代碼3. XML在語音合成中的應(yīng)用4. HTML5實(shí)戰(zhàn)與剖析之觸摸事件(touchstart、touchmove和touchend)5. Vue如何使用ElementUI對表單元素進(jìn)行自定義校驗(yàn)及踩坑6. XML入門的常見問題(三)7. 不要在HTML中濫用div8. XML 非法字符(轉(zhuǎn)義字符)9. HTTP協(xié)議常用的請求頭和響應(yīng)頭響應(yīng)詳解說明(學(xué)習(xí))10. CSS清除浮動(dòng)方法匯總
