使用 Docker Compose 部署 Spring Boot 应用

使用 Docker Compose 部署 Spring Boot 应用

第一步:创建 Spring Boot 应用的 Dockerfile

  1. 在您的 Spring Boot 项目根目录中创建一个 Dockerfile

  2. 编辑 Dockerfile,添加以下内容:

    Dockerfile 复制代码
    # 基础镜像使用 OpenJDK
    FROM openjdk:11-jdk-slim
    
    # 维护者信息
    LABEL maintainer="your-email@example.com"
    
    # 添加应用的 jar 文件
    ADD target/spring-boot-application.jar app.jar
    
    # 暴露 8080 端口
    EXPOSE 8080
    
    # 容器启动时运行 Java 应用
    ENTRYPOINT ["java", "-jar", "/app.jar"]

    这个 Dockerfile 会构建一个包含您的 Spring Boot 应用的 Docker 镜像。

  3. 确保您的 Spring Boot 应用已经通过 Maven 或 Gradle 构建,生成了 target/spring-boot-application.jar

第二步:编写 docker-compose.yml 文件

  1. 在项目的根目录中创建一个 docker-compose.yml 文件。

  2. 编辑 docker-compose.yml 文件,添加以下内容:

    yaml 复制代码
    version: '3'
    services:
      app:
        build: .
        ports:
          - "8080:8080"

    这个配置定义了一个服务 app,它将根据您的 Dockerfile 构建镜像,并将容器的 8080 端口映射到主机的 8080 端口。

第三步:部署到服务器

  1. 将包含 Dockerfiledocker-compose.yml 的项目目录上传到您的远程服务器。您可以使用 scp 命令或其他文件传输方法。
  2. 在远程服务器上,确保已安装 Docker 和 Docker Compose。

第四步:使用 Docker Compose 运行服务

  1. 在远程服务器上的项目目录中,运行以下命令启动服务:

    bash 复制代码
    docker-compose up -d

    这会导致 Docker Compose 根据您的 docker-compose.yml 文件构建镜像(如果尚未构建)并在后台启动服务。

  2. 您的 Spring Boot 应用现在应该正在运行,并且可以通过服务器的 8080 端口访问。

结论

使用 Docker Compose 部署 Spring Boot 应用的过程相对直接。它不仅简化了部署流程,还为应用的扩展和维护提供了便利。这种方法特别适用于需要在生产环境中运行的复杂应用。

相关推荐
king0078 分钟前
Spring-AI 结合自定义 mcp server 实现飞书智能机器人
spring boot·ai·ai编程
长不大的蜡笔小新16 分钟前
私人健身房管理系统
java·javascript·spring boot
invicinble26 分钟前
对于docker在项目中的完整实战
运维·docker·容器
❀͜͡傀儡师1 小时前
Docker快速部署一个轻量级邮件发送 API 服务
jvm·docker·容器
深耕AI2 小时前
Docker Volumes详解
运维·docker·容器
Bypass--2 小时前
防护篇 | 云原生安全攻防实战
安全·云原生·容器·kubernetes
trayvontang2 小时前
Spring属性自动配置原理与自定义转换
spring boot·spring·spring属性自动配置·spring转换原理·spring自定义属性转换器
袁煦丞 cpolar内网穿透实验室2 小时前
无需公网 IP 也能全球访问本地服务?cpolar+Spring Boot+Vue应用实践!
vue.js·spring boot·tcp/ip·远程工作·内网穿透·cpolar
山外山与楼外楼2 小时前
微服务虾谈
docker·微服务·容器
幽络源小助理2 小时前
SpringBoot+Vue雅苑小区管理系统源码 | Java物业项目免费下载 – 幽络源
java·vue.js·spring boot