互联网服务DockerTomcatjconsole

jconsole监控远程docker环境中tomcat容器的JVM,无法连接

1.Docker环境宿主机:192.168.1.100Tomcat容器:映射端口:9000:9000配置:JAVA_OPTS=" -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=9000 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false"本地客户机-->...显示全部
1.Docker环境
宿主机:192.168.1.100
Tomcat容器:
映射端口:9000:9000

配置:
JAVA_OPTS=" -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=9000 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false"

本地客户机-->cmd-->jconsole.exe-->弹出“Java监视和管理控制台”-->选择“远程进程”,输入192.168.1.100:9000-->点击连接
提示“连接失败,是否重试!”


注:虚拟机环境下
虚拟机:192.168.1.105
端口:9000
同样的配置,jconsole可以正常连接 192.168.1.105:9000收起
参与24

查看其它 14 个回答deat_sigh的回答

deat_sighdeat_sigh软件开发工程师IT

我尝试了另外一种方法:
在docker启动的时候,加入设置
docker run -i -t -p 8200:8080 \
-p 9090:9090 \
--name model_test \
-e CATALINA_OPTS="-Djava.rmi.server.hostname=10.255.30.114 \
-Dcom.sun.management.jmxremote \
-Dcom.sun.management.jmxremote.port=9090 \
-Dcom.sun.management.jmxremote.ssl=false \
-Dcom.sun.management.jmxremote.authenticate=false \
-Dcom.sun.management.jmxremote.rmi.port=9090" \
-d model:2.3
其实就是使用-e参数,将需要的环境打入.然后在远程的时候输入9090端口,就可以正常连接了。

软件开发 · 2017-12-06
浏览5433

回答者

deat_sigh
软件开发工程师IT

回答状态

  • 发布时间:2017-12-06
  • 关注会员:4 人
  • 回答浏览:5433
  • X社区推广