Files
AIclinicalresearch/Dify完整部署方案.md

5.7 KiB
Raw Blame History

Dify 完整部署方案 - 网络优化版

日期: 2025-10-10
状态: 正在部署


🎯 当前情况

好消息:

  • Dify代码已完整下载
  • Docker镜像已开始下载
  • 部分镜像层已成功下载54e822d8ee0c Already exists

问题:

  • 网络不稳定出现EOF错误
  • 需要优化网络配置

🚀 推荐方案:配置镜像加速 + 持续重试

第一步立即配置Docker镜像加速器

这是关键步骤,可以大幅提升成功率!

操作步骤:

  1. 右键点击系统托盘的Docker Desktop图标🐋
  2. 选择 Settings (设置)
  3. 左侧菜单选择 Docker Engine
  4. 在JSON配置编辑器中找到现有配置
  5. 添加或修改 registry-mirrors 配置:
{
  "builder": {
    "gc": {
      "defaultKeepStorage": "20GB",
      "enabled": true
    }
  },
  "experimental": false,
  "registry-mirrors": [
    "https://docker.mirrors.ustc.edu.cn",
    "https://hub-mirror.c.163.com",
    "https://registry.docker-cn.com",
    "https://dockerproxy.com",
    "https://mirror.baidubce.com"
  ]
}
  1. 点击 Apply & restart (应用并重启)
  2. 等待Docker重启完成约30秒

第二步:重新拉取镜像

Docker重启后打开PowerShell并运行

# 进入Dify目录
cd D:\MyCursor\dify\docker

# 重新拉取镜像(这次应该会快很多)
docker compose pull

预计时间: 10-20分钟取决于网络速度


第三步启动Dify服务

镜像拉取完成后:

# 启动所有服务
docker compose up -d

# 等待服务启动约2-3分钟
Start-Sleep -Seconds 120

# 查看服务状态
docker compose ps

第四步:验证部署

  1. 检查容器状态
docker ps | findstr dify

应该看到以下容器运行中:

  • docker-api-1
  • docker-worker-1
  • docker-web-1
  • docker-nginx-1
  • docker-weaviate-1
  • docker-redis-1
  • docker-db-1
  1. 访问Dify界面
  1. 完成初始化
  • 创建管理员账号
  • 设置管理员密码
  • 获取API Key

🔄 备选方案:如果镜像加速器仍然失败

方案1逐个拉取镜像

cd D:\MyCursor\dify\docker

# 一次拉取一个服务的镜像
docker compose pull redis
docker compose pull db
docker compose pull nginx
docker compose pull weaviate
docker compose pull api
docker compose pull worker
docker compose pull web
docker compose pull sandbox

# 全部拉取完成后启动
docker compose up -d

方案2使用国内Dify镜像如果有

检查Dify是否提供国内镜像源。

方案3暂时跳过Dify部署

如果网络问题持续无法解决,可以:

  1. 先继续Day 6的前端开发
  2. 使用大模型API直接实现对话功能
  3. 等网络稳定或有VPN时再部署Dify
  4. 或者考虑使用其他RAG方案

📊 Dify完整架构说明

当Dify成功部署后它包含以下组件

服务 端口 说明
nginx 80 反向代理,统一入口
api 5001 Dify API服务
web 3000 Dify前端界面
worker - 后台任务处理
worker_beat - 定时任务调度
db (PostgreSQL) 5432 Dify数据库
redis 6379 缓存服务
weaviate 8080 向量数据库RAG核心
sandbox 8194 代码执行沙箱

🎯 快速命令参考

查看部署进度

cd D:\MyCursor\dify\docker
docker compose ps

查看容器日志

# 查看所有日志
docker compose logs

# 查看特定服务日志
docker compose logs api
docker compose logs web

重启服务

docker compose restart

停止服务

docker compose down

完全清理并重新部署

docker compose down -v  # -v 会删除数据卷
docker compose pull
docker compose up -d

部署成功检查清单

  • Docker镜像加速器已配置
  • 所有镜像拉取完成(无报错)
  • docker compose ps 显示所有容器 "Up"
  • 访问 http://localhost 可以打开Dify界面
  • 完成初始化,创建管理员账号
  • 获取Dify API Key
  • 测试创建知识库功能

🔧 常见问题排查

问题1端口冲突

症状提示端口80或5432已被占用

解决

# 查看端口占用
netstat -ano | findstr :80
netstat -ano | findstr :5432

# 停止AI Clinical的PostgreSQL如果冲突
cd D:\MyCursor\AIclinicalresearch
docker-compose down

问题2内存不足

症状容器启动失败提示OOM

解决

  • Docker Desktop → Settings → Resources
  • 增加Memory限制到至少8GB

问题3磁盘空间不足

症状镜像拉取失败提示no space left

解决

# 清理未使用的镜像
docker system prune -a

# 查看磁盘使用
docker system df

🎉 部署成功后的下一步

  1. 获取API Key

    • 登录Dify控制台
    • 进入设置 → API Keys
    • 创建新的API Key
    • 复制并保存到 backend/.envDIFY_API_KEY
  2. 创建测试知识库

    • 创建一个知识库
    • 上传1-2个测试PDF文件
    • 记录知识库ID
  3. 更新开发里程碑

    • 标记Day 4的Dify部署任务为完成
    • 更新文档
  4. 继续Day 6开发

    • 开始前端基础架构搭建
    • 集成Dify API

📞 需要帮助?

如果部署过程中遇到问题:

  1. 查看本文档的"常见问题排查"部分
  2. 查看容器日志:docker compose logs
  3. 查看Dify官方文档https://docs.dify.ai
  4. 告诉我具体的错误信息

💪 加油!配置镜像加速器后成功率会大大提升!