本站支持搜索的镜像仓库:Docker Hub、gcr.io、ghcr.io、quay.io、k8s.gcr.io、registry.gcr.io、elastic.co、mcr.microsoft.com
的容器化部署。
docker run、docker-compose 等)从 Docker Hub 拉取最新版本(默认标签为 latest,对应最新 LTS 版本):
docker pull noenv/openjdk:latest
如需指定 Java 版本,可使用版本标签(如 Java 17):
docker pull noenv/openjdk:17
查看所有可用标签:Docker Hub Tags
将本地 JAR 文件挂载到容器中并执行:
docker run -it --rm \ -v $(pwd)/my-app.jar:/app/app.jar \ noenv/openjdk:17 \ java -jar /app/app.jar
通过环境变量传递 JVM 参数(如内存配置):
docker run -d --name spring-app \ -p 8080:8080 \ -v $(pwd)/app.jar:/app.jar \ -e JAVA_OPTS="-Xms512m -Xmx1g -XX:+UseContainerSupport" \ noenv/openjdk:17 \ java $JAVA_OPTS -jar /app.jar
创建 docker-compose.yml 文件,定义服务配置:
version: '3.8' services: java-app: image: noenv/openjdk:17 container_name: java-app restart: always ports: - "8080:8080" volumes: - ./app:/app # 挂载应用代码或配置文件 - app-logs:/var/log/app # 持久化日志 environment: - JAVA_OPTS="-Xmx1g -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=/var/log/app/dump.hprof" - TZ=Asia/Shanghai # 设置时区 working_dir: /app command: java $JAVA_OPTS -jar app.jar volumes: app-logs: # 声明持久化卷
启动服务:
docker-compose up -d
| 环境变量 | 描述 | 默认值 | 示例 |
|---|---|---|---|
JAVA_HOME | Java 安装路径(只读,镜像内置) | /usr/lib/jvm/default-jvm | - |
JAVA_OPTS | 自定义 JVM 参数 | 空 | -Xms256m -Xmx512m -Duser.timezone=UTC |
WORKDIR | 容器工作目录 | / | /app |
USER | 运行应用的用户(用户名或 UID) | root | 1000(非 root 用户 UID) |
TZ | 系统时区 | UTC | Asia/Shanghai |
为增强安全性,指定非 root 用户运行应用(需确保挂载目录权限):
docker run -it --rm \ -v $(pwd)/app.jar:/app.jar \ -u 1000:1000 \ # UID:GID,需与宿主机目录权限匹配 noenv/openjdk:17 \ java -jar /app.jar
将 JVM 日志重定向到文件或标准输出:
docker run -d \ -e JAVA_OPTS="-XX:+PrintGCDetails -Xlog:gc*:file=/var/log/gc.log:time" \ -v $(pwd)/logs:/var/log \ noenv/openjdk:17 \ java $JAVA_OPTS -jar /app.jar
noenv/openjdk:8)。docker volume 或宿主机挂载持久化,避免容器删除后数据丢失。--memory、--cpus 参数限制容器资源,避免 JVM 内存溢出。docker scan 定期检查镜像漏洞。拉取最新版本(默认对应最新 LTS 版本):
docker pull noenv/openjdk:latest
指定 Java 版本(如 Java 17):
docker pull noenv/openjdk:17
查看所有可用标签:Docker Hub Tags
挂载本地 JAR 文件并执行:
docker run -it --rm \ -v $(pwd)/app.jar:/app/app.jar \ noenv/openjdk:17 \ java -jar /app/app.jar
通过环境变量传递内存配置等参数:
docker run -d --name java-service \ -p 8080:8080 \ -v $(pwd)/app.jar:/app.jar \ -e JAVA_OPTS="-Xms512m -Xmx1g -XX:+UseContainerSupport" \ noenv/openjdk:17 \ java $JAVA_OPTS -jar /app.jar
创建 docker-compose.yml 配置文件:
version: '3.8' services: java-app: image: noenv/openjdk:17 container_name: java-app restart: always ports: - "8080:8080" volumes: - ./app:/app # 挂载应用代码/配置 - app-logs:/var/log/app # 持久化日志 environment: - JAVA_OPTS="-Xmx1g -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=/var/log/app/dump.hprof" - TZ=Asia/Shanghai # 设置时区 working_dir: /app command: java $JAVA_OPTS -jar app.jar volumes: app-logs: # 声明持久化卷
启动服务:
docker-compose up -d
| 环境变量 | 描述 | 默认值 | 示例 |
|---|---|---|---|
JAVA_HOME | Java 安装路径(只读) | /usr/lib/jvm/default-jvm | - |
JAVA_OPTS | 自定义 JVM 参数 | 空 | -Xms256m -Xmx512m -Duser.timezone=UTC |
WORKDIR | 容器工作目录 | / | /app |
USER | 运行用户(UID/GID 或用户名) | root | 1000:1000(非 root 用户) |
TZ | 系统时区 | UTC | Asia/Shanghai |
noenv/openjdk:8)。docker volume 或宿主机挂载持久化。--memory、--cpus 参数限制容器资源,避免 JVM 内存溢出。-u 参数指定 UID/GID),降低权限风险。
免费版仅支持 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