VisualVM无法将Docker中的远程tomcat与RMI连接 [英] VisualVM unable to connect remote tomcat in docker with RMI

查看:256
本文介绍了VisualVM无法将Docker中的远程tomcat与RMI连接的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在远程机器上的docker容器中运行tomcat。现在我想使用VisualVM连接。我的码头启动命令:

  docker run -d --name tomcat -p 26000:8080 -p 9090:9090 -p 9091 :9091 -v / data / docker / tomcat / webapps:/ data / tomcat / webapps -v / data / docker / tomcat / logs:/ data / tomcat / logs -e CATALINA_OPTS = -  Xms2048M -Xmx2048M -XX:MaxPermSize = 256M -Dcom.sun.management.jmxremote = true -Dcom.sun.management.jmxremote.port = 9090 -Dcom.sun.management.jmxremote.ssl = false -Dcom.sun.management.jmxremote.authenticate = false -Djava。 rmi.server.hostname = 127.0.0.1my.private.hub / tomcat:latest 

而且catalina.log:

  2015年3月13日10:29:56.615 INFO [Thread-10] org.apache.coyote。 AbstractProtocol.stop Stopping ProtocolHandler [http-apr-8080] 
13-Mar-2015 10:29:56.666 INFO [Thread-10] org.apache.coyote.AbstractProtocol.stop停止ProtocolHandler [ajp-apr -8009]
13-Mar-2015 10:29:56.718 INFO [Thread-10] org.apache.coyote.AbstractProtocol.destroy销毁ProtocolHandler [http-apr-8080]
13- MAR-20 15 10:29:56.718 INFO [Thread-10] org.apache.coyote.AbstractProtocol.destroy销毁ProtocolHandler [ajp-apr-8009]
2015年3月13日10:31:01.787 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log服务器版本:Apache Tomcat / 8.0.20
13-Mar-2015 10:31:01.789 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log服务器建成时间:2015年2月15日18:10:42 UTC
13-Mar-2015 10:31:01.789 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log服务器号码:8.0.20.0
13-Mar-2015 10:31:01.789 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log操作系统名称:Linux
13-Mar-2015 10:31:01.789 INFO [main] org.apache .catalina.startup.VersionLoggerListener.log操作系统版本:3.13.0-40-generic
13-Mar-2015 10:31:01.789 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log架构:amd64
2015年3月13日10:31:01.789 INFO [main] org.apache.catalina.startup.VersionLogg erListener.log Java Home:/ usr / lib / jvm / java-7-oracle / jre
13-Mar-2015 10:31:01.789 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log JVM版本:1.7.0_76-b13
13-Mar-2015 10:31:01.790 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log JVM供应商:Oracle Corporation
2015年3月13日10:31:01.790 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log CATALINA_BASE:/ data / tomcat
13-Mar-2015 10:31:01.790 INFO [main] org.apache.catalina。 startup.VersionLoggerListener.log CATALINA_HOME:/ data / tomcat
13-Mar-2015 10:31:01.790 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log命令行参数:-Djava.util.logging .config.file = / data / tomcat / conf / logging.properties
13-Mar-2015 10:31:01.790 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log命令行参数:-Djava .util.logging.manager = org.apache.juli.ClassLoaderLogManager
13-Mar-2015 10:31:0 1.790 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log命令行参数:-Xms2048M
13-Mar-2015 10:31:01.791 INFO [main] org.apache.catalina.startup.VersionLoggerListener。 log命令行参数:-Xmx2048M
13-Mar-2015 10:31:01.791 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log命令行参数:-XX:MaxPermSize = 256M
13-Mar-2015 10:31:01.791 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log命令行参数:-Dcom.sun.management.jmxremote = true
2013年3月13日10: 31:01.791 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log命令行参数:-Dcom.sun.management.jmxremote.port = 9090
13-Mar-2015 10:31:01.791 INFO [ main] org.apache.catalina.startup.VersionLoggerListener.log命令行参数:-Dcom.sun.management.jmxremote.ssl = false
13-Mar-2015 10:31:01.791 INFO [main] org.apache .catalina.startup.VersionLoggerListener.log命令行参数:-Dcom.sun.management.jmxremote.a uthenticate = false
13-Mar-2015 10:31:01.791 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log命令行参数:-Djava.rmi.server.hostname = 127.0.0.1
13-Mar-2015 10:31:01.791 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log命令行参数:-Djava.endorsed.dirs = / data / tomcat / approvaled
13- Mar-2015 10:31:01.791 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log命令行参数:-Dcatalina.base = / data / tomcat
13-Mar-2015 10:31:01.792 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log命令行参数:-Dcatalina.home = / data / tomcat
13-Mar-2015 10:31:01.792 INFO [main] org.apache。 catalina.startup.VersionLoggerListener.log命令行参数:-Djava.io.tmpdir = / data / tomcat / temp
13-Mar-2015 10:31:01.792 INFO [main] org.apache.catalina.core。 AprLifecycleListener.lifecycleEvent加载的基于APR的Apache Tomcat本地库1.1.32使用APR版本1.5.1。

