以Tomcat环境为例,Dockerfile文件如下图所示:
下载探针,将探针放在Dockerfile同级目录。
将探针安装包放到Docker镜像内指定目录,并自动解压。
说明:有的Dockerfile生成的容器不支持unzip命令,建议先将探针的zip包在本地解压,再传入镜像内。
ADD tingyun-agent-java-2.7.1.zip /opt/apache-tomcat-8.5.11/
备份修改的脚本文件。
RUN cp /opt/apache-tomcat-8.5.11/bin/catalina.sh /opt/apache-tomcat-
8.5.11/bin/catalina.sh.bak
修改catalina.sh配置文件,增加探针启动参数。
RUN sed -i '1a\export CATALINA_OPTS="$CATALINA_OPTS -javaagent:/opt/apache-
tomcat-8.5.11/tingyun/tingyun-agent-java.jar -Dtingyun.config.nbs.app_name=${TINGYUN_APP_NAME} -Dtingyun.config.nbs.license_key=${TINGYUN_LICENSE_KEY}"' /opt/apache-tomcat-
8.5.11/bin/catalina.sh
执行docker build
命令,则创建出来的镜像包含Java探针。
基于镜像,创建容器并添加环境变量。
docker run -it -e TINGYUN_APP_NAME=TINGYUN -e TINGYUN_LICENSE_KEY=999-999-999 --name tomcat tomcat
等待5分钟左右,查看探针日志和报表,观察性能数据上传是否正常。
配置 JAVA_OPTS,在-javaagent
后加以下参数,中间以空格分隔:
-Dtingyun.config.nbs.app_name=${TINGYUN_APP_NAME}
-Dtingyun.config.nbs.license_key=${TINGYUN_LICENSE_KEY}
#以下3个参数仅在私有化环境下配置。
-Dtingyun.config.nbs.host=${TINGYUN_HOST}
-Dtingyun.config.nbs.port=${TINGYUN_PORT}
-Dtingyun.config.nbs.ssl=${TINGYUN_SSL}