2021-08-17 脚本的使用

#!/bin/bash 


#服务名,服务组名,是否重载compose, compose文件路径
echo "更新开始"
serviceGroupName=$1
deployName=$2
directoryName="/opt/docker-service/${deployName}"
reload=${3:-false}
dockerComposeName=$4

#判断文件夹是否存在 -d
echo "开始查找文件夹:${directoryName}"
if [[ ! -d "$directoryName" ]]; then
 echo "文件夹不存在,请检查"
 exit
fi

projectName=${directoryName}"/"${deployName}".jar"

#判断文件是否存在
#echo "开始查找文件:${projectName}"
#if [[ ! -e "$projectName" ]]; then
# echo "文件不存在,请检查"
# exit
#fi



imageName="xuntong/"${deployName}
echo "开始打镜像包,镜像名称为:${imageName}"
docker build -t ${imageName} ${directoryName}
echo "镜像打包完成"

check_service=`docker service ls -f NAME=${serviceGroupName}_${deployName} -q`
echo "check-service-"${check_service}

if [[ ${reload} == 'true' || ${check_service} == '' ]]; then
 echo "尝试用compose文件启动:${dockerComposeName}"
 if [[ ! -e "$dockerComposeName" ]]; then
   echo "${dockerComposeName}文件不存在,请检查"
   exit
 fi
  docker stack deploy -c ${dockerComposeName} ${serviceGroupName}

else
  echo "该服务已启动,正强制更新该服务(不更新配置文件)"
  docker service update --force ${serviceGroupName}_${deployName}	

fi


docker push ${imageName}


echo "更新完成"

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值