前言
- 实际开发中,项目通常运行在
docker容器内,学习Arthas前,需要构建容器环境 - 使用
docker pull tomcat命令从docker Hub拉取下来的镜像,使用的是openJdk,其不含用jps命令,执行java -jar arthas.jar启动arthas时,会报错,提示找不到 java process
1.构建 Tomcat+Jdk 环境前,下载 tomcat、jdk 安装包
2.创建 Dockerfile 文件,生成镜像
- 将下载好的 tomcat、jdk 上传至 Linux 中
- 创建 Dockerfile 文件,文件内容如下,其中
CMD ["/usr/local/apache-tomcat-8.5.31/bin/catalina.sh","run"]可以使用docker logs打印日志。CMD /usr/local/apache-tomcat-8.5.31/bin/startup.sh && tail -F /usr/local/apache-tomcat-8.5.31/logs/catalina.out会将日志放在catalina.out文件中,在docker run时需配置上日志的挂载,方便查看日志,使用docker logs无法查看到日志
1 | bash复制代码FROM centos |
- 在目录
/mydata/tomcat下使用docker build -t arthas-tomcat:v1.1.0 .创建镜像)
3.启动容器
1 | ruby复制代码docker run -p 9999:8080 --name arthas_tomcat -v /mydata/tomcat/webapps/:/usr/local/apache-tomcat-8.5.31/webapps -v /etc/localtime:/etc/localtime:ro -d arthas-tomcat:v1.1.0 |
4.创建一个简单的 spring boot 项目,打war包上传到 /mydata/tomcat/webapps/目录下,重启容器docker restart 9b87fdb14cb2
5.下载启动 Arthas,详细步骤可参考官网
- 进入容器
docker exec -it 9b87fdb14cb2 /bin/bash,此时所在目录为/usr/local。新建目录mkdir arthas进入cd arthas目录,此处用于存放下载下来的 arthas.jar - 下载
curl -O https://arthas.aliyun.com/arthas-boot.jar,并启动java -jar arthas.jar - 根据检查出的 java 进程,选择对应的序号
6.Arthas-容器环境搭建完成
本文转载自: 掘金