我们终于完成了ComfyUI唇同步服务的生产级部署,现在需要将成果保存并迁移。核心任务是:将Docker镜像和必要文件打包,解决E盘空间不足问题,并提供在新电脑上的恢复指南。考虑到你的E盘只剩5GB,而完整的Docker镜像可能超过20GB,必须直接使用F盘进行操作。

以下是经过验证的、可执行的保存与恢复方案。

1. 保存当前成果到F盘

由于Docker镜像体积庞大,我们将其导出为.tar文件,直接存放到空间充裕的F盘。同时将整个项目文件夹也备份过去。

在PowerShell中执行以下命令(请逐条复制执行):

# 进入G盘,创建备份目录
cd G:\
New-Item -ItemType Directory -Force -Path ".\Flower_AI_Backup"

# 将整个项目文件夹复制到F盘备份目录(确保包含data目录结构)
Copy-Item -Path "E:\My_Dream_2026_4_7\Flower_AI\*" -Destination "G:\Flower_AI_Backup\" -Recurse -Force

# 导出Docker镜像到F盘(此步骤耗时较长,取决于镜像大小,通常在5-10分钟)
docker save -o G:\Flower_AI_Backup\flower-ai-comfy-lipsync.tar flower-ai/comfy-lipsync:latest
docker save -o G:\Flower_AI_Backup\flower-ai-comfy-chattts.tar flower-ai/comfy-chattts:latest
docker save -o G:\Flower_AI_Backup\flower-ai-ollama.tar ollama/ollama:latest
docker save -o G:\Flower_AI_Backup\flower-ai-cosyvoice.tar flower-ai/cosyvoice:latest

# 备份docker-compose配置(已包含在上面的项目复制中,此步骤可选)
# Copy-Item "E:\My_Dream_2026_4_7\Flower_AI\docker-compose.yml" -Destination "F:\Flower_AI_Backup\"

执行后检查F盘,确保以下内容存在:

  • F:\Flower_AI_Backup\flower-ai-comfy-lipsync.tar (镜像文件,大约15-25GB)

  • F:\Flower_AI_Backup\ 目录下包含完整的项目文件(Dockerfile、docker-compose.yml、data目录结构等)

2. 在新电脑上恢复环境

假设新电脑的D盘有足够空间,我们将项目恢复到D:\Flower_AI。确保新电脑已安装Docker Desktop、NVIDIA驱动(>=555.xx)并启用WSL2。

步骤一:准备项目目录

在新电脑上创建项目目录(以D盘为例)

New-Item -ItemType Directory -Force -Path "D:\Flower_AI"

# 将备份的项目文件(除.tar外)复制到新目录
# 你可以通过U盘或网络传输F:\Flower_AI_Backup内的所有非.tar文件到新电脑的D:\Flower_AI
# 假设你已将备份文件夹整个复制到D:\Flower_AI_Backup
Copy-Item -Path "D:\Flower_AI_Backup\*" -Destination "D:\Flower_AI\" -Exclude "*.tar" -Recurse -Force

步骤二:导入Docker镜像

# 导入之前导出的镜像
docker load -i D:\Flower_AI_Backup\flower-ai-comfy-lipsync.tar

步骤三:检查模型文件

由于镜像不包含模型文件(我们遵循了"模型挂载"原则),你需要确保D:\Flower_AI\data\models目录下有之前下载的所有模型文件。建议将原电脑E:\My_Dream_2026_4_7\Flower_AI\data\models整个目录复制到新电脑的对应位置。

步骤四:创建必要目录并启动

cd D:\Flower_AI


# 创建运行时需要的可写目录(如果复制时未包含空目录)
New-Item -ItemType Directory -Force -Path ".\data\models\reactor", ".\data\models\facedetection", ".\data\output\lipsync", ".\data\workflows"

# 启动服务
docker compose up -d comfy-lipsync

3. 关于E盘空间不足的处理

现在你的E盘只剩5GB,建议立即清理以维持系统稳定:

# 清理Docker构建缓存(通常能释放数GB空间)
docker builder prune -a -f

# 清理未使用的镜像、容器、网络
docker system prune -a -f

# 删除项目中原有的ComfyUI源码备份(如果有的话),镜像已包含一切
# 但不要删除data/models目录!

4. 验证新环境是否正常

启动后检查日志,确认所有自定义节点加载成功:

docker compose logs -f comfy-lipsync | Select-String -Pattern "Wav2Lip|ReActor|VideoHelper|ERROR|OSError"

如果没有任何OSError或ModuleNotFoundError,即表示恢复成功。

📝 关键要点说明

  • 镜像体积:导出的.tar文件较大,传输时请使用高速U盘或局域网共享。

  • 模型文件:模型与镜像分离,这是最佳实践。你需确保模型目录结构完整复制。

  • 科学上网:新电脑首次启动时,ReActor可能仍需下载facedetection模型,建议开启代理。

至此,你的AI视频生成系统已具备高度可移植性,未来迁移只需关注模型数据和镜像文件即可。

确保在清理构建缓存或镜像时不影响已运行的服务。核心原则是只删除与comfy-cosyvoice相关的构建缓存和中间镜像,保留flower-deepseek-local和comfy-lipsync的镜像与容器。

精准清理策略
只停止和删除comfy-cosyvoice容器和镜像(如果存在)

清理悬挂的构建缓存(不影响已用镜像层)

使用docker compose针对单服务操作

具体命令(按顺序执行)

cd E:\My_Dream_2026_4_7\Flower_AI

# 1. 停止并删除comfy-cosyvoice容器(如果正在运行)
docker compose stop comfy-cosyvoice
docker compose rm -f comfy-cosyvoice

# 2. 删除comfy-cosyvoice镜像(只删该镜像,不影响其他)
docker rmi flower-ai/comfy-cosyvoice:latest 2>$null

# 3. 清理构建缓存(只删未使用的构建缓存,不会动已运行容器的镜像层)
docker builder prune -f

# 4. 可选:清理所有悬空镜像(<none>:<none>),这些通常是构建失败的残留
docker image prune -f

安全构建命令

只构建comfy-cosyvoice,不影响其他服务:

docker compose build --no-cache comfy-cosyvoice

如果构建失败需要再次尝试,重复步骤1-3,然后重新构建即可。

验证其他服务未受影响

docker compose ps
docker images | findstr flower-ai

输出应显示 comfy-lipsync 和 flower-deepseek-local 容器状态为 Up,且它们的镜像标签完好。

重要提醒
绝对不要执行 docker system prune -a 或 docker image prune -a,这会删除所有未被容器使用的镜像,包括可能暂时停止的服务的镜像。

如需释放更大空间,建议单独清理 data/output/lipsync 下的旧视频文件,它们与Docker无关。

现在可以放心地反复尝试构建comfy-cosyvoice,而不会影响核心服务的稳定性。

更多推荐