logo
0
0
Login

🧠 ComfyUI 持久化开发环境

这是一个基于 Docker 的 ComfyUI 持久化开发环境,支持完整的开发工具链和数据持久化。

🏗️ 分阶段构建

本项目采用分阶段构建策略,每个阶段都有特定的功能:

  • V1: 基础环境构建 ✅ (已完成)
  • V2: 开发工具集成 ✅ (已完成)
  • V3: ComfyUI核心安装 ✅ (已完成)
  • V4: PyTorch和CUDA支持
  • V5: 持久化机制实现
  • V6: 脚本自动化
  • V7: 环境优化
  • V8: 高级功能集成(最新版本)

🚀 快速开始

启动 ComfyUI (推荐使用最新版本V3)

# 启动ComfyUI(推荐方式:只挂载数据目录) docker run -it --gpus all -p 8188:8188 \ -v $(pwd)/workspace/ComfyUI_data/custom_nodes:/workspace/ComfyUI/custom_nodes \ -v $(pwd)/workspace/ComfyUI_data/models:/workspace/ComfyUI/models \ -v $(pwd)/workspace/ComfyUI_data/output:/workspace/ComfyUI/output \ -v $(pwd)/workspace/ComfyUI_data/input:/workspace/ComfyUI/input \ -v $(pwd)/workspace/ComfyUI_data/workflows:/workspace/ComfyUI/workflows \ -v $(pwd)/workspace/Python_env:/workspace/Python_env \ docker.cnb.cool/like8522/comfyui_env_etherealheart:V3 /workspace/scripts/start_comfyui.sh

启动开发环境

docker run -it --gpus all -p 8080:8080 -v $(pwd)/workspace:/workspace docker.cnb.cool/like8522/comfyui_env_etherealheart:V3 code-server

📁 目录结构

  • /workspace/ComfyUI/ - ComfyUI 主体(镜像中,通过更新镜像更新)
  • /workspace/ComfyUI_data/ - ComfyUI 数据存储(持久化)
  • /workspace/Python_env/ - Python 虚拟环境(持久化)
  • /workspace/scripts/ - 辅助脚本

🛠️ 使用说明

  1. 首次启动会自动初始化环境
  2. 所有模型、插件、输出文件都存储在持久化目录中
  3. 包含完整的开发工具(VSCode、Git、Python等)
  4. 支持通过脚本管理环境

🔧 脚本工具

项目包含以下实用脚本:

  • /workspace/scripts/setup_env.sh - 环境初始化脚本
  • /workspace/scripts/start_comfyui.sh - ComfyUI启动脚本
  • /workspace/scripts/entrypoint.sh - 容器入口点脚本
  • /workspace/build_and_push.sh - 镜像构建和推送脚本

📦 构建和推送镜像

使用提供的脚本可以自动化构建和推送各个阶段的镜像:

# 构建并推送阶段3的镜像 ./build_and_push.sh 3 # 只构建阶段3的镜像,不推送 ./build_and_push.sh --no-push 3 # 查看帮助 ./build_and_push.sh --help

💾 持久化机制

采用程序与数据分离的策略:

  • ComfyUI程序代码保留在镜像中,通过更新镜像来更新程序
  • 用户数据(模型、插件、输出等)存储在容器内的持久化目录中
  • 容器重启时会自动重新创建软链接以保持数据访问
  • 推荐使用外部挂载方式来实现真正的数据持久化

📖 文档