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"

相关推荐
今天背单词了吗98013 分钟前
算法学习笔记:8.Bellman-Ford 算法——从原理到实战,涵盖 LeetCode 与考研 408 例题
java·开发语言·后端·算法·最短路径问题
天天摸鱼的java工程师16 分钟前
使用 Spring Boot 整合高德地图实现路线规划功能
java·后端
阿杆17 分钟前
😡同事查日志太慢,我现场教他一套 grep 组合拳!
linux·后端
墨小傲29 分钟前
基于Linux下的vscode c/c++开发环境搭建详细教程
linux·c语言·vscode
东阳马生架构31 分钟前
订单初版—2.生单链路中的技术问题说明文档
java
cui_win36 分钟前
【网络】Linux 内核优化实战 - net.ipv4.tcp_timestamps
linux·网络·tcp/ip
czhc114007566337 分钟前
Linux 77 FTP
linux·运维·服务器
咖啡啡不加糖1 小时前
暴力破解漏洞与命令执行漏洞
java·后端·web安全
魂尾ac1 小时前
Centos Docker 安装(100%成功)
linux·docker·centos
风象南1 小时前
SpringBoot敏感配置项加密与解密实战
java·spring boot·后端