下载好jdk包
确保当前目录有 jdk-8u441-linux-aarch64.tar.gz
# 使用通用的 ARM64 基础镜像(推荐 alpine 或 debian,体积更小)
FROM arm64v8/ubuntu:20.04
# 或者如果你必须用 Kylin 用户态环境,可以从本地导入:
# FROM kylin:v10-sp2-arm64
# 设置环境变量
ENV JAVA_HOME /usr/local/jdk1.8.0_441
ENV CATALINA_HOME /usr/local/tomcat
ENV PATH $PATH:$JAVA_HOME/bin:$CATALINA_HOME/bin
# 安装必要工具(Ubuntu 用 apt,Kylin 用 yum)
RUN apt-get update && \
apt-get install -y wget tar && \
rm -rf /var/lib/apt/lists/*
# 复制 ARM64 版 JDK(必须匹配宿主架构!)
COPY jdk-8u441-linux-aarch64.tar.gz /tmp/
RUN tar -xzf /tmp/jdk-8u441-linux-aarch64.tar.gz -C /usr/local/ && \
rm /tmp/jdk-8u441-linux-aarch64.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 $CATALINA_HOME && \
rm apache-tomcat-9.0.106.tar.gz
# 安全加固:创建专用用户
RUN groupadd -r tomcat && \
useradd -r -g tomcat -d $CATALINA_HOME -s /bin/false tomcat && \
chown -R tomcat:tomcat $CATALINA_HOME
# 暴露端口
EXPOSE 8080
# 以非 root 用户运行
USER tomcat
WORKDIR $CATALINA_HOME
CMD ["catalina.sh", "run"]
构建镜像
docker build -t tomcat-arm64:9.0.106 .
评论 (0)