本站支持搜索的镜像仓库:Docker Hub、gcr.io、ghcr.io、quay.io、k8s.gcr.io、registry.gcr.io、elastic.co、mcr.microsoft.com
bellsoft/liberica-openjdk-alpine 是基于 Alpine Linux 构建的 Liberica JDK Docker 镜像,采用 glibc 库而非 Alpine 默认的 musl。Liberica JDK 是由 BellSoft 开发的免费开源 Java 运行时,100% 兼容 Java SE 规范,通过 TCK 验证,适用于桌面、服务器、云环境及嵌入式场景。
本镜像结合了 Alpine Linux 的轻量级特性(基础镜像约 5MB)与 Liberica JDK 的兼容性,旨在提供最小化、高性能的 Java 容器环境,特别适合微服务部署和云原生应用。
-cds 标签的镜像预构建类数据共享(Class Data Sharing)归档,加速 JVM 启动。X-Y 或 X-cds-Y,其中 X 为 Java 版本,Y 为架构类型(如 aarch64)。若未指定架构,默认支持 amd64 和 ARM64。latest 指向最新版本;含 -cds 标签的镜像包含 CDS 归档。按 Java 版本分组:
latest-cds, latest, 25-cds, 2524-cds, 2423-cds, 2322, 22-cds21.0.8-cds, 21.0.8, 21.0.7-cds, 21.0.7, 21.0.6-cds, 21.0.6, 21.0.5-cds, 21.0.5, 21.0.4-cds, 21.0.4, 21.0.3-cds, 21.0.3, 21, 21-cds20191817.0.16-cds, 17.0.16, 17.0.15-cds, 17.0.15, 17.0.14-cds, 17.0.14, 17.0.13-cds, 17.0.13, 17.0.12, 17.0.12-cds, 17.0.11, 17.0.11-cds, 17, 17-cds16, 15, 14, 131211.0.28-cds, 11.0.28, 11.0.27-cds, 11.0.27, 11.0.26-cds, 11.0.26, 11.0.25-cds, 11.0.25, 11.0.24, 11.0.24-cds, 11.0.23, 11.0.23-cds, 11, 11-cds10.0.2, 10.0.1, 10(仅 armhf 架构)9.0.4, 9.0.1(仅 armhf 架构)8u462, 8u462-cds, 8u432, 8u432-cds, 8u422, 8u422-cds, 8u412, 8u412-cds, 8u392, 8u392-cds, 8u, 8u-cds, 8, 8-cds(仅 amd64 和 aarch64 架构)Dockerfile 支持以下构建参数,用于自定义镜像内容:
| 参数名 | 说明 | 默认值 |
|---|---|---|
LANG | 指定镜像的 locale(语言环境),取值参考 Locale 名称 | en_US.UTF-8 |
OPT_PKGS | 需安装的可选 Alpine 包,空格分隔(如 curl ttf-dejavu) | 空(不安装额外包) |
| 参数名 | 说明 | 默认值 |
|---|---|---|
LIBERICA_USE_LITE | 是否构建 Lite 版本(移除演示、示例和源码):0(保留完整 JDK),1(Lite 版本) | 1 |
| 参数名 | 说明 | 默认值 |
|---|---|---|
LIBERICA_IMAGE_VARIANT | 镜像变体:base(仅含 java.base 模块的 server VM)、base-minimal(java.base 模块的 minimal VM)、lite(精简 JDK)、standard(标准 JDK) | lite |
LIBERICA_VM | 包含的 VM 类型(仅对 lite 和 standard 变体生效):server、client、minimal、all(所有 VM) | server |
运行容器并验证 Java 版本:
docker run -it --rm bellsoft/liberica-openjdk-alpine:latest java -version
docker run -it --rm -v /path/to/your/app:/app bellsoft/liberica-openjdk-alpine:21 java -jar /app/MyApp.jar
创建 Dockerfile:
FROM bellsoft/liberica-openjdk-alpine:21 WORKDIR /app COPY target/MyApp.jar /app/ CMD ["java", "-jar", "MyApp.jar"]
构建并运行:
docker build -t my-java-app . docker run -it --rm my-java-app
创建 docker-compose.yml:
version: '3.8' services: app: image: bellsoft/liberica-openjdk-alpine:21 volumes: - ./target/MyApp.jar:/app/MyApp.jar command: java -jar /app/MyApp.jar ports: - "8080:8080"
启动服务:
docker-compose up
容器化部署中,若需进行离屏渲染(如生成文档、图片),JDK 需依赖系统字体和 fontconfig 库。缺少这些组件会导致类似以下异常:
Exception in thread "main" java.lang.InternalError: java.lang.reflect.InvocationTargetException ... Caused by: java.lang.NullPointerException at java.desktop/sun.awt.FontConfiguration.getVersion(FontConfiguration.java:1262)
安装 fontconfig 和字体包(如 ttf-dejavu):
docker run -it --rm bellsoft/liberica-openjdk-alpine:latest sh -c "apk add fontconfig ttf-dejavu && java -jar /app/MyApp.jar"
通过 OPT_PKGS 参数在构建镜像时预装依赖:
docker build -t my-app-with-fonts \ --build-arg OPT_PKGS="fontconfig ttf-dejavu" \ --build-arg LIBERICA_VERSION=21.0.8 \ .
Alpaquita Linux 是 BellSoft 推出的轻量级 Linux 发行版,作为 Alpine 的增强替代方案,提供:
Alpaquita 与 Liberica JDK 的容器化方案可在 bellsoft/liberica-runtime-container 获取。
免费版仅支持 Docker Hub 加速,不承诺可用性和速度;专业版支持更多镜像源,保证可用性和稳定速度,提供优先客服响应。
免费版仅支持 docker.io;专业版支持 docker.io、gcr.io、ghcr.io、registry.k8s.io、nvcr.io、quay.io、mcr.microsoft.com、docker.elastic.co 等。
当返回 402 Payment Required 错误时,表示流量已耗尽,需要充值流量包以恢复服务。
通常由 Docker 版本过低导致,需要升级到 20.x 或更高版本以支持 V2 协议。
先检查 Docker 版本,版本过低则升级;版本正常则验证镜像信息是否正确。
使用 docker tag 命令为镜像打上新标签,去掉域名前缀,使镜像名称更简洁。
探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式
通过 Docker 登录方式配置轩辕镜像加速服务,包含7个详细步骤
在 Linux 系统上配置轩辕镜像源,支持主流发行版
在 Docker Desktop 中配置轩辕镜像加速,适用于桌面系统
在 Docker Compose 中使用轩辕镜像加速,支持容器编排
在 k8s 中配置 containerd 使用轩辕镜像加速
在宝塔面板中配置轩辕镜像加速,提升服务器管理效率
在 Synology 群晖NAS系统中配置轩辕镜像加速
在飞牛fnOS系统中配置轩辕镜像加速
在极空间NAS中配置轩辕镜像加速
在爱快ikuai系统中配置轩辕镜像加速
在绿联NAS系统中配置轩辕镜像加速
在威联通NAS系统中配置轩辕镜像加速
在 Podman 中配置轩辕镜像加速,支持多系统
配置轩辕镜像加速9大主流镜像仓库,包含详细配置步骤
无需登录即可使用轩辕镜像加速服务,更加便捷高效
需要其他帮助?请查看我们的 常见问题 或 官方QQ群: 13763429