解决docker进程id为1不能使用jstack和arthas

默认docker启动进程为1

/usr/lib/jvm/java-1.8-openjdk/bin # ./jstack 1
1: Unable to get pid of LinuxThreads manager thread

解决办法:

使用/bin/sh -c把命令写入sh文件,然后启动sh

比如:

/bin/sh -c
echo java -jar -server -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=/logs/proxy-gc.heap -Djava.security.egd=file:/dev/./urandom -Dspring.profiles.active=dev -Xmx2G -Xms2G ./app.jar >start.sh && chmod 750 start.sh && ./start.sh

这样,java进程就不为1了。

可以随意使用java命令和工具。

posted on 2020-05-07 18:17  yaoyu  阅读(3864)  评论(1编辑  收藏  举报

导航