为补丁管理平台开发调试,配置jenkins任务制作镜像
背景需求:补丁管理平台会构建WAR包到/data/ncc/patchmanagement/年月日/目录,希望基于该场景,自动取当天的最新WAR包,自动解压、制作镜像,并保存为tar包,供产品部署使用。
jenkins任务如下:
ts=$(date "+%Y%m%d_%H%M%S")
ts_cur=$(date "+%Y%m%d")
basedir=/data/ncc/patchmanagement/$ts_cur/
if [ "ls ${basedir}/ROOT/" ]
then
echo "ROOT下有文件,开始清理..."
rm -rf ${basedir}ROOT/*
fi
#开始创建目录解压文件
cd $basedir && mkdir -p ROOT && cd ROOT && unzip ../patchmanagement-main.war
cd $basedir
cat > ./Dockerfile <<EOF
FROM tomcat:9.0.31-jdk8u202-alpine
COPY ROOT /usr/local/tomcat/webapps/ROOT/
EOF
echo "构建新镜像.."
docker build . -t reg.yyuap.io/developer-center/ncc-patch:$ts
#echo "登录镜像仓库.."
#docker login -uadmin -pHarbor12345 reg.yyuap.io:81
#echo "推送镜像到镜像仓库.."
#docker push reg.yyuap.io:81/developer-center/ncc-patch:20200513
docker save -o ncc-patch_$ts.tar reg.yyuap.io/developer-center/ncc-patch:$ts
echo "镜像已输出到${basedir}ncc-patch_$ts.tar "
没有找到相关结果
0 个回复