Shu*_*Shu 5 java docker spring-boot
我开发了一个应该在docker中运行的java程序。但是,我在调试运行在 docker 中的 java 程序时遇到了很多麻烦。
网上查了一下,有些教程提出了spring-dev-tools之类的工具(因为我的java程序是基于spring-boot的程序)。
https://www.youtube.com/watch?v=sz5Zv5QQ5ek
根据这些教程,调试是可以的,例如设置断点和变量监视,但是,当我更新我的代码(例如,某些类)时,这些更改无法立即反映在 docker 中运行的程序中,程序表现得像旧代码。
有人可以给一些提示吗?
我通过执行以下操作成功地完成了这项工作:
这是我的 dockerfile:
FROM gradle:5.4-jdk12
WORKDIR /app
EXPOSE 8080 5005
Run Code Online (Sandbox Code Playgroud)
这是我的 docker-compose.yml:
version: '3'
services:
app:
build:
context: .
ports:
- 5005:5005
- 8080:8080
volumes:
- .:/app
command: ["gradle", "bootRun"]
Run Code Online (Sandbox Code Playgroud)
当我使用它运行docker-compose up
然后连接远程调试器时,热重载起作用。
我是从 Intellij 连接的,所以我必须重建项目才能使热重载工作。
归档时间: |
|
查看次数: |
3012 次 |
最近记录: |