#!/bin/sh
## startup.sh
## 本脚本的功能是在jenkins 构建完项目后,通过jar包生成docker 镜像,然后重新服务的功能。
## demo-test是 服务名字
echo "==================== start restart docker containers ====================="
MODEL=fileservice
APP_DIR=/usr/local/springbootProjects/clouderp/$MODEL/
APP_IMAGES_BQ=$MODEL:latest
APP_NAME=gdb-$MODEL
##VERSION=`date "+%Y%m%d%H%M%S"`
APP_CONFIG=docker-compose-$MODEL.yml
cd $APP_DIR
##rm -f zuulservice-${VERSION}.jar
##cp /data/jenkins/workspace/demo-test/target/demo-test-${VERSION}.jar ./
##cp /var/lib/jenkins/workspace/test_erp_clouderp_zuul/zuulservice/target/zuulservice-${VERSION}.jar ./
##sleep 3s
## 检查进程是否存在
containerID=$(docker ps -a |awk '/'$MODEL'/{print $1}')
imageID=$(docker images |awk '/'$MODEL'/{print $3}' )
if [ "$containerID" == "" ]; then
echo "应用:$APP_NAME 容器不存在。"
else
echo "应用:$APP_NAME 存在容器:$containerID"
docker stop $containerID
docker rm $containerID
echo "容器:$containerID 停止成功。"
docker rmi -f $imageID
echo "镜像:$imageID 停止成功。"
fi
echo "应用:$APP_NAME 正在启动..."
docker build -t $APP_IMAGES_BQ .
cd /usr/local/springbootProjects/clouderp/
docker-compose -f $APP_CONFIG up -d
##docker run -m 4g --name $APP_NAME -d -p $APP_PORT:$APP_PORT -v /etc/localtime:/etc/localtime -v /data/logs/saas/demo-test/logs:/root/saas/demo-test/logs --network host $APP_NAME
echo "应用启动命令已执行,稍候请检查服务是否可用。"
echo "==================== end restart docker containers =========================="
02-25
669

08-05
1635
