此文承接另一篇文章《docker部署springboot項目》
進入Linux環境,創建biweb_public.sh文件
①命令:vi biweb_public.sh
②輸入:
#操作/項目路徑(Dockerfile存放的路勁)
BASE_PATH=/root/docker
#docker 鏡像/容器名字或者jar名字 這裏都命名爲這個
SERVER_NAME=biweb
#容器id
CID=$(docker ps | grep "$SERVER_NAME" | awk '{print $1}')
#鏡像id
IID=$(docker images | grep "$SERVER_NAME" | awk '{print $3}')
#主機端口號
HOST_PORT=8001
#容器端口號
C_PORT=8001
#時間
DATE=`date +%Y%m%d%H%M`
function build(){
#判斷鏡像是否存在
if [ -n "$IID" ]; then
echo "存在$SERVER_NAME鏡像,IID=$IID,刪除鏡像"
docker rmi $IID
cd $BASE_PATH
docker build -t $SERVER_NAME .
echo "$SERVER_NAME鏡像重新構建完成"
docker images
else
echo "不存在$SERVER_NAME鏡像,開始構建鏡像"
cd $BASE_PATH
docker build -t $SERVER_NAME .
echo "$SERVER_NAME鏡像構建完成"
docker images
fi
}
function run(){
echo "開始時間>>>>>>$DATE"
#判斷容器是否存在
if [ -n "$CID" ]; then
echo "存在$SERVER_NAME容器,CD=$CID,停止運行並刪除"
docker stop $CID
docker rm $CID
echo "$SERVER_NAME容器已經停止運行並刪除"
build
echo "開始重新運行$SERVER_NAME鏡像"
docker run -p $HOST_PORT:$C_PORT --name $SERVER_NAME -d $SERVER_NAME
echo "$SERVER_NAME已經重新運行"
docker ps
echo "結束時間>>>>>>$DATE"
else
echo "不存在$SERVER_NAME容器,判斷是否存在$SERVER_NAME鏡像"
build
echo "開始運行$SERVER_NAME鏡像"
docker run -p $HOST_PORT:$C_PORT --name $SERVER_NAME -d $SERVER_NAME
echo "$SERVER_NAME已經運行"
docker ps
echo "結束時間>>>>>>$DATE"
fi
}
#運行
run
③賦予文件權限
命令:chmod +x biweb_public.sh
④更新biweb.jar文件
⑤命令:./biweb_public.sh