• 使用docker-compose 实现发布本地的jar包


    如果你想使用 docker-compose 来部署一个本地的 JAR 包(而不是预先构建的 Docker 镜像),你需要在 docker-compose.yml 文件中包含构建上下文和 Dockerfile 的信息。这样,Docker Compose 将会负责构建镜像,并基于这个镜像启动容器。这通常涉及到在 Dockerfile 中指定如何打包你的 JAR 应用为 Docker 镜像。

    步骤 1: 准备 Dockerfile

    首先,确保你有一个适当的 Dockerfile 在你的项目中。这个 Dockerfile 应该包含所有必要的步骤来构建你的 Java 应用的 Docker 镜像。例如:

    # 使用 Java 运行环境作为基础镜像
    FROM openjdk:8-jdk-alpine
    
    # 设置工作目录
    WORKDIR /app
    
    # 将 JAR 文件复制到容器中
    COPY ./oaker-admin-web.jar /app/oaker-admin-web.jar
    
    # 暴露端口
    EXPOSE 8080
    
    # 设置容器启动时执行的命令
    ENTRYPOINT ["java", "-jar", "/app/oaker-admin-web.jar"]
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14

    步骤 2: 创建 docker-compose.yml 文件

    docker-compose.yml 文件中,你需要指定 Docker Compose 如何构建你的应用镜像。例如:

    version: '3.8'
    
    services:
      oaker:
        build: .
        container_name: my-oaker-container
        ports:
          - "8888:8080"
        restart: always
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9

    在这个 docker-compose.yml 文件中:

    • build: 指定了 Dockerfile 所在的位置。这里的 . 表示 Dockerfile 位于与 docker-compose.yml 相同的目录。
    • 其余配置与之前相同。

    步骤 3: 使用 Docker Compose 构建和运行

    1. 在包含 docker-compose.yml 和 Dockerfile 的目录中运行以下命令来构建并启动你的服务:

      docker-compose up -d
      
      • 1
    2. 当需要停止服务时,运行:

      docker-compose down
      
      • 1

    这样,Docker Compose 将根据你的 Dockerfile 自动构建镜像,并且基于这个镜像启动你的 Java 应用。你的 JAR 文件需要位于与 Dockerfile 和 docker-compose.yml 同一目录下,或者在 Dockerfile 中正确指定其路径。

  • 相关阅读:
    2024护网面试题精选(一)
    阿里内部目前最完整“Spring全线笔记”,不止是全家桶,太完整了
    Linux下运行Java Jar程序
    ExoPlayer架构详解与源码分析(1)——前言
    绘制lidar点云pose
    vm.$set函数的个人总结
    解决Unmarshalling Error: unexpected element...Expected elements are报错
    Shiro学习2----spring boot整合(JdbcRealm)
    java计算机毕业设计基于springboo+vue的校园二手闲置物品交易系统
    MYSQL:B树和B+树存储索引比较
  • 原文地址:https://blog.csdn.net/sunyuhua_keyboard/article/details/134438900