高效、可复用的 ComfyUI Docker 部署解决方案,支持 CPU 和 GPU 加速,完美适配 cnb.cool 云开发平台。
/workspace/ ├── .cnb.yml # cnb.cool 云平台配置文件 ⭐ ├── Dockerfile # CPU 版本(推荐) ├── Dockerfile.gpu # GPU 版本(需要 NVIDIA GPU) ├── Dockerfile.cnb # cnb.cool 专用 GPU 版本 ⭐ ├── Dockerfile.alpine # 轻量级 Alpine 版本 ├── docker-compose.yml # CPU 版本部署配置 ├── docker-compose.gpu.yml # GPU 版本部署配置 ├── requirements.txt # Python 依赖 ├── .dockerignore # Docker 构建排除文件 ├── Makefile # 快捷命令集合 ├── quick-start.sh # 一键启动脚本 ├── check-env.sh # 环境检查脚本 ├── .env.example # 环境变量模板 ├── README.md # 本文件 ├── DEPLOYMENT.md # 详细部署文档 ├── CNB_DEPLOYMENT.md # cnb.cool 部署指南 ⭐ └── CNB_QUICKSTART.md # cnb.cool 快速开始 ⭐
⭐ 标记的文件是 cnb.cool 云平台部署所需的文件
# 1. 确认项目包含 .cnb.yml 文件
cat .cnb.yml
# 2. 推送到 Git 仓库
git add .cnb.yml Dockerfile.cnb
git commit -m "Add cnb.cool GPU support"
git push
# 3. 在 cnb.cool 控制台中部署
# - 登录 cnb.cool
# - 选择你的项目
# - 点击"部署"
# - 选择 GPU 环境(tags: cnb:arch:amd64:gpu)
# 4. 访问服务
# 部署完成后会获得访问 URL
详细步骤请参考 CNB_QUICKSTART.md
# 赋予执行权限
chmod +x quick-start.sh
# 运行启动脚本
./quick-start.sh
脚本会自动检测 GPU 并选择合适的版本。
# 构建并启动
docker-compose up -d
# 查看日志
docker-compose logs -f
# 停止服务
docker-compose down
# 构建并启动
docker-compose -f docker-compose.gpu.yml up -d
# 查看日志
docker-compose -f docker-compose.gpu.yml logs -f
# 停止服务
docker-compose -f docker-compose.gpu.yml down
# 查看所有可用命令
make help
# 快速启动 CPU 版本
make quick
# 快速启动 GPU 版本
make quick-gpu
# 查看容器状态
make ps
# 查看日志
make logs
# 进入容器
make shell
启动成功后,在浏览器中访问:
http://localhost:8188
| 版本 | 基础镜像 | 大小 | GPU 支持 | 适用场景 |
|---|---|---|---|---|
| CPU 版本 | python:3.10-slim | ~6GB | ❌ | 生产环境、稳定运行 |
| GPU 版本 | nvidia/cuda:12.1.0-runtime | ~8GB | ✅ | GPU 加速、高性能需求 |
| cnb.cool 版本 | nvidia/cuda:12.1.0-runtime | ~9GB | ✅ | cnb.cool 云平台、GPU 部署 |
| Alpine 版本 | python:3.10-alpine | ~4GB | ❌ | 测试、资源受限环境 |
💡 推荐使用 cnb.cool 版本进行 GPU 部署,已针对 cnb.cool 平台优化
编辑 docker-compose.yml:
volumes:
- ./models:/app/ComfyUI/models:ro
ports:
- "9088:8188" # 使用 9088 端口
deploy:
resources:
limits:
cpus: '4'
memory: 8G
详细配置请参考 DEPLOYMENT.md。
# 检查 .cnb.yml 配置
cat .cnb.yml
# 验证 GPU 标签
grep "cnb:arch:amd64:gpu" .cnb.yml
# 本地测试构建(使用 cnb.cool Dockerfile)
docker build -f Dockerfile.cnb -t comfyui-cnb:test .
# 构建镜像
docker-compose build
# 启动容器
docker-compose up -d
# 查看日志
docker-compose logs -f
# 停止容器
docker-compose down
# 重启容器
docker-compose restart
# 进入容器
docker exec -it comfyui /bin/bash
# 查看容器状态
docker ps
# 查看详细日志
docker-compose logs -f
# 检查 Docker 状态
docker ps -a
# 检查 NVIDIA 驱动
nvidia-smi
# 测试 nvidia-docker
docker run --rm --gpus all nvidia/cuda:12.1.0-base-ubuntu22.04 nvidia-smi
# 检查端口占用
netstat -tulpn | grep 8188
# 或使用其他端口
docker-compose -f docker-compose.yml up -d
# 然后修改端口映射
更多故障排查方法请参考 DEPLOYMENT.md。
docker system prune 清理未使用的资源欢迎提交 Issue 和 Pull Request!
Apache 2.0 License
注意:首次构建可能需要 10-30 分钟,具体时间取决于网络速度和机器性能。后续启动将在几秒内完成。