VisualVm 通过 JMX 连接远程监控 docker 下 Tomcat
配置中为何要加入 -Dcom.sun.management.jmxremote.rmi.port=11199?
参考资料:https://blog.csdn.net/niemingming/article/details/81302960
jmx 参考资料:https://blog.csdn.net/caomiao2006/article/details/51589836JMX 实践-JMX 连接端口)(
配置如下:
方法一:在 catalian.sh 中加入配置
1.需要将 catalian.sh 文件从 docker 映射出来
2.在配置文件中加入配置:
遇到问题,配置完并启动后,发现在客户端中 telnet 缺怎么也连不上:
telent 172.168.1.101 9008
1.先判断 9008 端口对应的进程是否启动?
netstat -anlp | grep 9008
2.判断端口是否开放,或者查看防火墙的状态是否是关闭的?(inactive:关闭,active:打开)
systemctl status firewalld.service
经过以上判断发现都没有问题,但为什么 telnet 就是连不上?
后来猜想是不是端口在 nginx 服务中映射出来,而监听是 tomcat 服务,于是将修改 docker-compose.yml 配置,将端口映射放到 tomcat 服务中,配置如下
重启服务连接 Success
二、当然还有更简单的方法,来配置监听,不用映射和修改 catalian.sh 文件,只需要在 docker-compose.yml 中加入” environment“属性,然后将配置加进去,配置如下:
三、结论
虽然东西都比较简单,但记录下,避免后续走坑!