离线环境下安装Dify和插件
本文详细介绍了离线安装DIFY及其插件的完整过程。首先,从GitHub下载DIFY 1.4.0版本,并在外网环境下导出Docker镜像。接着,在内网环境中导入镜像,并修改docker-compose.yml和.env配置文件,以确保插件安装成功。随后,在联网环境下使用dify-plugin-repackaging工具打包离线插件,并调整.env文件以允许安装大尺寸插件。最后,将打包好的插件上传至D
·
主要记录整个离线安装DIFY和DIFY插件完整过程
一、 下载DIFY
前往下列下载地址下载DIFY,当前教程基于1.4.0版本。
https://github.com/langgenius/dify/releases/
二、 导出镜像
在外网环境下,先下载镜像之后执行命令导出。
docker-compose pull
docker-compose build
docker-compose images
docker save -o dify-1.4.0.tar $(docker-compose config | grep 'image:' | awk '{print $2}')
三、 导入镜像
在内网环境下,导入刚刚导出的镜像dify-1.3.1.tar,这里导入镜像后先不要启动docker-compse,要需要做下一步配置
docker load -i dify-1.4.0.tar
四、 修改配置文件
为了防止安装基础的模型插件失败,需要对docker-compose.yml和.env文件进行配置。
- 将以下环境变量添加到
docker-compose.yaml中的worker、api、plugin_daemon,
REMOTE_INSTALL_URL: http://${EXPOSE_PLUGIN_DEBUGGING_HOST:-localhost}:${EXPOSE_PLUGIN_DEBUGGING_PORT:-5003}
# 参考
services:
plugin_daemon:
environment:
REMOTE_INSTALL_URL: http://${EXPOSE_PLUGIN_DEBUGGING_HOST:-localhost}:${EXPOSE_PLUGIN_DEBUGGING_PORT:-5003}
- 复制一个
.env,添加REMOTE_INSTALL_URL到dify/docker/.env中
cp .env.example .env
REMOTE_INSTALL_URL=http://${EXPOSE_PLUGIN_DEBUGGING_HOST:-localhost}:${EXPOSE_PLUGIN_DEBUGGING_PORT:-5003}
- **确保
PLUGIN_REMOTE_INSTALLING_HOST环境变量配置正确。您可以在docker-compose.middleware.yamlplugin_daemon服务中添加以下配置:**未作
PLUGIN_REMOTE_INSTALLING_HOST: ${PLUGIN_DEBUGGING_HOST:-0.0.0.0}
# 或
PLUGIN_REMOTE_INSTALLING_HOST: ${EXPOSE_PLUGIN_DEBUGGING_HOST:-localhost}
五、打包离线插件
在联网的环境下打包离线插件,进入内网dify可以直接安装。
- 下载dify-plugin-repackaging
https://github.com/junjiem/dify-plugin-repackaging?tab=readme-ov-file
- 打包插件
# 该脚本没有针对ubuntu进行适配,需要自行安装unzip、rpm
apt install unzip
apt install rpm
apt install pip
# 解压插件后添加执行权限
chmod 755 plugin_repackaging.sh
# 执行打包./plugin_repackaging.sh local ./xxxxx.difypkg
# ./plugin_repackaging.sh local [插件路径]
./plugin_repackaging.sh local langgenius-ollama_0.0.6.difypkg

- 配置
.env否则上传离线插件
# 在 .env 配置文件将 FORCE_VERIFYING_SIGNATURE 改为 false ,Dify 平台将允许安装所有未在 Dify Marketplace 上架(审核)的插件。
# 在 .env 配置文件将 PLUGIN_MAX_PACKAGE_SIZE 增大为 524288000,Dify 平台将允许安装 500M 大小以内的插件。
# 在 .env 配置文件将 NGINX_CLIENT_MAX_BODY_SIZE 增大为 500M,Nginx客户端将允许上传 500M 大小以内的内容。
FORCE_VERIFYING_SIGNATURE=false
PLUGIN_MAX_PACKAGE_SIZE=52428800
NGINX_CLIENT_MAX_BODY_SIZE=500M
- 将离线包上传至dify即可

六、 参考文献
如果对上述内容有疑问,可以参考具体的url。
本文参考文献:
火山引擎开发者社区是火山引擎打造的AI技术生态平台,聚焦Agent与大模型开发,提供豆包系列模型(图像/视频/视觉)、智能分析与会话工具,并配套评测集、动手实验室及行业案例库。社区通过技术沙龙、挑战赛等活动促进开发者成长,新用户可领50万Tokens权益,助力构建智能应用。
更多推荐
所有评论(0)