For remote monitoring of JVM processes (running in a docker container) you will have to activate remote JMX monitoring with the following JVM parameters:
-Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=[RMI_PORT] -Dcom.sun.management.jmxremote.rmi.port=[RMI_PORT] -Djava.rmi.server.hostname=[EXTERNAL_IP_OF_THE_CONTAINER]
Both RMI_PORTs could have the same value (e.g. 9090). The EXTERNAL_IP_OF_THE_CONTAINER has to be the IP address with which the JVM process is accessible. Localhost or 127.0.0.1 won't work.
The following two parameters completely disable transport encryption and access control. They increase convenience and disable security at the same time:
Given the RMI_PORT=9090, you can launch the process with
docker run -p 8080:8080 -p 9090:9090 --name jmx airhacks/tomee-jmx and
connect with jvisualvm, jconsole, jmc with
Web Apps, SPA, PWA with vanilla Java Script (ES 6+), CSS 3 and WebStandards only. As simple as possible, but not simpler. See you at: (Progressive) Web apps, Single Page Apps and WebStandards airhacks workshops at MUC airport, Winter Edition
airhacks.fm the podcast:
Stay in touch: airhacks.news.