- 主页 > 生活百科 > >
Jenkins+Docker一键打包部署Vue项目步骤详解( 二 )
echo "执行docker ps"docker ps if [[ "$(docker inspect $container_name 2> /dev/null | grep $container_name)" != "" ]]; thenecho $container_name "容器存在,停止并删除"echo "docker stop" $container_namedocker stop $container_nameecho "docker rm" $container_namedocker rm $container_nameelseecho $container_name "容器不存在"fi# 删除镜像echo "执行docker images"docker imagesif [[ "$(docker images -q $image_name 2> /dev/null)" != "" ]]; thenecho $image_name '镜像存在,删除镜像'docker rmi $(docker images -q $image_name 2> /dev/null) --forceelseecho $image_name '镜像不存在'fi#bak imageecho "bak image" $image_nameBAK_DIR=/opt/bak/docker/$image_name/`date +%Y%m%d`mkdir -p "$BAK_DIR"cp "/opt/tmp/portal-image.tar" "$BAK_DIR"/"$image_name"_`date +%H%M%S`.tarecho "docker load" $image_namedocker load --input /opt/tmp/portal-image.tarecho "docker run" $image_namedocker run -d -p $portal_port:$server_port -p $portal_ssl_port:$server_ssl_port --name=$container_name -e TZ="Asia/Shanghai" --restart=always -v /data/container/nginx/www:/var/www -v /data/container/nginx/logs:/var/log/nginx -v /data/container/nginx/etc:/etc/nginx -v /data/container/nginx/etc/nginx.conf:/etc/nginx/nginx.conf -v /etc/localtime:/etc/localtime -v /usr/share/zoneinfo/Asia/Shanghai:/etc/timezone -v /bxl/container/nginx/ssl:/nginx/ssl $image_name - 删除安装文件,因为前面已经备份过了,所以这里将临时安装文件删除
echo "remove tmp " $image_namerm -rf /opt/tmp/portal-image.tarecho "Docker Portal is starting,please try to access $container_name conslone url"container_name=portal-serverimage_name=portal-serverversion=latestportal_port=80server_port=80portal_ssl_port=443serve_sslr_port=443echo "param validate"if [ $# -lt 1 ]; thenecho "you must use like this : ./publish_docker_portal.sh <container_name> <image_name> <version> [portal port] [server port] [portal ssl port] [server ssl port]"exitfiif [ "$1" != "" ]; thencontainer_name="$1"fiecho "container_name=" $container_nameif [ "$2" != "" ]; thenimage_name="$2"fiif [ "$3" != "" ]; thenversion="$3"fiecho "version=" $versionif [ "$4" != "" ]; thenportal_port="$4"fiecho "portal_port=" $portal_portif [ "$5" != "" ]; thenserver_port="$5"fiecho "server_port=" $server_portif [ "$6" != "" ]; thenportal_ssl_port="$6"fiecho "portal_ssl_port=" $portal_ssl_portif [ "$7" != "" ]; thenserve_sslr_port="$7"fiecho "serve_sslr_port=" $serve_sslr_portecho "执行docker ps"docker ps if [[ "$(docker inspect $container_name 2> /dev/null | grep $container_name)" != "" ]]; thenecho $container_name "容器存在,停止并删除"echo "docker stop" $container_namedocker stop $container_nameecho "docker rm" $container_namedocker rm $container_nameelseecho $container_name "容器不存在"fi# 删除镜像echo "执行docker images"docker imagesif [[ "$(docker images -q $image_name 2> /dev/null)" != "" ]]; thenecho $image_name '镜像存在,删除镜像'docker rmi $(docker images -q $image_name 2> /dev/null) --forceelseecho $image_name '镜像不存在'fi#bak imageecho "bak image" $image_nameBAK_DIR=/opt/bak/docker/$image_name/`date +%Y%m%d`mkdir -p "$BAK_DIR"cp "/opt/tmp/portal-image.tar" "$BAK_DIR"/"$image_name"_`date +%H%M%S`.tarecho "docker load" $image_namedocker load --input /opt/tmp/portal-image.tarecho "docker run" $image_namedocker run -d -p $portal_port:$server_port -p $portal_ssl_port:$server_ssl_port --name=$container_name -e TZ="Asia/Shanghai" --restart=always -v /data/container/nginx/www:/var/www -v /data/container/nginx/logs:/var/log/nginx -v /data/container/nginx/etc:/etc/nginx -v /data/container/nginx/etc/nginx.conf:/etc/nginx/nginx.conf -v /etc/localtime:/etc/localtime -v /usr/share/zoneinfo/Asia/Shanghai:/etc/timezone -v /bxl/container/nginx/ssl:/nginx/ssl $image_nameecho "remove tmp " $image_namerm -rf /opt/tmp/portal-image.tarecho "Docker Portal is starting,please try to access $container_name conslone url"
推荐阅读
-
新会小青柑普洱茶怎么泡,小青柑普洱茶怎么泡小青柑茶怎么泡水
-
热血观察|一名飞行员死亡,损失惨重,时隔不到一周!美军两架战机接连坠海
-
感染者近九千万 治疗率仅一成,乙丙肝炎防控难题待解
-
八卦君说事▲车身喷了一点光就亮了,摸了8年方向盘才知道:油漆过期了
-
为啥明知道他人的行为无法改变,还是会影响自己的情绪
-
-
-
考研|中南财经政法大学2020考研报录比公布!(附录取情况统计表)
-
现代全新索纳塔运动版实拍,配备熏黑套件,搭2.5T动力升级
-
CoN9洋葱 我对iPhone12也就毫无期待,不解决这四个痛点
-
-
观察哨|为27000吨的“小航母”,采购歼-15重型舰载机,土耳其少将开脑洞
-
-
-
AMD|联手三星优化 AMD锐龙7000将获得“轰动性”DDR5内存超频性能
-
-
-
汽车之家■新款宝马530e官图泄露,更新家族式设计
-
-