
如果你使用 DeepSeek、元宝 AI、Copilot、ChatGPT 等 AI 工具,协助配置轩辕镜像、编写 docker pull 命令、修改 Docker Compose 镜像地址、配置镜像加速、排查镜像拉取失败、分析报错日志等问题,请先让 AI 阅读并遵守轩辕镜像的规则文档。
只需在 AI 对话中先发送下面这句话即可:
请先完整阅读并严格遵守以下文档中的全部规则与要求:
https://xuanyuan.cloud/agents.md
在未充分阅读并理解该文档前,不要生成任何命令、配置、修改建议、故障排查方案或技术回答。后续所有输出都必须严格以该文档中的规范为最高优先级执行。查看 agents.md 用法指南与完整示范。国内用户首推 元宝 AI、DeepSeek 的深度思考模式,不推荐豆包 AI;Cursor 等编辑器可在对话 @ 该链接,或加入 User Rules。 若 AI 无法访问外链,可 打开说明文档 复制全文粘贴。文档会随站点更新,复制内容可能过期,建议定期检查。
问题反馈地址:
https://github.com/wojiushixiaobai/docker-library-loong64/issues?q=
支持的架构:(https://github.com/docker-library/official-images#architectures-other-than-amd64)
amd64, arm64, loong64
描述来源:
https://github.com/docker-library/docs/tree/master/openjdk (https://github.com/docker-library/docs/commits/master/openjdk)
OpenJDK(Open Java Development Kit)是 Java 平台标准版(Java SE)的免费开源实现。自版本 7 起,OpenJDK 成为 Java SE 的官方参考实现。
***.org/wiki/OpenJDK
Java 是 Oracle 及其关联公司的注册商标。
!https://raw.githubusercontent.com/docker-library/docs/a3439b66b7980d1811f6b3835a3c541747172970/openjdk/logo.png
使用此镜像最直接的方式是将 Java 容器同时用作构建和运行环境。在 Dockerfile 中,可按以下方式编写以编译和运行项目:
dockerfileFROM jumpserver/openjdk:11-slim-buster COPY . /usr/src/myapp WORKDIR /usr/src/myapp RUN javac Main.java CMD ["java", "Main"]
然后构建并运行 Docker 镜像:
bash$ docker build -t my-java-app . $ docker run -it --rm --name my-running-app my-java-app
有时可能不适合在容器内运行应用,仅需编译。可通过以下命令在 Docker 实例内编译(但不运行)应用:
bash$ docker run --rm -v "$PWD":/usr/src/myapp -w /usr/src/myapp openjdk:11-slim-buster javac Main.java
此命令会将当前目录作为卷挂载到容器,设置工作目录为该卷,并执行 javac Main.java 命令,编译 Main.java 并输出 Main.class 文件。
JVM 启动时会尝试检测可用 CPU 核心数和内存,以调整内部参数(如垃圾回收线程数)。当容器运行时限制了 CPU/内存,JVM 使用的标准系统 API 可能返回主机级别的值,导致旧版 JVM 出现 CPU 过度使用或内存分配错误。
在 Linux 容器中,OpenJDK 8 及更高版本可正确检测容器限制的 CPU 核心数和可用内存,且默认启用此功能。
在 Windows Server(非 Hyper-V)容器中,CPU 核心数限制不生效(被主机计算服务忽略)。需手动设置限制,启动 JVM 命令如下:
bash$ start /b /wait /affinity 0x3 path/to/java.exe ...
示例中,CPU 亲和性十六进制掩码 0x3 将 JVM 限制为 2 个 CPU 核心。
Windows Server 容器支持内存限制,但 JVM 目前无法检测。为防止过度内存分配,需指定 -XX:MaxRAM=... 选项,其值不超过容器内存限制。
部分 shell(特别是 Alpine Linux 中包含的 https://github.com/docker-library/openjdk/issues/135%EF%BC%89%E4%B8%8D%E6%94%AF%E6%8C%81%E5%90%8D%E7%A7%B0%E5%90%AB%E5%8F%A5%E7%82%B9%E7%9A%84%E7%8E%AF%E5%A2%83%E5%8F%98%E9%87%8F%EF%BC%88%E6%8A%80%E6%9C%AF%E4%B8%8A%E4%B8%8D%E7%AC%A6%E5%90%88 POSIX 标准),会剥离此类变量(而 Bash 会保留)。若应用需要此类环境变量,可直接使用 CMD ["java", ...](不通过 shell),或显式安装并使用 Bash 而非 /bin/sh。
jumpserver/openjdk 镜像有多种版本,适用于不同场景。
这是默认镜像。若不确定需求,建议使用此版本。它既可作为临时容器(挂载源代码并启动容器运行应用),也可作为构建其他镜像的基础。
部分标签可能包含 bookworm 或 bullseye 等名称,这些是 Debian 的发行版代号,指示镜像基于哪个 Debian 版本。若需在镜像中安装额外软件包,建议明确指定 Debian 版本,以减少 Debian 新版本发布时的中断。
查看此镜像包含软件的 许可证信息。
与所有 Docker 镜像一样,此镜像可能包含其他软件,这些软件可能采用其他许可证(如基础发行版中的 Bash 等,以及主要软件的直接或间接依赖)。
部分可自动检测的额外许可证信息可在 https://github.com/docker-library/repo-info/tree/master/repos/openjdk 中找到。
对于任何预构建镜像的使用,镜像用户有责任确保对镜像中所有软件的使用符合相关许可证要求。
以下是 jumpserver/openjdk 相关的常用 Docker 镜像,适用于 不同场景 等不同场景:
您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。


来自真实用户的反馈,见证轩辕镜像的优质服务