IDEA中远程调试docker容器中java项目
·
IDEA中远程调试docker容器中java项目
适用于:项目在本地运行没有问题,在服务器中发布却出现异常
未上线的项目,该方法会影响到服务器中项目的运行
需要有容器项目的源码,并且需要和容器中的项目一致
-
修改
DockerFile文件项目运行时
DockerFile中需要添加如下命令“-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address={port}”
如:
FROM java:8 EXPOSE 8080 VOLUME /tmp COPY fatherbackend.jar app.jar # 设置时区 RUN ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime RUN echo 'Asia/Shanghai' >/etc/timezone RUN bash -c 'touch /app.jar' ENTRYPOINT ["java","-jar","-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=5005","app.jar"] -
生成镜像
进入当前目录(存在
DockerFile和jar的目录)执行命令生成镜像
docker build -t {镜像名称} .
-
运行容器
执行命令
docker run -d -p 8080:8080 -p 5005:5005 --name {容器名称} {镜像名称}
说明:需要启用两个端口
8080 -》访问项目端口
5005 -》调试端口
注意:服务器需要开放端口
5005 -
配置
IDEA

添加


连接成功即可进行远程DeBug
注意事项:
- 该远程调试会影响到真实项目运行。
- 该方法只能调试,不能对代码做更改。适合临时使用
- 链接失败请检查端口是否开放。
- 调试完成后要重新修改将调试模式关闭,避免不必要的麻烦
更多推荐
所有评论(0)