Dify 插件下载加速与超时配置指南

Dify 插件下载加速与超时配置指南

目标

  • 解决在内地网络环境下 Dify 安装插件时下载缓慢的问题。

  • 防止因网络波动导致插件安装超时失败。

前置条件

  • 已通过 Docker Compose 部署 Dify,并知道 docker-compose.yml 所在目录。

  • 终端已进入该目录(如 cd /opt/dify/docker)。

  • 具备基础的文本编辑能力(如使用 nano 或 vim)。


一、配置国内 PyPI 镜像源(提升下载速度)

1. 修改 .env 文件(设置主镜像源)

在 docker-compose.yml 同级目录下,打开 .env 文件(若不存在则新建):

复制代码
nano .env

添加或修改以下行:

ini

复制代码
PIP_MIRROR_URL=https://pypi.tuna.tsinghua.edu.cn/simple

可选内网源(若服务器在云上,建议替换以获得极致速度):

  • 阿里云:http://mirrors.cloud.aliyuncs.com/pypi/simple/

  • 腾讯云:http://mirrors.cloud.tencent.com/pypi/simple/

2. 修改 docker-compose.yml(添加备用镜像源)

默认配置中没有 PIP_EXTRA_INDEX_URL 变量,需手动添加。

打开 docker-compose.yml:

bash

复制代码
nano docker-compose.yml

找到 plugin_daemon 服务的 environment 段落,在 PIP_MIRROR_URL 行之后添加一行:

yaml

复制代码
PIP_EXTRA_INDEX_URL: "https://mirrors.aliyun.com/pypi/simple/ https://pypi.mirrors.ustc.edu.cn/simple/"

确保缩进与其它环境变量一致,例如:

yaml

复制代码
  plugin_daemon:
    ...
    environment:
      ...
      PIP_MIRROR_URL: ${PIP_MIRROR_URL:-}
      PIP_EXTRA_INDEX_URL: "https://mirrors.aliyun.com/pypi/simple/ https://pypi.mirrors.ustc.edu.cn/simple/"
      PLUGIN_STORAGE_TYPE: ${PLUGIN_STORAGE_TYPE:-local}
      ...

保存并退出。


二、延长插件安装的超时时间(防止超时失败)

1. 修改 .env 文件

打开 .env 文件(同上),添加或修改以下两行(单位:秒):

ini

复制代码
PLUGIN_PYTHON_ENV_INIT_TIMEOUT=720
PLUGIN_MAX_EXECUTION_TIMEOUT=1800
  • PLUGIN_PYTHON_ENV_INIT_TIMEOUT:默认 120 秒,延长至 720 秒(12 分钟)。

  • PLUGIN_MAX_EXECUTION_TIMEOUT:默认 600 秒,延长至 1800 秒(30 分钟)。

说明 :如果 .env 中已有同名变量,直接修改数值即可。

2. 备选方案(直接写入 docker-compose.yml)

如果你更习惯直接在 Compose 文件中指定,也可以在 plugin_daemon.environment 中硬编码:

yaml

复制代码
PYTHON_ENV_INIT_TIMEOUT: 720
PLUGIN_MAX_EXECUTION_TIMEOUT: 1800

若不这样做,上面的 .env 方式已自动生效(因为原始配置中已经通过 ${...} 引用了这些变量)。


三、重启 Dify 使配置生效

在 docker-compose.yml 所在目录执行:

bash

复制代码
docker compose down
docker compose up -d

等待容器重新启动完成。


四、验证配置(可选)

进入 plugin_daemon 容器检查环境变量是否生效:

bash

复制代码
docker exec -it docker-plugin_daemon-1 env | grep -E 'PIP|TIMEOUT'

预期输出类似:

text

复制代码
PIP_MIRROR_URL=https://pypi.tuna.tsinghua.edu.cn/simple
PIP_EXTRA_INDEX_URL=https://mirrors.aliyun.com/pypi/simple/ https://pypi.mirrors.ustc.edu.cn/simple/
PYTHON_ENV_INIT_TIMEOUT=720
PLUGIN_MAX_EXECUTION_TIMEOUT=1800

五、补充建议

  • 多源容错:以上配置了一个主源和两个备用源,当主源不可用时会自动尝试备用源,兼顾速度与稳定性。

  • 云主机优化:如果服务器在阿里云或腾讯云,将主源换成相应的内网地址可进一步提速并节省公网流量。

  • 极端情况 :若网络环境仍无法正常下载,可考虑使用离线 .difypkg 包方式安装插件(需另外操作)。

完成以上配置后,重新安装插件即可享受国内镜像的下载速度,且不会因网络慢而轻易超时。

相关推荐
小蒋观天下2 天前
【无标题】红外补光近距过曝、远距欠曝:导致车牌AI识别失效调试
人工智能·深度学习·数码相机·算法·机器学习·ai大模型
四六的六6 天前
一次改回去越界的沙箱复盘:配置恢复了,token 还活着,检测器漏了最关键的那条
人工智能·openai·agent·个人开发·ai编程·ai大模型·ai产品
小蒋观天下11 天前
厂区人员徘徊游荡判别——基于时序轨迹速度的逗留行为分级算法落地
大数据·人工智能·深度学习·算法·机器学习·ai大模型
小蒋观天下13 天前
【安防AI工程实战二】AI摄像头帧率抖动根治:ISP曝光时序与AI推理时序冲突深度定位
人工智能·深度学习·算法·安全·机器学习·ai大模型
for_ever_love__14 天前
LangChain MultiVectorRetriever:一个文档存多个向量
人工智能·python·自然语言处理·langchain·ai大模型·多向量·摘要检索
UBIX泛联16 天前
MLPerf 训练 Checkpoint 评测|泛联 UbiPower 18000,大参数模型读写带宽双登顶
ai大模型·mlperf storage·checkpoint 评测
小蒋观天下17 天前
专项方案:大场景港口AI安防、多干扰环境下的算法调优与落地实操
人工智能·深度学习·算法·安全·机器学习·计算机视觉·ai大模型
做个文艺程序员17 天前
MinIO第07篇:基于MinIO + Spring AI + pgvector构建RAG知识库(Java全栈实战)
minio·向量数据库·ai大模型·rag·springai·pgvector
四六的六17 天前
GPT-6 会自己画界面了:从写页面到定规则,前端在 Intelligent UI 时代的新活法
人工智能·个人开发·ai编程·ai大模型·组件库·ai产品·ui界面
小蒋观天下19 天前
端侧大模型在安防摄像头部署实操(上)|行业痛点、架构选型、落地思路解析
大数据·人工智能·安全·计算机视觉·ai大模型