# Java Runtime Image # 多版本 JRE 运行时环境,用于运行各种 Java 服务 FROM debian:latest LABEL maintainer="www.imyeyu.com" LABEL description="Java Runtime with JRE 8/21 for running Java services" # 环境变量 ENV LANG=C.UTF-8 \ LC_ALL=C.UTF-8 \ TZ=Asia/Shanghai # JRE 路径 ENV JAVA8_HOME=/usr/lib/jvm/temurin-8-jre-amd64 \ JAVA21_HOME=/usr/lib/jvm/temurin-21-jre-amd64 # 默认使用 JRE 21 ENV JAVA_HOME=${JAVA21_HOME} \ PATH="${JAVA21_HOME}/bin:${PATH}" # 安装依赖和 JRE RUN apt-get update \ && apt-get install -y --no-install-recommends \ # 基础工具 ca-certificates \ curl \ gnupg \ # 用户指定依赖 openssh-client \ libncurses6 \ libncursesw6 \ perl-base \ perl \ libfreetype6 \ fontconfig \ fonts-wqy-microhei \ fonts-wqy-zenhei \ fonts-arphic-ukai \ fonts-arphic-uming \ # Java 服务运行常用依赖 procps \ net-tools \ iproute2 \ tzdata \ locales \ # 图形处理 libjpeg62-turbo \ libpng16-16 \ # 数据库客户端库 libmariadb3 \ libpq5 \ # 添加 Adoptium 仓库 && curl -fsSL https://packages.adoptium.net/artifactory/api/gpg/key/public | gpg --dearmor -o /usr/share/keyrings/adoptium.gpg \ && echo "deb [signed-by=/usr/share/keyrings/adoptium.gpg] https://packages.adoptium.net/artifactory/deb bookworm main" > /etc/apt/sources.list.d/adoptium.list \ && apt-get update \ && apt-get install -y --no-install-recommends \ temurin-8-jre \ temurin-21-jre \ # 配置时区 && ln -snf /usr/share/zoneinfo/${TZ} /etc/localtime && echo ${TZ} > /etc/timezone \ # 清理 && rm -rf /var/lib/apt/lists/* WORKDIR /root/bin CMD ["java", "-version"]