之前写过一篇:Dockfile打包带tdengine驱动的tomcat自定义镜像_如何创建一个包含tdengine客户端的docker镜像-CSDN博客
上面这篇是基于centos容器镜像制作的,这篇改用tomcat容器制作。
Dockfile内容如下
# 使用官方的 Tomcat 8 镜像作为基础镜像,并指定 JDK 8 版本
FROM tomcat:8-jdk8-openjdk
# 设置环境变量
ENV TDENGINE_VERSION=2.0.20.13
# 创建一个目录用于存放 TDengine 驱动
RUN mkdir -p /usr/local/tdengine
# 下载 TDengine client
RUN wget https://www.taosdata.com/assets-download/TDengine-client-${TDENGINE_VERSION}-Linux-x64.tar.gz -O /usr/local/TDengine-client-${TDENGINE_VERSION}-Linux-x64.tar.gz
# 解压 TDengine client
RUN tar -zxvf /usr/local/TDengine-client-${TDENGINE_VERSION}-Linux-x64.tar.gz -C /usr/local/
# 安装 TDengine client
RUN cd /usr/local/TDengine-client-${TDENGINE_VERSION}/ && ./install_client.sh
# 暴露默认的 Tomcat 端口
EXPOSE 8080
# 启动 Tomcat
CMD ["catalina.sh", "run"]
        最后执行如下命令完成打包
docker build -t tomcat8withtdengine:8-jdk8-openjdk  .
        docker-compose配置
  gateway:
    container_name: gateway
    image: tomcat8withtdengine:8-jdk8-openjdk
    ports:
      - '8804:8080'
    volumes:
      - '${PWD}/gateway/conf:/usr/local/tomcat/conf'
      - '${PWD}/gateway/webapps:/usr/local/tomcat/webapps'
      - '${PWD}/gateway/logs:/usr/local/tomcat/logs'
      - '${PWD}/gateway/data/logs:/data/logs'
    environment:
      - TZ=Asia/Shanghai
    restart: always
        容器初始配置文件生成
无映射文件启动后
tomcat 无映射启动后
mkdir -p /data/app/gateway
docker cp gateway:/usr/local/tomcat/conf /data/app/gateway/