docker-compose 部署springboot jar

1.直接运行jar方式

  1. 创建yml构建文件
version: '3.1'

services:
  tulan-system:
    image: openjdk:8u342-jre
    container_name: tulan-system
    command: java -Duser.timezone=Asia/Shanghai -jar /data/xxxx.jar
    restart: always
    network_mode: host # 设置网络模式为host模式
    privileged: true # 设置容器权限为root
    volumes:
      - ./data:/data
      - ./logs:/logs

  1. 将需要构建的jar包上传到和yml同目录的data目录下
  2. 执行如下启动命令启动容器
docker-compose -f xxx.yml up -d

2.先将jar构建成为镜像然后在通过镜像运行容器

  1. 创建Dockerfile镜像构建文件
# 基础镜像
FROM  openjdk:8-jre
# author
MAINTAINER 18334723118@163.com
# 设置默认时区
ENV TZ=Asia/Shanghai
# 挂载目录
VOLUME /home/tulan
# 创建目录
RUN mkdir -p /home/tulan
# 指定路径
WORKDIR /home/tulan
# 复制jar文件到路径
COPY tulan-system.jar /home/tulan/tulan-system.jar
# 启动系统服务
ENTRYPOINT ["java","-jar","tulan-system.jar"]

  1. 将jar上传到和Dockerfile相同的目录下
  2. 创建构建yml文件
version : '3.8'
services:
  tulan-system:
    container_name: tulan-system
    image: tulan-system
    build:
     #context: ./tulan/modules/system
      context: ./build-env
      dockerfile: Dockerfile_system
    volumes:
      - /home:/home
      - /home/tulan/logs:/home/tulan/logs  
    network_mode: host # 设置网络模式为host模式
    privileged: true # 设置容器权限为root
    logging:
      driver: "json-file"
      options:
        max-size: "500m"
        max-file: "3"
  1. 执行启动命令
docker-compose -f xxx.yml up -d

你可能感兴趣的:(docker,spring,boot,jar)