Jconsole监视Docker容器中的jvm:连接被拒绝

时间:2018-12-11 02:42:51

标签: java spring-boot docker jvm jconsole

我正在尝试监视在Windows docker容器中运行的springboot应用程序。

概述

基本上,我正在启用SSL的情况下运行应用程序(使用JKS类型的密钥库),并将应用程序暴露在端口8081上。Netscaler配置为侦听此Docker主机上的端口8081,可通过https://ournetscalerurl/myapp访问该应用程序

我的docker组成如下。

java -Xms256m -Xmx1024m -jar C:\$env:ARCH_NAME-$env:RELEASE.jar --security.require-ssl=true --server.port=${SERVER_PORT} --server.ssl.key-store=${SERVER_SSL_KEY_STORE} --server.ssl.key-store-password=${SERVER_KEYSTORE_PASSWORD} --server.ssl.key-store-type=${SERVER_SSL_KEY_STORE_TYPE} --server.ssl.key-password=${SSL_KEY_PASSWORD}

我的命令是
-Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=9999 -Dcom.sun.management.jmxremote.rmi.port=9999 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.ssl.need.client.auth=false -Dcom.sun.management.jmxremote.authenticate=false -Djava.rmi.server.hostname=dockerhostIP -Dcom.sun.management.jmxremote.local.only=false

上面的命令还提供了用于启用JVM监视的其他JVM参数。

{{1}}

应用程序已启动并正在运行。现在,我试图通过jconsole以hostname:port格式进行访问,并出现错误,如下面的屏幕快照所示。
我的Jconsole命令是Jconsole dockerhostIP:9999

JConsole error

我遵循了这个https://docs.oracle.com/javase/1.5.0/docs/guide/management/agent.html#jconsole_remote

请让我知道怎么了。通过jconsole监视启用SSL的应用程序是否需要其他参数。

谢谢。

0 个答案:

没有答案