我有一个在 Vagrant 中运行的 CoreOS。Vagrant 私网 IP 为 192.168.111.1。CoreOS 内部是一个带有 Tomcat 8.0.32 的 docker 容器。几乎一切正常(应用程序部署等)只是调试不行。Tomcat 映射到 8080 端口,JPDA 端口应该是 8000。
事实
Tomcat JPDA 配置有:
JDPA_OPTS -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=8000
它从catalina.sh jpda start
命令开始。运行时控制台的输出docker-compose
为:
tomcat | Listening for transport dt_socket at address: 8000
从容器信息中,我假设端口已按应有的方式映射:
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
dcae1e0148f8 tomcat "/run.sh" 8 minutes ago Up 8 minutes 0.0.0.0:8000->8000/tcp, 0.0.0.0:8080->8080/tcp tomcat
我的 docker 映像基于此Dockerfile。
问题
尝试运行远程调试配置(下面的屏幕截图)时出现错误Error running Debug: Unable to open debugger port (192.168.111.1:8000): java.net.ConnectException "Connection refused"
。我已经尝试了一切,从改变各种配置,但没有运气。我错过了什么吗?