我想调试在Wildfly上运行的容器化应用程序。但这是行不通的。 :(
我的应用程序的Dockerfile:
FROM jboss/wildfly
ADD standalone-custom.xml /opt/jboss/wildfly/standalone/configuration/
EXPOSE 9990
EXPOSE 8787
CMD ["/opt/jboss/wildfly/bin/standalone.sh", "-c", "standalone-custom.xml", "-b", "0.0.0.0", "-bmanagement", "0.0.0.0", "--debug", "8787"]
docker-compose.yml:
version: '3'
...
services:
...
myappservice:
image: myappimage
ports:
- "8080:8080"
- "8787:8787"
- "9990:9990"
...
当我尝试附加调试器时:
jdb -attach localhost:8787
我收到以下信息:
java.io.IOException:握手失败-连接过早关闭 在 jdk.jdi / com.sun.tools.jdi.SocketTransportService.handshake(SocketTransportService.java:142) 在 jdk.jdi / com.sun.tools.jdi.SocketTransportService.attach(SocketTransportService.java:255) 在 jdk.jdi / com.sun.tools.jdi.GenericAttachingConnector.attach(GenericAttachingConnector.java:119) 在 jdk.jdi / com.sun.tools.jdi.SocketAttachingConnector.attach(SocketAttachingConnector.java:83) 在 jdk.jdi / com.sun.tools.example.debug.tty.VMConnection.attachTarget(VMConnection.java:519) 在 jdk.jdi / com.sun.tools.example.debug.tty.VMConnection.open(VMConnection.java:328) 在jdk.jdi / com.sun.tools.example.debug.tty.Env.init(Env.java:63)在 jdk.jdi / com.sun.tools.example.debug.tty.TTY.main(TTY.java:1082)
致命错误:无法附加到目标VM。
如果有任何建议,我将不胜感激。