docker compose多实例部署SpringBoot项目

打包项目

<build>
    <finalName>hospital-app</finalName>
    <plugins>
        <plugin>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-maven-plugin</artifactId>
        </plugin>
    </plugins>
</build>

编写yml文件

services:
  hospital_server_8261:
    image: jdk1.8:1.8
    container_name: hospital_server_8261
    restart: always
    ports:
      - "8261:8260"
    volumes:
      - /mysoftware/hospital/back/hospital-app.jar:/hospital/hospital.jar
      - /mysoftware/hospital/back/hospitalLogs/hospital_server_8261/logs:/hospital/logs/hospital-system
    environment:
      - JAVA_OPTS=-Xms128m -Xmx128m
      - "SPRING_PROFILES_ACTIVE=uat"
      - TZ=Asia/Shanghai
    entrypoint: ["java", "-jar", "/hospital/hospital.jar"]
    networks:
      - hospital_network

  hospital_server_8262:
    image: jdk1.8:1.8
    container_name: hospital_server_8262
    restart: always
    ports:
      - "8262:8260"
    volumes:
      - /mysoftware/hospital/back/hospital-app.jar:/hospital/hospital.jar
      - /mysoftware/hospital/back/hospitalLogs/hospital_server_8262/logs:/hospital/logs/hospital-system
    environment:
      - JAVA_OPTS=-Xms128m -Xmx128m
      - "SPRING_PROFILES_ACTIVE=uat"
      - TZ=Asia/Shanghai
    entrypoint: ["java", "-jar", "/hospital/hospital.jar"]
    networks:
      - hospital_network

networks:
  hospital_network:
    driver: bridge

将jar包和yml文件传入服务器

运行yml文件完成部署

docker compose -f java-compose.yml up -d

检查运行情况

查看容器运行情况

docker ps

查看日志打印

docker logs hospital_server_8261 -f

测试接口

curl 'localhost:8261/'

停止项目

docker compose -f java-compose.yml downdocker compose -f java-compose.yml down

编写脚本完成项目一键重启

#!/bin/bash

# 定义项目根目录
PROJECT_DIR="/mysoftware/hospital/back"

# 定义docker compose配置文件
COMPOSE_FILE="java-compose.yml"

# 定义8261服务容器名称
server_name="hospital_server_8261"

# 切换到项目目录
cd "$PROJECT_DIR" || { echo "无法进入项目目录 $PROJECT_DIR"; exit 1; }

echo "正在停止项目..."
docker compose -f "$COMPOSE_FILE" down
echo "项目已停止"

echo "正在启动项目..."
docker compose -f "$COMPOSE_FILE" up -d
echo "项目正在启动"

# 查看8261服务日志
echo "检查服务状态..."
echo "查看8261服务日志."
docker logs "$server_name" -f

执行脚本一键重启

sh start_hospital_back.sh

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值