3.1 KiB
3.1 KiB
Dify 部署指南
西安云美电子科技有限公司 - 企业知识库
前置要求
| 项目 | 最低要求 | 推荐配置 |
|---|---|---|
| CPU | 4 核 | 8 核+ |
| 内存 | 8 GB | 16 GB+ |
| 磁盘 | 50 GB SSD | 100 GB+ SSD |
| Docker | ≥ 20.10 | 最新稳定版 |
| Docker Compose | ≥ 2.0 | 最新稳定版 |
| 操作系统 | Ubuntu 20.04+ | Ubuntu 22.04 LTS |
快速部署
1. 克隆项目
git clone http://git.xayunmei.com/yunmei/dify-app.git
cd dify-app
git checkout feature/dev
2. 配置环境变量
cd docker
cp .env.example .env
# 必须修改以下配置:
# - SECRET_KEY(安全密钥,用 openssl rand -hex 32 生成)
# - POSTGRES_PASSWORD(数据库密码)
# - REDIS_PASSWORD(Redis 密码)
# - DEEPSEEK_API_KEY(DeepSeek API 密钥)
3. 配置 Nginx(可选)
如果使用自定义域名,编辑 nginx/nginx.conf:
mkdir -p nginx
# 将 SSL 证书放入 nginx/ssl/ 目录
4. 启动服务
# 拉取镜像
docker compose pull
# 后台启动所有服务
docker compose up -d
# 查看服务状态
docker compose ps
# 查看日志
docker compose logs -f
5. 初始化
启动完成后,打开浏览器访问:
http://<服务器IP>:80
首次访问会要求设置管理员账号和密码。
服务端口说明
| 服务 | 容器端口 | 映射端口 | 说明 |
|---|---|---|---|
| Nginx | 80/443 | 80/443 | 主入口 |
| Dify API | 5001 | 内部 | API 服务 |
| Dify Web | 3000 | 内部 | 前端 |
| PostgreSQL | 5432 | 内部 | 数据库 |
| Redis | 6379 | 内部 | 缓存 |
| Qdrant | 6333 | 6333 | 向量数据库 |
常用命令
# 停止所有服务
docker compose down
# 停止并清除数据卷(危险!)
docker compose down -v
# 重启单个服务
docker compose restart api
docker compose restart worker
# 查看单个服务日志
docker compose logs -f api
docker compose logs -f worker
# 更新镜像
docker compose pull
docker compose up -d
备份与恢复
数据库备份
docker compose exec db pg_dump -U postgres dify > backup_$(date +%Y%m%d).sql
数据库恢复
docker compose exec -T db psql -U postgres dify < backup_20260606.sql
数据卷备份
docker run --rm -v dify-app_api_storage:/data -v $(pwd):/backup alpine tar czf /backup/api_storage_$(date +%Y%m%d).tar.gz -C /data .
故障排查
| 问题 | 排查方法 |
|---|---|
| 服务启动失败 | docker compose logs <service> |
| 数据库连接失败 | 检查 .env 中密码是否一致 |
| 知识库索引失败 | 检查 Worker 日志,确认 Celery 队列正常 |
| 模型调用失败 | 检查 DeepSeek API Key 是否有效 |
| 端口冲突 | 修改 .env 中对应端口号 |
安全注意事项
- SECRET_KEY 必须使用随机值,不要使用默认值
- 生产环境关闭 Qdrant 外部端口(注释掉 ports 映射)
- 定期更换数据库密码
- 配置 Nginx SSL 证书,不要在公网裸跑 HTTP
- .env 文件不要提交到 Git
最后更新: 2026-06-06