前言
- 实际开发中,项目通常运行在
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-容器环境搭建完成
本文转载自: 掘金