解決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命令和工具。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM