Files
docker-files/java_runtime
2026-01-23 15:17:00 +08:00
..
2026-01-23 15:17:00 +08:00
2026-01-22 16:17:14 +08:00

Java Runtime

多版本 Java 运行时环境,用于运行各类 Java 服务。

基础镜像

  • debian:latest

包含环境

组件 版本
JRE 8, 21 (Eclipse Temurin)
时区 Asia/Shanghai
字符集 UTF-8

JRE 路径

版本 路径
JRE 8 /usr/lib/jvm/temurin-8-jre-amd64
JRE 21 /usr/lib/jvm/temurin-21-jre-amd64

默认使用 JRE 21。

预装依赖

  • 网络工具: curl, openssh-client
  • 进程工具: procps, net-tools, iproute2
  • 字体支持: 文泉驿微米黑、文泉驿正黑、文鼎楷体、文鼎宋体
  • 图形库: libjpeg, libpng, libfreetype, fontconfig
  • 数据库客户端: libmariadb3, libpq5

构建

./rebuild.sh java_runtime

使用

运行 JAR 应用

# 使用默认 JRE 21
docker run --rm -v /path/to/app:/app timi/java_runtime:latest java -jar /app/app.jar

# 使用 JRE 8
docker run --rm -e JAVA_HOME=/usr/lib/jvm/temurin-8-jre-amd64 \
    -v /path/to/app:/app timi/java_runtime:latest \
    /usr/lib/jvm/temurin-8-jre-amd64/bin/java -jar /app/app.jar

作为基础镜像

FROM timi/java_runtime:latest

COPY target/app.jar /app/app.jar

ENTRYPOINT ["java", "-jar", "/app/app.jar"]

Docker Compose 示例

services:
  myapp:
    image: timi/java_runtime:latest
    volumes:
      - ./app.jar:/app/app.jar
    command: java -jar /app/app.jar
    environment:
      - TZ=Asia/Shanghai

环境变量

变量 默认值
JAVA_HOME /usr/lib/jvm/temurin-21-jre-amd64
JAVA8_HOME /usr/lib/jvm/temurin-8-jre-amd64
JAVA21_HOME /usr/lib/jvm/temurin-21-jre-amd64
TZ Asia/Shanghai
LANG C.UTF-8