
如果你使用 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://img.shields.io/docker/pulls/phygrid/cuda-onnx.svg](https://hub.docker.com/r/phygrid/cuda-onnx) https://img.shields.io/docker/v/phygrid/cuda-onnx?sort=semver](https://hub.docker.com/r/phygrid/cuda-onnx/tags) https://github.com/phygrid/cuda-onnx/workflows/Build%20and%20Deploy%20Docker%20Image/badge.svg](https://github.com/phygrid/cuda-onnx/actions) https://img.shields.io/github/license/phygrid/cuda-onnx](LICENSE)
这是一个针对ONNX Runtime推理优化的多架构Docker镜像,支持GPU加速,兼容Intel/AMD x64系统和ARM64 NVIDIA Jetson设备,基于Phygrid CUDA基础镜像构建。
bash# 拉取最新镜像 docker pull phygrid/cuda-onnx:latest # 在Dockerfile中作为基础镜像使用 FROM phygrid/cuda-onnx:1.0.0
基于phygrid/cuda-base:latest构建,包含:
/app/onnx_models和/app/onnx_cache仓库: https://hub.docker.com/r/phygrid/cuda-onnx
latest - 最新稳定版本1.0.0, 1.0.1等 - 特定语义版本linux/amd64, linux/arm64dockerfileFROM phygrid/cuda-onnx:1.0.0 # 复制ONNX模型 COPY models/ /app/onnx_models/ # 安装额外依赖 RUN pip install -r requirements.txt # 覆盖默认命令 CMD ["python", "inference_server.py"]
bash# 运行带GPU支持的交互式容器 docker run -it --rm \ --gpus all \ -v $(pwd):/app/workspace \ -v $(pwd)/models:/app/onnx_models \ -p 8000:8000 \ phygrid/cuda-onnx:latest \ bash
bash# 带GPU支持的Intel/AMD系统 docker run -d \ --name onnx-inference \ --gpus all \ -p 8000:8000 \ -v /data/models:/app/onnx_models \ -v /data/cache:/app/onnx_cache \ -e OMP_NUM_THREADS=8 \ phygrid/cuda-onnx:latest # NVIDIA Jetson设备 docker run -d \ --name onnx-inference \ --runtime nvidia \ --gpus all \ -p 8000:8000 \ -v /data/models:/app/onnx_models \ -v /data/cache:/app/onnx_cache \ -e OMP_NUM_THREADS=4 \ phygrid/cuda-onnx:latest
pythonimport onnxruntime as ort import numpy as np # 创建带GPU支持的推理会话 providers = ['CUDAExecutionProvider', 'CPUExecutionProvider'] session = ort.InferenceSession('/app/onnx_models/model.onnx', providers=providers) # 运行推理 input_data = np.random.randn(1, 3, 224, 224).astype(np.float32) result = session.run(None, {'input': input_data})
bash# 克隆仓库 git clone https://github.com/phygrid/cuda-onnx.git cd cuda-onnx # 构建镜像 docker build -t phygrid/cuda-onnx:custom . # 构建多架构镜像 docker buildx build --platform linux/amd64,linux/arm64 -t phygrid/cuda-onnx:custom .
本项目使用自动语义版本控制:
VERSION文件进行主版本/次版本更新v1.0.0)镜像包含全面的健康检查:
bash# 测试ONNX Runtime设置 docker run --rm phygrid/cuda-onnx:latest python /app/onnx_test.py # 预期输出: # ONNX Runtime version: 1.22.0 # Available providers: ['CUDAExecutionProvider', 'TensorrtExecutionProvider', 'CPUExecutionProvider'] # ✅ CUDA provider available for GPU inference # ✅ TensorRT provider available for optimized inference (ARM64 Jetson) # ✅ CPU provider available # ✅ GPU access test: OK # ONNX Runtime setup: OK
| 变量 | 默认值 | 描述 |
|---|---|---|
OMP_NUM_THREADS | 4 | OpenMP线程数 |
ONNX_NUM_THREADS | 4 | ONNX Runtime线程数 |
OPENBLAS_NUM_THREADS | 4 | OpenBLAS线程数 |
| 路径 | 用途 |
|---|---|
/app/onnx_models | ONNX模型存储 |
/app/onnx_cache | 运行时缓存目录 |
/app/data | 输入/输出数据 |
/app/logs | 应用日志 |
bash# 指定CUDA设备启用CUDA提供程序 export CUDA_VISIBLE_DEVICES=0 # 配置内存管理 export ORT_CUDA_MEMORY_LIMIT=4GB
bash# 根据CPU核心数调整线程数 export OMP_NUM_THREADS=$(nproc) export ONNX_NUM_THREADS=$(nproc)
我们欢迎贡献!请按以下步骤操作:
git checkout -b feature/amazing-feature)git commit -m 'Add amazing feature')git push origin feature/amazing-feature)bash# 克隆并设置 git clone https://github.com/phygrid/cuda-onnx.git cd cuda-onnx # 本地测试构建 docker build -t phygrid/cuda-onnx:test . docker run --rm phygrid/cuda-onnx:test python /app/onnx_test.py
本项目采用MIT许可 - 详见LICENSE文件。
镜像包含标准OCI标签:
dockerfileLABEL org.opencontainers.image.title="Phygrid CUDA ONNX" LABEL org.opencontainers.image.description="ONNX Runtime base image for efficient CPU/GPU inference" LABEL org.opencontainers.image.vendor="Phygrid" LABEL inference.engine="onnx" LABEL inference.runtime="onnxruntime-1.16.3"
您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。
来自真实用户的反馈,见证轩辕镜像的优质服务