VisualVM监控远程服务器上JVM教程

Dockerfile配置

FROM openjdk:11
ADD ./target/tide-service-system.jar ./
ENV JAVA_OPTS="\
-server \
-Xmx500m \ 最大堆内存
-Xms128m \ 初始堆内存
-Dcom.sun.management.jmxremote=true \ 允许远程jmx连接
-Dcom.sun.management.jmxremote.rmi.port=8890 \ 宿主机jmx端口
-Dcom.sun.management.jmxremote.port=8890 \ 容器jmx端口
-Dcom.sun.management.jmxremote.ssl=false \ 是否采用ssl协议
-Dcom.sun.management.jmxremote.authenticate=false \  是否需要账户密码
-Dcom.sun.management.jmxremote.local.only=false \ 是否仅本地连接
-Djava.rmi.server.hostname=你的服务器ip"
ENTRYPOINT java ${JAVA_OPTS} -Dfile.encoding=UTF-8 -jar tide-service-system.jar
RUN echo "Asia/Shanghai" > /etc/timezone;

打开VisualVM
VisualVM监控远程服务器上JVM教程_第1张图片
填写你的服务器ip
VisualVM监控远程服务器上JVM教程_第2张图片
右击选择Add JMX Connection
VisualVM监控远程服务器上JVM教程_第3张图片
填写你服务器ip和刚刚dockerfile设置的宿主机jmx端口和服务器账户密码然后点OK
VisualVM监控远程服务器上JVM教程_第4张图片
点yes
VisualVM监控远程服务器上JVM教程_第5张图片
成功,如果没出现就点Visual GC点Reload就出来了
VisualVM监控远程服务器上JVM教程_第6张图片

你可能感兴趣的:(java,linux)