基本步驟:
Jenkins從git/svn上下載源碼——編譯打包成war包文件——將war文件移至Dockerfile目錄——使用docker build構建鏡像——執行腳本上傳到私有倉庫。
這裏講解編譯打包後的步驟:
使用Publish Over SSH插件執行腳本
Dockerfile目錄內容:
其中Dockerfile內容爲
FROM tomcat:8.5
MAINTAINER **** *******@qq.com
WORKDIR /usr/local/tomcat/webapps
ADD /WAR/ROOT.war .
EXPOSE 8080
CMD ["/usr/local/tomcat/bin/catalina.sh", "run"]
其中push_reg.sh內容爲
#!/bin/bash
#
Date=`date +%m%d%H%M `
Username="*******"
Registry_Domain="registry.cn-hangzhou.aliyuncs.com"
Registry_Addr="${Registry_Domain}/maodocker"
Password="yourpassword"
#註釋:以日期作爲容器鏡像版本號,這裏以阿里鏡像倉庫爲例,我的容器倉庫名稱爲maodocker
cd /opt/mytomcat/
docker build -t mytomcat:${Date} .
docker login --username=${Username} $Registry_Domain -p${Password}
docker tag mytomcat:${Date} ${Registry_Addr}/mydocker:${Date}
docker push ${Registry_Addr}/mydocker:${Date}
docker rmi -f ${Registry_Addr}/mydocker:${Date}
docker rmi -f mytomcat:${Date}
#構建上傳後刪除鏡像,避免佔用空間
執行Jenkins構建命令 ,執行過程如下圖:
登錄阿里雲可查看容器信息: