docker-自动启动java 包

#!/bin/bash

set -e # 遇到错误立即退出

配置参数(按需修改)

JAR_NAME="your-app.jar" # 生成的 Jar 包名称

DOCKER_IMAGE="test:1.0" # Docker 镜像名称及标签

CONTAINER_NAME="myapp" # 容器名称

VOLUME_DIR="/usr/local/jar/logs" # 挂载的宿主机日志目录

HOST_PORT=9999 # 宿主机映射端口

CONTAINER_PORT=8088 # 容器内部端口

步骤 1: 构建 Spring Boot JAR 包

echo "正在构建 Spring Boot JAR 包..."

#mvn clean package -DskipTests

echo "JAR 包构建完成."

步骤 2: 构建 Docker 镜像

echo "正在构建 Docker 镜像..."

docker build -t $DOCKER_IMAGE .

步骤 3: 停止并删除旧容器(如果存在)

if [ "(docker ps -aq -f name=CONTAINER_NAME)" ]; then

echo "发现旧容器,正在停止并删除..."

docker stop $CONTAINER_NAME

docker rm $CONTAINER_NAME

fi

步骤 4: 创建日志目录(如果不存在)

mkdir -p $VOLUME_DIR

步骤 5: 启动新容器(新增端口映射)

echo "正在启动 Docker 容器..."

docker run -d \

-p HOST_PORT:CONTAINER_PORT \

-v $VOLUME_DIR:/logs \

--name $CONTAINER_NAME \

$DOCKER_IMAGE

echo "部署完成!容器名称: CONTAINER_NAME,访问端口: HOST_PORT"

相关推荐
cpsvps13 分钟前
磁盘IO优先级控制对美国服务器存储子系统的调优验证
运维·服务器
fouryears_2341716 分钟前
RabbitMQ 发送方确认的两大工具 (With Spring Boot)
java·spring boot·rabbitmq·java-rabbitmq
孙克旭_29 分钟前
day065-ALB负载均衡与云盘扩容
linux·运维·阿里云·负载均衡
懂得节能嘛.37 分钟前
【LangChain4j 详解】Java生态大语言模型框架设计哲学与架构原理
java·人工智能·语言模型
许久'1 小时前
Java面试题
java
lenvonsam1 小时前
崩溃!公司 GitLab 掉链子!莫慌,交给AI助手吧~
运维·gitlab
33255_40857_280591 小时前
使用EasyPOI实现Java订单数据导出(含多物料信息)——模板语法详解与实战
java·excel
行星0081 小时前
centos7 aarch64上安装PostgreSQL14.3
linux·运维·数据库·postgresql
一个人的幽默1 小时前
详细聊下easyexcel导出
java
蓝染yy1 小时前
Spring Boot
java·spring boot