From 4ca30bbe15497622e478f695a76d67a9d6883212 Mon Sep 17 00:00:00 2001 From: xieke Date: Sat, 6 Jun 2026 07:16:20 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E4=BB=A3=E7=A0=81=E5=AE=A1=E6=9F=A5?= =?UTF-8?q?=E4=BF=AE=E5=A4=8D=20-=20.env.docker=E6=8E=92=E9=99=A4=E3=80=81?= =?UTF-8?q?nginx/ssrf=E9=85=8D=E7=BD=AE=E6=96=87=E4=BB=B6=E3=80=81web?= =?UTF-8?q?=E7=AB=AF=E5=8F=A3=E3=80=81hybrid=E6=A3=80=E7=B4=A2=E3=80=81?= =?UTF-8?q?=E7=A4=BA=E4=BE=8B=E6=96=87=E6=A1=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitignore | 2 + docker/.env.docker | 32 ---------- docker/docker-compose.yml | 3 + docker/nginx/nginx.conf | 88 +++++++++++++++++++++++++++ docker/nginx/ssl/.gitkeep | 0 docker/ssrf-proxy/squid.conf.template | 38 ++++++++++++ dsl/app-config.yaml | 2 +- knowledge/sample-docs/IT支持FAQ.md | 48 +++++++++++++++ knowledge/sample-docs/公司简介.md | 30 +++++++++ knowledge/sample-docs/差旅管理制度.md | 57 +++++++++++++++++ knowledge/sample-docs/质量管理体系.md | 53 ++++++++++++++++ tasks.md | 2 +- 12 files changed, 321 insertions(+), 34 deletions(-) delete mode 100644 docker/.env.docker create mode 100644 docker/nginx/nginx.conf create mode 100644 docker/nginx/ssl/.gitkeep create mode 100644 docker/ssrf-proxy/squid.conf.template create mode 100644 knowledge/sample-docs/IT支持FAQ.md create mode 100644 knowledge/sample-docs/公司简介.md create mode 100644 knowledge/sample-docs/差旅管理制度.md create mode 100644 knowledge/sample-docs/质量管理体系.md diff --git a/.gitignore b/.gitignore index 2e824e4..7a953e6 100644 --- a/.gitignore +++ b/.gitignore @@ -1,8 +1,10 @@ # 环境变量(含密码和密钥) docker/.env +docker/.env.docker .env .env.local .env.*.local +.env.*.docker # Docker 数据卷 docker/data/ diff --git a/docker/.env.docker b/docker/.env.docker deleted file mode 100644 index 7d1cc00..0000000 --- a/docker/.env.docker +++ /dev/null @@ -1,32 +0,0 @@ -# ============================================================ -# Dify Docker 内部服务通信环境变量 -# 此文件由 docker-compose.yml 的 env_file 引用 -# 请勿提交到 Git,已在 .gitignore 中排除 -# ============================================================ - -# 内部服务间通信不需要修改以下值 -# DB/Redis 等地址使用 docker-compose 中的服务名 - -EDITION=SELF_HOSTED -CONF_GIT_SYNC_ENABLED=false - -# 知识库检索配置 -INDEXING_MAX_SEGMENTATION_TOKENS=500 -INDEXING_MAX_SEGMENTATION_CHUNKS_PER_FILE=10 -INDEXING_SEGMENTATION_SEPARATOR=['\n','\n\n',' ','。','!','?',';',';'] - -# 批量处理配置 -BATCH_PROCESSING_ENABLED=true - -# 多模态配置 -MULTIMODAL_ENABLED=true - -# 文件上传限制 -UPLOAD_FILE_SIZE_LIMIT=50 -UPLOAD_IMAGE_FILE_SIZE_LIMIT=20 - -# Celery 队列配置 -CELERY_QUEUES=dataset,generation,mail - -# 文档解析配置 -DOCUMENT_PARSERS=pdf,txt,md,csv,xlsx,pptx,docx diff --git a/docker/docker-compose.yml b/docker/docker-compose.yml index b55eb0a..b9c29a1 100644 --- a/docker/docker-compose.yml +++ b/docker/docker-compose.yml @@ -111,6 +111,9 @@ services: environment: - NEXT_PUBLIC_API_BASE_URL=${NEXT_PUBLIC_API_BASE_URL:-} - NEXT_PUBLIC_DEPLOY_ENV=${NEXT_PUBLIC_DEPLOY_ENV:-PRODUCTION} + # 不使用 Nginx 时可直接访问 Web(设置 WEB_PORT=3000 启用) + ports: + - "${WEB_PORT:-}" volumes: - web_config:/app/config depends_on: diff --git a/docker/nginx/nginx.conf b/docker/nginx/nginx.conf new file mode 100644 index 0000000..479a36c --- /dev/null +++ b/docker/nginx/nginx.conf @@ -0,0 +1,88 @@ +# Nginx 反向代理配置 +# 西安云美电子科技有限公司 - 企业知识库 + +upstream dify_api { + server api:5001; +} + +upstream dify_web { + server web:3000; +} + +server { + listen 80; + server_name _; + + # 请求体大小限制(文件上传) + client_max_body_size 50M; + + # API 请求 + location /console/api { + proxy_pass http://dify_api; + proxy_set_header Host $host; + proxy_set_header X-Real-IP $remote_addr; + proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; + proxy_set_header X-Forwarded-Proto $scheme; + + # WebSocket 支持 + proxy_http_version 1.1; + proxy_set_header Upgrade $http_upgrade; + proxy_set_header Connection "upgrade"; + } + + location /v1 { + proxy_pass http://dify_api; + proxy_set_header Host $host; + proxy_set_header X-Real-IP $remote_addr; + proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; + proxy_set_header X-Forwarded-Proto $scheme; + + # SSE 支持 + proxy_buffering off; + proxy_cache off; + proxy_read_timeout 300s; + } + + # 静态资源 + location /files { + proxy_pass http://dify_api; + proxy_set_header Host $host; + proxy_set_header X-Real-IP $remote_addr; + } + + location /elegant { + proxy_pass http://dify_api; + proxy_set_header Host $host; + } + + # Web 前端 + location / { + proxy_pass http://dify_web; + proxy_set_header Host $host; + proxy_set_header X-Real-IP $remote_addr; + proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; + proxy_set_header X-Forwarded-Proto $scheme; + } +} + +# HTTPS 配置(取消注释并配置 SSL 证书后启用) +# server { +# listen 443 ssl; +# server_name kb.xayunmei.com; +# +# ssl_certificate /etc/nginx/ssl/server.crt; +# ssl_certificate_key /etc/nginx/ssl/server.key; +# ssl_protocols TLSv1.2 TLSv1.3; +# ssl_ciphers HIGH:!aNULL:!MD5; +# +# client_max_body_size 50M; +# +# # 同上 location 配置... +# } + +# HTTP → HTTPS 重定向(启用 HTTPS 后取消注释) +# server { +# listen 80; +# server_name kb.xayunmei.com; +# return 301 https://$server_name$request_uri; +# } diff --git a/docker/nginx/ssl/.gitkeep b/docker/nginx/ssl/.gitkeep new file mode 100644 index 0000000..e69de29 diff --git a/docker/ssrf-proxy/squid.conf.template b/docker/ssrf-proxy/squid.conf.template new file mode 100644 index 0000000..fa14f7b --- /dev/null +++ b/docker/ssrf-proxy/squid.conf.template @@ -0,0 +1,38 @@ +# Squid SSRF Proxy 配置模板 +# 用于 Dify 的 HTTP 请求代理,防止 SSRF 攻击 + +# 端口 +http_port 3128 + +# 访问控制 +acl SSL_ports port 443 +acl Safe_ports port 80 +acl Safe_ports port 443 +acl Safe_ports port 1025-65535 +acl CONNECT method CONNECT + +# 拒绝非安全端口 +http_access deny !Safe_ports +http_access deny CONNECT !SSL_ports + +# 允许 Dify 内部服务访问 +acl dify_services src 172.16.0.0/12 192.168.0.0/16 10.0.0.0/8 +http_access allow dify_services + +# 拒绝其他所有访问 +http_access deny all + +# 不显示 Squid 版本 +httpd_suppress_version_string on + +# 日志格式 +access_log /var/log/squid/access.log squid +cache_log /var/log/squid/cache.log + +# 禁用缓存(仅作为代理使用) +cache deny all + +# 连接超时 +connect_timeout 30 seconds +read_timeout 60 seconds +request_timeout 60 seconds diff --git a/dsl/app-config.yaml b/dsl/app-config.yaml index 35e0a44..8186bd0 100644 --- a/dsl/app-config.yaml +++ b/dsl/app-config.yaml @@ -96,7 +96,7 @@ model_config: description: IT支持、行政事务、售后FAQ # 检索参数 - retrieval_model: vector # vector / keyword / hybrid + retrieval_model: hybrid # hybrid 混合检索(向量+全文)效果优于纯向量 top_k: 5 # 检索返回的文档段落数 score_threshold: 0.5 # 相关性分数阈值 reranking_model: "" # 预留重排序模型(可选) diff --git a/knowledge/sample-docs/IT支持FAQ.md b/knowledge/sample-docs/IT支持FAQ.md new file mode 100644 index 0000000..370e4bd --- /dev/null +++ b/knowledge/sample-docs/IT支持FAQ.md @@ -0,0 +1,48 @@ +# IT 支持 FAQ + +## 一、账号与登录 + +### Q1:忘记系统密码怎么办? + +A:请联系 IT 管理员重置密码。提供您的工号和姓名即可。 + +### Q2:VPN 如何连接? + +A: +1. 下载 VPN 客户端(联系 IT 获取安装包) +2. 安装并打开客户端 +3. 输入服务器地址(联系 IT 获取) +4. 输入公司邮箱和密码 +5. 点击连接 + +## 二、办公软件 + +### Q3:Office 办公软件如何安装? + +A:通过公司 OA 系统的"软件中心"下载安装,或联系 IT 管理员协助安装。 + +### Q4:打印机无法连接怎么办? + +A: +1. 检查打印机是否开机 +2. 检查网络连接是否正常 +3. 尝试重新添加打印机 +4. 如仍无法解决,联系 IT 管理员 + +## 三、网络问题 + +### Q5:WiFi 连不上怎么办? + +A: +1. 确认使用的是公司内部 WiFi(查看 SSID 列表) +2. 输入正确的密码 +3. 如提示 IP 冲突,尝试断开重连 +4. 多人同时无法连接时,联系 IT 管理员 + +### Q6:外网访问受限怎么办? + +A:公司内网对外部部分网站有访问限制。如需访问特定外部网站用于工作,请联系 IT 管理员申请白名单。 + +--- + +*本文档为示例文档,仅供知识库测试使用* diff --git a/knowledge/sample-docs/公司简介.md b/knowledge/sample-docs/公司简介.md new file mode 100644 index 0000000..4437ee0 --- /dev/null +++ b/knowledge/sample-docs/公司简介.md @@ -0,0 +1,30 @@ +# 西安云美电子科技有限公司简介 + +## 公司概况 + +西安云美电子科技有限公司(以下简称"云美电子")是一家专注于电子科技领域的高新技术企业,致力于为客户提供优质的电子产品和技术服务。 + +## 业务范围 + +1. 电子产品的研发、生产与销售 +2. 电子元器件的检测与计量服务 +3. 技术咨询服务 +4. 定制化电子解决方案 + +## 组织架构 + +- **总经理**:全面负责公司经营管理 +- **技术部**:负责产品研发和技术支持 +- **质量管理部**:负责质量体系运行和产品检测 +- **市场部**:负责市场推广和客户关系 +- **行政部**:负责公司日常行政事务 +- **财务部**:负责财务管理和成本控制 + +## 联系方式 + +- 地址:陕西省西安市 +- 企业邮箱:联系行政部获取 + +--- + +*本文档为示例文档,仅供知识库测试使用* diff --git a/knowledge/sample-docs/差旅管理制度.md b/knowledge/sample-docs/差旅管理制度.md new file mode 100644 index 0000000..d8d7fed --- /dev/null +++ b/knowledge/sample-docs/差旅管理制度.md @@ -0,0 +1,57 @@ +# 差旅管理制度 + +## 第一章 总则 + +### 第一条 目的 + +为规范公司员工差旅行为,合理控制差旅费用,特制定本制度。 + +### 第二条 适用范围 + +本制度适用于公司全体员工的因公出差活动。 + +## 第二章 差旅标准 + +### 第三条 交通标准 + +| 职级 | 交通方式 | 标准 | +|------|---------|------| +| 总经理 | 飞机商务舱/高铁一等座 | 据实报销 | +| 部门经理 | 飞机经济舱/高铁二等座 | 据实报销 | +| 普通员工 | 高铁二等座/长途汽车 | 据实报销 | + +### 第四条 住宿标准 + +| 城市类别 | 部门经理 | 普通员工 | +|----------|---------|---------| +| 一线城市(北上广深) | 500 元/晚 | 350 元/晚 | +| 省会城市 | 400 元/晚 | 300 元/晚 | +| 其他城市 | 300 元/晚 | 200 元/晚 | + +### 第五条 伙食补助 + +- 一线城市:100 元/天 +- 其他城市:80 元/天 + +## 第三章 报销流程 + +### 第六条 报销步骤 + +1. 出差前填写《出差申请单》,经部门经理审批 +2. 出差期间保留所有发票和行程单 +3. 出差后 5 个工作日内填写《差旅报销单》 +4. 附上发票、行程单等原始凭证 +5. 部门经理审核签字 +6. 财务部复核 +7. 总经理审批(金额超过 5000 元) +8. 财务部打款 + +### 第七条 注意事项 + +- 报销金额超出标准部分由个人承担 +- 未按规定提交发票的不予报销 +- 出差申请未提前审批的,费用自理 + +--- + +*本文档为示例文档,仅供知识库测试使用* diff --git a/knowledge/sample-docs/质量管理体系.md b/knowledge/sample-docs/质量管理体系.md new file mode 100644 index 0000000..f615481 --- /dev/null +++ b/knowledge/sample-docs/质量管理体系.md @@ -0,0 +1,53 @@ +# 质量管理体系概述 + +## 体系框架 + +云美电子依据 ISO 9001 标准建立了完整的质量管理体系(QMS),覆盖产品研发、采购、生产、检测全流程。 + +## 质量方针 + +"质量第一、客户至上、持续改进、追求卓越" + +## 质量目标 + +1. 产品出厂合格率 ≥ 99% +2. 客户投诉处理及时率 100% +3. 内部审核每年不少于 2 次 +4. 管理评审每年不少于 1 次 + +## 质量组织 + +- **质量负责人**:全面负责质量管理体系运行 +- **检测中心**:负责产品检测和计量校准 +- **质量审核组**:负责内部审核和管理评审 + +## 检测标准 + +### 常用检测标准 + +| 标准编号 | 标准名称 | 适用范围 | +|----------|---------|---------| +| GB/T 2828.1 | 计数抽样检验程序 | 进货检验、过程检验 | +| GB/T 699 | 优质碳素结构钢 | 原材料检验 | +| SJ/T 11147 | 电子元器件检测方法 | 电子元器件检测 | + +## 计量管理 + +### 计量器具分类 + +- **A 类**:关键计量器具,每年校准 1 次 +- **B 类**:一般计量器具,每两年校准 1 次 +- **C 类**:辅助计量器具,三年校准 1 次 + +### 校准流程 + +1. 编制年度校准计划 +2. 联系有资质的计量机构 +3. 送检或现场校准 +4. 取得校准证书 +5. 更新计量器具台账 +6. 贴置校准标签 + +--- + +*本文档为示例文档,仅供知识库测试使用* diff --git a/tasks.md b/tasks.md index 386cfd8..064651a 100644 --- a/tasks.md +++ b/tasks.md @@ -52,7 +52,7 @@ - [x] M6.1.2 编写 `docs/deployment-guide.md`(完整部署指南) - [x] M6.1.3 创建项目 README.md - [x] M6.1.4 整理最终目录结构,确保所有文件就绪 -- [ ] M6.1.5 创建最终 Tag(v1.0.0) +- [x] M6.1.5 创建最终 Tag(v1.0.0) ---