如何解决如何在运行基于Corretto的映像的Docker中访问JMX接口?
类似于How to connect to Java instances running on EC2 using JMX和How to access JMX interface in docker from outside?,但特别是对于Amazon Corretto JDK,我想通过JMX使用VisualVM连接到tomcat:8.5.57-jdk11-corretto
。
我在我的自定义启动脚本中写了这部分内容,其中包含JMX_ADDRESS: "host.docker.internal:38880"
if [ "$JMX_ADDRESS" ]
then
IFS=':' read -r -a array <<< "$JMX_ADDRESS"
CATALINA_OPTS=$(cat <<-EOF
$CATALINA_OPTS
-Dcom.sun.management.jmxremote.rmi.port=${array[1]}
-Dcom.sun.management.jmxremote=true
-Dcom.sun.management.jmxremote.port=${array[1]}
-Dcom.sun.management.jmxremote.ssl=false
-Dcom.sun.management.jmxremote.authenticate=false
-Dcom.sun.management.jmxremote.local.only=false
-Djava.rmi.server.hostname=${array[0]}
EOF
)
fi
CATALINA_OPTS=$(echo $CATALINA_OPTS)
export CATALINA_OPTS
if [ $JPDA_ADDRESS ]
then
exec catalina.sh jpda run
else
exec catalina.sh run
fi
这适用于标准的openjdk,但不适用于Corretto。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。