使用Docker-Compose时,使用JPDA进行远程调试不会通过eclipse连接到Tomcat
我是Docker的新手,所以这可能是我做错了的简单事情。有了所有解决方案后,当使用“ Docker
run”启动Tomcat容器时,我已经能够使用eclipse进行远程调试。
docker run -it --rm -e JPDA_ADDRESS=8000 -e JPDA_TRANSPORT=dt_socket -p
8888:8080 -p 8000:8000 tomcat:8.0-jre8 /usr/local/tomcat/bin/catalina.sh jpda
run
但是,在使用docker-compose时,出现“无法连接到远程VM。连接被拒绝”对话框。
docker-compose up
docker-compose.yml设置:
tomcat: image: tomcat:8.0-jre8 # START - REMOTE DEBUGGING SETTINGS # Didn't
work with or without this network_mode setting. But the bridge settings as
seen with 'docker container inspect *CID*' looks almost identical to the
working solution network_mode: bridge environment: - JPDA_ADDRESS:8000 -
JPDA_TRANSPORT:dt_socket entrypoint: /usr/local/tomcat/bin/catalina.sh jpda
run # END - REMOTE DEBUGGING SETTINGS deploy: restart_policy: condition: on-
failure placement: constraints: [node.role == manager] ports: - 8888:8080 #
REMOTE DEBUGGING SETTINGS jpda port - 8000:8000
我与“ docker run”一起使用的日食设置是:
Remote Java Application: Host: localhost Port: 8000
注意:使用docker-compose设置,我还会在启动输出中看到预期的打印结果:
Listening for transport dt_socket at address: 8000
在这两个部署中,我都可以通过公开的端口8888访问Web服务的功能。这个简单的链接返回“ Hello”。
http://localhost:8888/MyEmulatorService/rest/MES/
关于为什么以这种方式启动时无法进行远程调试的任何想法?我怀疑网络配置的设置方式之间存在细微差异。
-
我的一个伙伴知道了这一点。即使启动输出使它显示为一切正常,并且catalina.sh使用的默认端口和传输为8000,dt_socket。
没有将环境变量传递到容器中,这导致了损坏。也许其他人可以解释这对.sh脚本有何影响?
通过隧道进入容器并列出环境变量来检测到此问题。
docker exec -it *CID* bash env
现在,对我的docker-compose.yml文件的更改如下所示:
environment: JPDA_ADDRESS: 8000 JPDA_TRANSPORT: dt_socket
-
使用Eclipse远程调试Tomcat
2021-02-01 关注 0 浏览108 1答案
-
Docker:使用docker run而不是docker-compose up时无法连接到Redis
2021-02-01 关注 0 浏览366 1答案
-
Django通过docker-compose连接到Postgres
2021-02-01 关注 0 浏览151 1答案
-
Java远程调试(JPDA)在Tomcat 9中不适用于我
2021-02-01 关注 0 浏览145 1答案
-
无法从docker-compose连接到docker
2021-02-01 关注 0 浏览114 1答案
-
Docker-Compose无法连接到Docker Daemon
2021-02-01 关注 0 浏览135 1答案
-
无法从 docker-compose 连接到 docker
2022-07-28 关注 0 浏览32 1答案
-
使用eclipse远程调试jnlp应用程序
2021-01-30 关注 0 浏览107 1答案
-
连接到docker-compose mysql容器会拒绝访问,但运行相同映像的docker不会
2021-02-02 关注 0 浏览119 1答案
-
在docker-compose中连接tomcat和mysql
2021-02-01 关注 0 浏览437 1答案