阿里开源项目arthas在docker环境初始化

需求

  1. 我前一篇是在window环境下做的测试,实际情况现在的生成环境程序都部署在了docker环境下,此环境对arthas可能会缺失很多必要组件
  2. 目前的基础环境是在docker容器中,只存在基本的tomcat容器运行的必要环境

步骤

  1. 首先进入容器docker exec -it xxx bash
  2. 我的tomcat目录在/usr/local/tomcat 因此我在/usr/local/tool建立了个工具目录,在里面执行curl -L https://alibaba.github.io/arthas/install.sh | sh
  3. 按官方要求做下去的话,会产生很多错误,我也遇到很多问题,这里列下必要的环境
  4. 运行as.sh 需要的环境有jdk8以上,且配置好环境变量,在/etc/profile文件下添加,jdk目录
JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64
JRE_HOME=/usr/lib/jvm/java-8-openjdk-amd64/jre
PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin
CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib
export JAVA_HOME JRE_HOME PATH CLASSPATH
  1. 默认下载的tomcat的docker镜像里面jdk环境可能只有jre的,并没有携带工具文件,但arthas需要依赖lib包和bin包里面的包和工具,这里我docker外的centos环境安装了jdk8的完整版,因此在外面可以运行下面两句,自己找准自己的目录,arthas需要jps工具和lib包里的内容
docker cp lib/ c9c3b9c608b2:/usr/lib/jvm/java-8-openjdk-amd64
docker cp jps c9c3b9c608b2:/usr/lib/jvm/java-8-openjdk-amd64/bin
  1. 工具cp完整后再运行发现会报telnet缺失的问题,那么还需要装这个
apt-get install telnet
  1. 上面步骤都走完,再次运行就可以了
原文地址:https://www.cnblogs.com/sky-chen/p/9887777.html