【乐企文件生成工程】搭建docker环境,使用docker部署工程

1、自行下载docker

2、自行下载docker-compose

3、编写Dockerfile文件

java 复制代码
# 使用官方的 OpenJDK 8 镜像
FROM openjdk:8-jdk-alpine

# 设置工作目录
WORKDIR ./app

# 复制 JAR 文件到容器
COPY ../lq-invoice/target/lq-invoice.jar app.jar
# 暴露应用程序监听的端口
EXPOSE 10011
# 设置容器启动命令
ENTRYPOINT ["java", "-jar", "app.jar"]

4、打包镜像,名称命名为lq-invoice

5、编写docker-compose文件

java 复制代码
version: '3.8'

services:
  lq-invoice:
    image: lq-invoice:latest  # 指定镜像名称和标签
    build:
      context: .  # 指定 Dockerfile 所在的上下文目录
      dockerfile: Dockerfile  # 指定 Dockerfile 的名称(如果不在当前目录或名为 Dockerfile.其他名)
    container_name: lq-invoice-container  # 设置容器的名称
    ports:
      - "10011:10011"  # 将容器的 10011 端口映射到主机的 10011 端口
    restart: on-failure  # 设置重启策略,这里是在容器失败时重启
    environment:
      # 将应用程序所需的环境变量传递给容器
      SPRING_PROFILES_ACTIVE: prod
      FILE_OSS_ENABLE: true
      FILE_OSS_ENDPOINT: http://minio:9000
      FILE_OSS_CUSTOMDOMAIN: http://yanjun:9000
      FILE_OSS_APPID: invoice-file
      FILE_OSS_REGION: ""
      FILE_OSS_ACCESSKEY: N3YgP2wjrSmda6wYSBiG
      FILE_OSS_SECRETKEY: TR20rJFPqSXJOKsFzyDBVLlCdgPKoLWxP7dCOVso
      FILE_BUCKETNAME: invoice-file
    depends_on:
      - minio
  minio:
    image: minio/minio
    container_name: minio
    ports:
      - "9000:9000"  # 对象存储服务端口
      - "9001:9001"  # 控制台端口
    environment:
      - MINIO_ROOT_USER=minioadmin  # 用户名
      - MINIO_ROOT_PASSWORD=minioadmin  # 密码
    volumes:
      - ./data:/data  # 数据卷映射,确保本地有 ./data 目录
    command: server /data --console-address ":9001"

6、启动

7、测试

相关推荐
雨奔25 分钟前
Kubernetes StatefulSet 详解:有状态服务的部署与管理实战
云原生·容器·kubernetes
成为你的宁宁41 分钟前
【K8s ConfigMap 配置管理创建、挂载与热更新实践】
云原生·容器·kubernetes
爱学习的小囧1 小时前
VMware vCenter Server 9.0.2.0 资源详解+完整部署教程+下载指南+常见问题
运维·服务器·esxi·vmware·虚拟化·esxi9.0.2.0
贾斯汀玛尔斯2 小时前
每天学一个算法--单调栈(Monotonic Stack)
运维·服务器·算法
hhb_6182 小时前
Linux底层运维自动化挂载与磁盘分区实战指南
linux·运维·自动化
SpikeKing2 小时前
Server - 配置 SQLBot 智能问数项目
运维·server·sqlbot
cui_ruicheng2 小时前
Linux库制作与使用(二):ELF文件与链接过程
linux·运维·服务器
怀旧,3 小时前
【Linux系统编程】18. Linux进程信号(上)
linux·运维·服务器
舰长1153 小时前
Windows服务器修改默认远程端口3389
运维·服务器
minji...3 小时前
Linux 线程同步与互斥(五) 日志,线程池
linux·运维·服务器·开发语言·c++·算法