但是VisuamVM无法连接:

 '无法使用服务连接:jmx:rmi:/// jndi / rmi://192.168.0.119:9090 / jmxrmi'
pre>

其中192.168.0.119是远程主机的地址。

解决方案

我尝试过 Marco的回答也在这里回答)但没办法。



最后我可以使用 SSH隧道


I am runing tomcat in a docker container on a remote machine. Now I want to use VisualVM to connect. My docker start command:

docker run -d --name tomcat -p 26000:8080 -p 9090:9090 -p 9091:9091 -v /data/docker/tomcat/webapps:/data/tomcat/webapps -v /data/docker/tomcat/logs:/data/tomcat/logs -e CATALINA_OPTS="-Xms2048M -Xmx2048M -XX:MaxPermSize=256M -Dcom.sun.management.jmxremote=true -Dcom.sun.management.jmxremote.port=9090  -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false -Djava.rmi.server.hostname=127.0.0.1"  my.private.hub/tomcat:latest

And the catalina.log:

13-Mar-2015 10:29:56.615 INFO [Thread-10] org.apache.coyote.AbstractProtocol.stop Stopping ProtocolHandler ["http-apr-8080"]
13-Mar-2015 10:29:56.666 INFO [Thread-10] org.apache.coyote.AbstractProtocol.stop Stopping ProtocolHandler ["ajp-apr-8009"]
13-Mar-2015 10:29:56.718 INFO [Thread-10] org.apache.coyote.AbstractProtocol.destroy Destroying ProtocolHandler ["http-apr-8080"]
13-Mar-2015 10:29:56.718 INFO [Thread-10] org.apache.coyote.AbstractProtocol.destroy Destroying ProtocolHandler ["ajp-apr-8009"]
13-Mar-2015 10:31:01.787 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Server version:        Apache Tomcat/8.0.20
13-Mar-2015 10:31:01.789 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Server built:          Feb 15 2015 18:10:42 UTC
13-Mar-2015 10:31:01.789 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Server number:         8.0.20.0
13-Mar-2015 10:31:01.789 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log OS Name:               Linux
13-Mar-2015 10:31:01.789 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log OS Version:            3.13.0-40-generic
13-Mar-2015 10:31:01.789 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Architecture:          amd64
13-Mar-2015 10:31:01.789 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Java Home:             /usr/lib/jvm/java-7-oracle/jre
13-Mar-2015 10:31:01.789 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log JVM Version:           1.7.0_76-b13
13-Mar-2015 10:31:01.790 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log JVM Vendor:            Oracle Corporation
13-Mar-2015 10:31:01.790 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log CATALINA_BASE:         /data/tomcat
13-Mar-2015 10:31:01.790 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log CATALINA_HOME:         /data/tomcat
13-Mar-2015 10:31:01.790 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Djava.util.logging.config.file=/data/tomcat/conf/logging.properties
13-Mar-2015 10:31:01.790 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager
13-Mar-2015 10:31:01.790 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Xms2048M
13-Mar-2015 10:31:01.791 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Xmx2048M
13-Mar-2015 10:31:01.791 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -XX:MaxPermSize=256M
13-Mar-2015 10:31:01.791 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Dcom.sun.management.jmxremote=true
13-Mar-2015 10:31:01.791 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Dcom.sun.management.jmxremote.port=9090
13-Mar-2015 10:31:01.791 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Dcom.sun.management.jmxremote.ssl=false
13-Mar-2015 10:31:01.791 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Dcom.sun.management.jmxremote.authenticate=false
13-Mar-2015 10:31:01.791 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Djava.rmi.server.hostname=127.0.0.1
13-Mar-2015 10:31:01.791 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Djava.endorsed.dirs=/data/tomcat/endorsed
13-Mar-2015 10:31:01.791 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Dcatalina.base=/data/tomcat
13-Mar-2015 10:31:01.792 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Dcatalina.home=/data/tomcat
13-Mar-2015 10:31:01.792 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Djava.io.tmpdir=/data/tomcat/temp
13-Mar-2015 10:31:01.792 INFO [main] org.apache.catalina.core.AprLifecycleListener.lifecycleEvent Loaded APR based Apache Tomcat Native library 1.1.32 using APR version 1.5.1.

But VisuamVM is unable to connect:

'Cannot connect using service:jmx:rmi:///jndi/rmi://192.168.0.119:9090/jmxrmi'

where 192.168.0.119 is the address of the remote host machine.

解决方案

I tried the Marco's answer (also answered here) but no way.

At the end I could connect using a SSH tunnel.

这篇关于VisualVM无法将Docker中的远程tomcat与RMI连接的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