Docker 使用 alpine openjdk 无法查看JVM 无jmap、jstat |
您所在的位置:网站首页 › 安装jps命令 › Docker 使用 alpine openjdk 无法查看JVM 无jmap、jstat |
在工作中遇到docker中的项目PID为1,镜像中JDK为:openjdk:8-jre-alpine,原因是因为jre的包取消了jdk的一些工具内。可在docker中查看相关信息可安装jattach即可解决 1.安装jattach apk add --no-cache jattach --repository http://dl-cdn.alpinelinux.org/alpine/edge/community/ apk add --no-cache jattach --repository http://mirrors.aliyun.com/alpine/latest-stable/community/指令集: load : load agent library(导入agent库) properties : print system properties(打印系统属性) agentProperties : print agent properties(打印agent属性) datadump : show heap and thread summary(显示堆和线程概要信息) threaddump : dump all stack traces (like jstack)(导出栈信息) dumpheap : dump heap (like jmap)(导出堆信息) inspectheap : heap histogram (like jmap -histo)(显示堆信息直方图) setflag : modify manageable VM flag(修改可管理的VM参数) printflag : print VM flag(打印VM参数) jcmd : execute jcmd command(执行jcmd命令) 1.1 如使用:jcmd命令: jattach jcmd "help -all" 1.2 使用dumpheap命令导出堆载信息 jattach dumpheap jattach 1 jcmd 'GC.heap_dump -all ./123.hprof' 2.切换为jdk包切换包后可能出现这一错误: # jmap -histo 1 1: Unable to get pid of LinuxThreads manager thread若是docker-compose.yml,可在编排文件中添加参数: pid: "host"将PID模式设置为主机PID模式,跟主机系统共享进程命名空间。容器使用这个标签将能够访问和操纵其他容器和宿主机的名称空间。 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |