构建基于Tomcat 9.0.106和JDK 8的Docker镜像

奥黛丽·逐爱者
2025-06-24 / 0 评论 / 2 阅读 / 正在检测是否收录...

构建基于Tomcat 9.0.106和JDK 8的Docker镜像

使用 Tomcat 自带的默认 ROOT 应用(包含 Tomcat 默认页面)
主要变更说明:
合并了apt-get update操作:将基础工具安装和wkhtmltopdf安装的apt-get update合并,减少镜像层数

添加了wkhtmltopdf安装步骤:

下载官方0.12.6版本的deb包

安装deb包

创建必要的符号链接

添加了验证命令

保留了原有结构:JDK和Tomcat的安装方式保持不变

FROM ubuntu:20.04

ENV JAVA_HOME /usr/local/jdk1.8.0_441
ENV CATALINA_HOME /usr/local/tomcat
ENV PATH $PATH:$JAVA_HOME/bin:$CATALINA_HOME/bin

# 安装基础工具和wkhtmltopdf依赖
RUN apt-get update && \
    apt-get install -y wget xfonts-75dpi xfonts-base libjpeg-turbo8 fontconfig && \
    rm -rf /var/lib/apt/lists/*

# 安装JDK
COPY jdk-8u441-linux-x64.tar.gz /tmp/
RUN tar -xzf /tmp/jdk-8u441-linux-x64.tar.gz -C /usr/local/ && \
    rm /tmp/jdk-8u441-linux-x64.tar.gz

# 安装Tomcat
RUN wget https://archive.apache.org/dist/tomcat/tomcat-9/v9.0.106/bin/apache-tomcat-9.0.106.tar.gz && \
    tar -xzf apache-tomcat-9.0.106.tar.gz -C /usr/local/ && \
    mv /usr/local/apache-tomcat-9.0.106 /usr/local/tomcat && \
    rm apache-tomcat-9.0.106.tar.gz

# 安装wkhtmltopdf
RUN apt-get update && \
    wget https://github.com/wkhtmltopdf/packaging/releases/download/0.12.6-1/wkhtmltox_0.12.6-1.focal_amd64.deb && \
    apt-get install -y ./wkhtmltox_0.12.6-1.focal_amd64.deb && \
    rm wkhtmltox_0.12.6-1.focal_amd64.deb && \
    ln -s /usr/local/bin/wkhtmltopdf /usr/bin/wkhtmltopdf && \
    ln -s /usr/local/bin/wkhtmltoimage /usr/bin/wkhtmltoimage && \
    rm -rf /var/lib/apt/lists/*

# 验证安装
RUN wkhtmltopdf --version

EXPOSE 8080
CMD ["catalina.sh", "run"]

第一版

FROM ubuntu:20.04

ENV JAVA_HOME /usr/local/jdk1.8.0_441
ENV CATALINA_HOME /usr/local/tomcat
ENV PATH $PATH:$JAVA_HOME/bin:$CATALINA_HOME/bin

RUN apt-get update && \
    apt-get install -y wget && \
    rm -rf /var/lib/apt/lists/*

COPY jdk-8u441-linux-x64.tar.gz /tmp/
RUN tar -xzf /tmp/jdk-8u441-linux-x64.tar.gz -C /usr/local/ && \
    rm /tmp/jdk-8u441-linux-x64.tar.gz

RUN wget https://archive.apache.org/dist/tomcat/tomcat-9/v9.0.106/bin/apache-tomcat-9.0.106.tar.gz && \
    tar -xzf apache-tomcat-9.0.106.tar.gz -C /usr/local/ && \
    mv /usr/local/apache-tomcat-9.0.106 /usr/local/tomcat && \
    rm apache-tomcat-9.0.106.tar.gz

EXPOSE 8080
CMD ["catalina.sh", "run"]
0

评论 (0)

取消