docker使用alpine构建jdk21镜像
1,Dockerfile
# 使用 Alpine Linux 作为基础镜像
FROM alpine:latest
# 设置语言环境变量为中文
ENV LANG=zh_CN.UTF-8
# 安装所需的软件包,包括中文字体和中文语言支持
RUN apk add --no-cache \
ttf-dejavu \
fontconfig \
tzdata \
openjdk21 \
&& \
cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime && \
echo "Asia/Shanghai" > /etc/timezone
# 设置 JAVA_HOME 环境变量
ENV JAVA_HOME=/usr/lib/jvm/default-jvm
2,构建镜像
docker build -t ejiyuan/openjdk:21-jdk-alpine .
得到了一个基于alpine包含jdk21的docker镜像,下面就可以使用了
3,使用
FROM ejiyuan/openjdk:21-jdk-alpine
VOLUME /data
ADD maven/oa-0.0.1-SNAPSHOT.war app.war
RUN sh -c 'touch /app.war'
ENV JAVA_OPTS=""
ENV spring.profiles.active="prod"
ENTRYPOINT ["java","-jar","/app.war"]