如何通过 JMX 连接到远程 Docker 容器

Ale*_*isi 2 java jmx jvisualvm docker java-mission-control

我有一个在远程机器上的容器中运行的 Spring Boot 应用程序,我必须使用哪些 JVM 参数通过 Java Mission Control 或 JVisual VM(通过 JMX)连接到它?

Ale*_*isi 6

使用以下 JAVA_OPTIONS 启动容器:

-Dcom.sun.management.jmxremote 
-Dcom.sun.management.jmxremote.rmi.port=7012 
-Dcom.sun.management.jmxremote.port=7012
-Dcom.sun.management.jmxremote.authenticate=false 
-Dcom.sun.management.jmxremote.ssl=false 
-Djava.rmi.server.hostname=<public_ip>
Run Code Online (Sandbox Code Playgroud)

另外,请确保公开您在容器内侦听的相同端口(例如 docker run container -p 7012:7012 ...)

  • @MihaiTodor 你刚刚解决了我的问题!有关如何远程连接的所有其他说明均不包含此“陷阱”!谢了哥们! (2认同)