Dify 插件非正式打包

本来以为只要调试通过就好了,后面打包还不是一句命令的事,事实证明我想多了。折腾了好长时间,终于稀里糊涂的

注意事项:

  1. 注意实时查看插件日志,虽然没什么用(docker logs -f --tail 100 dify-plugin-daemon );
  2. dify插件安装过程中,实质上是执行pip install -r requirements.txt命令,因此一定要确保requirements.txt文件的依赖库跟项目实际依赖库保持一致,由于我的项目是通过uv构建的,因此仅需要和pyproject.toml的dependencies 保持一致;
  3. dify插件在工作流中,是实时更新的。换言之,打包完成后,上传,重新安装插件,项目中的对应的插件工具也会实时更新,不用删除重新加载
  4. 开发环境和实际环境中,上传文件的url是不一致的,开发环境中urlremote_url没有IP地址 (http://IP),实际环境中则有IP地址,开发时需要着重处理一下。

环境说明

  • 插件开发环境:window10,python3.12,vscode
  • dify服务器环境:linux ubuntu24.02

允许DIfy安装非认证的插件

打开dify后端服务,

bash 复制代码
cd dify

cd docker 
# 打开.env文件,文件末尾添加:FORCE_VERIFYING_SIGNATURE=false
echo "FORCE_VERIFYING_SIGNATURE=false" >> .env


# 关闭移除Dify容器
docker compose down
docker compose up -d

打包

检查插件

  1. requirements.txt 文件和实际依赖是否一致? uv pip list > requirements.txt
  2. 虚拟环境文件夹(.venv)是否添加进.difyignore文件中

打包

我下的Dify-Cli是dify-plugin-windows-amd64.exe

bash 复制代码
# 退出项目目录,回到上级目录
cd ..
# 打包 my_text_exector_tool 为项目名
.\dify-plugin-windows-amd64.exe plugin package ./my_text_exector_tool

# 此时,上级目录下会出现 my_document_exector_tools.difypkg

安装

安装插件->本地插件

常见问题

  1. plugin verification has been enabled, and the plugin you want to install has a bad signature

    允许DIfy安装非认证的插件就可以了

  2. 始终显示在安装中

    暂时没发现解决办法,无论是重启DIFY,还是容器dify-plugin-daemon 都没用;

  3. 日志显示查看在疯狂报错,虽然在界面中已经移除了,但后台日志仍在展示插件报错信息。

    可以考虑把docker插件实际地址给删了,慎用!容易会出现意想不到的问题

    操作过程:

    bash 复制代码
    # 进入容器
    docker exec -it dify-plugin-daemon bash
    
    cd /app/storage/cwd/
    
    ls -a 
    # 删除作者文件下的所有文件,慎用
    rm -r 作者名称
    
    # Ctrl+D 退出
    
    # 重启
    docker restart dify-plugin-daemon
  4. 如何授权DIFY_API_KEY

    每个项目都有一个专门的API

  5. 插件启用后,运行时,插件本身运行正常,但后面节点运行错误,提示:PluginDaemonInternalServerError

    github.com/langgenius/dify/issues/14649

    找不到有效解决办法,最后是DIFY自己变好的。( ̄ε(# ̄)

相关推荐
Honmaple16 小时前
OpenClaw 迁移指南:如何把 AI 助手搬到新电脑
人工智能
wenzhangli716 小时前
Ooder A2UI 第一性原理出发 深度解析核心逻辑
人工智能·开源
网络安全研究所17 小时前
AI安全提示词注入攻击如何操控你的智能助手?
人工智能·安全
数据猿17 小时前
硬盘价格涨疯了,AI存储何去何从?
人工智能
zhangfeng113317 小时前
氨基酸序列表示法,蛋白质序列表达 计算机中机器学习 大语言模型中的表达,为什么没有糖蛋白或者其他基团磷酸化甲基化乙酰化泛素化
人工智能·机器学习·语言模型
陈天伟教授17 小时前
人工智能应用- 语言理解:06.大语言模型
人工智能·语言模型·自然语言处理
海心焱17 小时前
安全之盾:深度解析 MCP 如何缝合企业级 SSO 身份验证体系,构建可信 AI 数据通道
人工智能·安全
2501_9453184917 小时前
AI证书能否作为招聘/培训标准?2026最新
人工智能
2601_9491465317 小时前
Python语音通知接口接入教程:开发者快速集成AI语音API的脚本实现
人工智能·python·语音识别
韦东东17 小时前
RAGFlow v0.20的Agent重大更新:text2sql的Agent案例测试
人工智能·大模型·agent·text2sql·ragflow