如何通过Docker实现Spring Boot远程调试

1. 流程图

erDiagram
    小白 --> 开发者: 请求帮助
    开发者 --> 小白: 教授远程debug

2. 步骤

步骤 操作
1 准备Dockerfile和docker-compose.yml文件
2 配置Dockerfile文件
3 配置docker-compose.yml文件
4 启动Docker容器并在IDE中配置远程调试

3. 操作步骤

步骤1: 准备Dockerfile和docker-compose.yml文件

首先,你需要在项目根目录下创建一个Dockerfile文件和一个docker-compose.yml文件。

步骤2: 配置Dockerfile文件

在Dockerfile中,你需要添加以下代码:

# 使用基础镜像
FROM openjdk:11

# 定义工作目录
WORKDIR /app

# 复制编译好的jar包到容器中
COPY target/*.jar /app/app.jar

# 暴露debug端口
EXPOSE 5005

# 启动命令
CMD ["java", "-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=*:5005", "-jar", "app.jar"]

代码注释:

  • EXPOSE 5005:暴露5005端口用于远程调试
  • CMD ["java", "-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=*:5005", "-jar", "app.jar"]:启动应用并开启远程调试端口

步骤3: 配置docker-compose.yml文件

在docker-compose.yml中,你需要添加以下代码:

version: '3'
services:
  app:
    build: .
    ports:
      - "8080:8080"
      - "5005:5005"

这里配置了两个端口映射,一个是应用本身的端口8080,另一个是远程调试的端口5005。

步骤4: 启动Docker容器并在IDE中配置远程调试

运行以下命令启动容器:

docker-compose up

然后在IDE中配置远程调试,配置远程主机为localhost,端口为5005,即可开始远程调试。

通过以上步骤,你就可以实现使用Docker进行Spring Boot应用的远程调试了。


通过以上操作,你已经学会了如何使用Docker实现Spring Boot远程调试,希望对你有所帮助。如果有任何疑问,欢迎随时向我请教。加油!继续学习成长!