logo
0
0
WeChat Login

ComfyUI Docker 部署方案

高效、可复用的 ComfyUI Docker 部署解决方案,支持 CPU 和 GPU 加速,完美适配 cnb.cool 云开发平台。

✨ 特性

  • 🚀 一键部署:使用 Docker Compose 快速启动 ComfyUI
  • ☁️ 云平台支持:专为 cnb.cool 优化的 GPU 环境配置
  • 🎯 多版本支持:CPU 版本、GPU 版本、轻量级 Alpine 版本
  • 💾 数据持久化:自动管理模型和输出文件
  • 性能优化:优化的镜像构建和运行时配置
  • 🔧 易于维护:完善的日志监控和健康检查
  • 📚 完整文档:详细的使用说明和故障排查指南

📦 文件说明

/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 云平台部署所需的文件

🚀 快速开始

前置要求

  • Docker 20.10+
  • Docker Compose 2.0+
  • 至少 8GB RAM(推荐 16GB+)
  • GPU 版本需要 NVIDIA GPU 和 nvidia-docker

🌟 方式一:cnb.cool 云平台部署(推荐用于 GPU)

# 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

CPU 版本

# 构建并启动 docker-compose up -d # 查看日志 docker-compose logs -f # 停止服务 docker-compose down

GPU 版本

# 构建并启动 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

方式三:使用 Makefile

# 查看所有可用命令 make help # 快速启动 CPU 版本 make quick # 快速启动 GPU 版本 make quick-gpu # 查看容器状态 make ps # 查看日志 make logs # 进入容器 make shell

🎯 访问 ComfyUI

启动成功后,在浏览器中访问:

http://localhost:8188

📊 版本对比

版本基础镜像大小GPU 支持适用场景
CPU 版本python:3.10-slim~6GB生产环境、稳定运行
GPU 版本nvidia/cuda:12.1.0-runtime~8GBGPU 加速、高性能需求
cnb.cool 版本nvidia/cuda:12.1.0-runtime~9GBcnb.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.cool 云平台命令

# 检查 .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 命令

# 构建镜像 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

GPU 版本无法使用 GPU

# 检查 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

📚 详细文档

  • CNB_QUICKSTART.md - cnb.cool 快速开始指南
  • CNB_DEPLOYMENT.md - cnb.cool 详细部署指南
  • DEPLOYMENT.md - 本地 Docker 部署指南,包括:
    • 详细的配置选项
    • 最佳实践
    • 故障排查
    • 性能优化
    • 生产环境部署建议

⚡ 性能优化建议

  1. 使用 GPU 版本:如果有 NVIDIA GPU,GPU 版本性能提升 10-100 倍
  2. 数据持久化:使用 Docker volumes 保存模型,避免重复下载
  3. 资源限制:合理设置 CPU 和内存限制
  4. 定期清理:使用 docker system prune 清理未使用的资源

🔒 安全建议

  1. 不要暴露到公网:除非配置了认证
  2. 使用 HTTPS:生产环境建议配置 SSL 证书
  3. 限制资源:设置合理的资源限制
  4. 定期更新:及时更新 ComfyUI 和依赖

🤝 贡献

欢迎提交 Issue 和 Pull Request!

📄 许可证

Apache 2.0 License

🔗 相关链接


注意:首次构建可能需要 10-30 分钟,具体时间取决于网络速度和机器性能。后续启动将在几秒内完成。