当前位置: 首页 > news >正文

在Ubuntu20.04开发Dify插件教程,部署Dify插件脚手架

当使用ubuntu20.04安装dify插件脚手架的时候,使用dify plugin init会报以下错误

dify: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.34' not found (required by dify)
dify: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.32' not found (required by dify)

究其原因就是这里的 GLIBC_2.34 文件仅存在ubuntu22.04版本之上。
于是天然就有一个解决办法,就是将系统更新至22.04版本以上就行了。

但是有时候我们又不想更新系统,此时就可以借助docker了,具体解决步骤如下

  1. 通过docker拉取一个ubuntu22.04的系统镜像 docker pull ubuntu:22.04
  2. 将dify脚手架移动至该镜像中
  3. 将该镜像的dify脚手架的输出地址绑定至主机的地址上

以上步骤均可用一条指令来完成:

docker run -it -v [dify脚手架路径]:[docker镜像存放路径] -v [dify插件部署到主机的路径]:[docker镜像中的插件输出路径] ubuntu:22.04

例如在我机器上的指令为:

docker run -it -v /usr/local/bin/dify:/app/dify -v /home/xxx/Code/PythonCode/dify_plugins:/app/output ubuntu:22.04

当在镜像中使用dify plugin init初始化了一个插件模板后,从镜像中退回到主机终端中,然后你会在上述指令的[dify插件部署到主机的路径]部分看到该插件模板代码目录,但是这里会有一个问题,只有root用户才能编辑该目录下的文件。

此时可通过使用如下步骤来解决:

  1. 确保目录和文件归当前用户所有
    运行以下命令,将目录及其内容的所有者改为当前用户:

    sudo chown -R $USER /path/to/your/directory
    
    • sudo: 以超级用户权限执行。
    • chown: 更改所有者。
    • -R: 递归应用到目录下的所有文件和子目录。
    • $USER: 当前登录的用户名。
    • /path/to/your/directory: 替换为你的目标目录路径。
  2. 赋予当前用户读写权限
    更改权限,确保当前用户对目录及其内容有读写权限:

    chmod -R u+rw /path/to/your/directory
    
    • chmod: 修改权限。
    • -R: 递归应用。
    • u+rw: 为用户(user)添加读(read)和写(write)权限。
  3. 验证修改
    检查权限是否正确应用:

    ls -l /path/to/your/directory
    

    输出中,你应该看到目录和文件的所有者是你的用户名,且权限显示为 rw(例如 -rwxr-xr-x 中的前两个 rw 表示用户可读写)。

示例

假设你的目录是 /home/user/myfolder,完整命令如下:

sudo chown -R $USER /home/user/myfolder
chmod -R u+rw /home/user/myfolder

此时就可以愉快的在ubuntu20.04上开发dify插件啦。

http://www.dtcms.com/a/108372.html

相关文章:

  • 深度学习 Deep Learning 第15章 表示学习
  • 针对 MySQL 数据库的详细说明,分类列出临时资源(临时表、游标、未提交事务、会话变量、预编译语句)的创建、清理方式及未清理后果,并以表格总结
  • [CH32] RISC-V汇编指令解释
  • linux下springboot项目守护进程编写
  • arm64平台下linux访问寄存器
  • Python----机器学习(线性回归:前向传播和损失函数)
  • 【C++基础知识】 C 预处理器中的 #line 指令详解
  • RabbitMQ应用2
  • Linux系统之SFTP-搭建SFTP服务器
  • ui-tars和omni-parser使用
  • JavaScript 模块化详解( CommonJS、AMD、CMD、ES6模块化)
  • 网络安全-等级保护(等保) 1-0 等级保护制度公安部前期发文总结
  • 蓝桥杯 web 表格数据转化(组件挂载、模板字符串)
  • 【硬件视界9】网络硬件入门:从网卡到路由器
  • C# 扩展方法
  • 跨网连接vscode
  • 银联三级等保定级报告
  • CMake学习--Window下VSCode 中 CMake C++ 代码调试操作方法
  • 闭环SOTA!北航DiffAD:基于扩散模型实现端到端自动驾驶「多任务闭环统一」
  • 面基spring如何处理循环依赖问题
  • conda 清除 tarballs 减少磁盘占用 、 conda rename 重命名环境、conda create -n qwen --clone 当前环境
  • 机器学习、深度学习和神经网络
  • vscode调试python(transformers库的llama为例)
  • C#实现HiveQL建表语句中特殊数据类型的包裹
  • 用docker部署goweb项目
  • RainbowDash 的 Robot
  • C++学习笔记(三十一)——map
  • Git的基础使用方法
  • 微信小程序唤起app
  • 【Docker】使用Docker快速部署n8n和unclecode/crawl4ai