西安云美电子科技有限公司 - 企业知识库 版本:v1.0 | 创建时间:2026-06-06
┌─────────────────────┐
│ 用户 (浏览器) │
└──────────┬──────────┘
│
┌──────────▼──────────┐
│ Nginx (反向代理) │ :80 / :443
│ SSL 终止 / 负载均衡 │
└──────────┬──────────┘
│
┌───────────────┼───────────────┐
│ │ │
┌──────▼──────┐ ┌─────▼─────┐ ┌──────▼──────┐
│ Dify Web │ │ Dify API │ │ SSRF Proxy │
│ (React SPA) │ │ (Flask) │ │ (Squid) │
│ :3000 │ │ :5001 │ │ :3128 │
└─────────────┘ └─────┬─────┘ └─────────────┘
│
┌────────────┼────────────┐
│ │ │
┌──────▼──────┐ ┌──▼────┐ ┌─────▼──────┐
│ PostgreSQL │ │ Redis │ │ Qdrant │
│ :5432 │ │ :6379 │ │ :6333 │
└─────────────┘ └───────┘ └────────────┘
# 更新系统
sudo apt update && sudo apt upgrade -y
# 安装 Docker
curl -fsSL https://get.docker.com | sh
# 安装 Docker Compose(如未自带)
sudo apt install docker-compose-plugin -y
# 验证安装
docker --version
docker compose version
# 将当前用户加入 docker 组
sudo usermod -aG docker $USER
# 重新登录生效
git clone http://git.xayunmei.com/yunmei/dify-app.git
cd dify-app
git checkout feature/dev
cd docker
# 复制模板
cp .env.example .env
# 生成 SECRET_KEY
SECRET_KEY=$(openssl rand -hex 32)
echo "生成的 SECRET_KEY: $SECRET_KEY"
# 编辑 .env,填入实际值
nano .env
必须修改的配置项:
| 变量 | 说明 | 操作 |
|---|---|---|
SECRET_KEY |
安全密钥 | 使用上面生成的值 |
POSTGRES_PASSWORD |
数据库密码 | 设置强密码 |
REDIS_PASSWORD |
Redis 密码 | 设置强密码 |
DEEPSEEK_API_KEY |
DeepSeek API Key | 从 DeepSeek 平台获取 |
# 拉取镜像
docker compose pull
# 启动所有服务
docker compose up -d
# 查看状态
docker compose ps
# 等待所有服务健康(约 30-60 秒)
docker compose ps --format "table {{.Name}}\t{{.Status}}"
# 检查 API 服务
curl http://localhost:5001/health
# 检查 Web 服务
curl -I http://localhost:80
http://<服务器IP>:80https://api.deepseek.com按 docs/knowledge-base-structure.md 中的结构创建知识库:
| 知识库名称 | 说明 |
|---|---|
| KB-COMP-公司概况 | 公司简介、组织架构 |
| KB-PROD-产品技术 | 产品手册、技术规范 |
| KB-QUAL-质量管理 | 质量体系、检测标准 |
| KB-RULE-制度流程 | 管理制度、审批流程 |
| KB-TRAIN-培训学习 | 培训材料 |
| KB-PROJ-项目档案 | 项目文档 |
| KB-FAQ-常见问题 | FAQ |
每个知识库的分段配置:
dsl/app-config.yamldsl/app-config.yaml 中的参数)复制 prompts/system-prompt.md 中的系统提示词到应用配置。
在应用的「知识库」设置中,关联已创建的所有知识库。
复制 prompts/system-prompt.md 中的推荐问题到应用配置。
使用 Dify 内置的调试界面进行测试:
测试问题1:公司的组织架构是怎样的?
测试问题2:差旅报销的标准和流程是什么?
测试问题3:质量管理体系审核周期是多久?
对照 tests/test-cases.md 执行完整测试。
参考 docs/api-integration.md 中的企业微信集成示例。
# 将 SSL 证书放入 nginx/ssl/ 目录
mkdir -p nginx/ssl
# 编辑 Nginx 配置,启用 HTTPS
# 修改 .env 中的 NGINX_SSL_PORT
# 数据库备份(建议设置 cron 每日执行)
docker compose exec db pg_dump -U postgres dify > /backup/dify_$(date +%Y%m%d).sql
# 向量库备份
docker compose exec qdrant curl -X POST http://localhost:6333/snapshots
cd docker
docker compose pull
docker compose up -d
# 查看服务状态
docker compose ps
# 查看日志
docker compose logs -f --tail=100 api
docker compose logs -f --tail=100 worker
# 查看资源占用
docker stats --no-stream
| 现象 | 排查命令 | 常见原因 |
|---|---|---|
| 页面打不开 | docker compose ps |
服务未启动 |
| 模型不回复 | docker compose logs api |
API Key 无效/过期 |
| 知识库不检索 | docker compose logs worker |
Worker 异常/索引未完成 |
| 数据库连接失败 | docker compose logs db |
密码不一致 |
| 磁盘空间不足 | df -h |
日志/数据膨胀 |
最后更新: 2026-06-06