docker环境中使用shell脚本运行springboot项目

本文介绍了一个用于Docker环境下部署SpringBoot项目的Shell脚本,详细展示了如何通过脚本实现镜像构建、容器运行及更新流程,适用于自动化部署场景。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

此文承接另一篇文章《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

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值