代码执行拓展
默认代码执行节点没有系统权限,需配置修改。
权限管理应该可通过修改
/volumes/sandbox/conf/config.yaml文件的allowed_syscalls:指定沙盒权限,但目前试着改了之后无效,以后慢慢研究。
网络访问
修改docker-compose.yaml的sandbox模块,将network从ssrf_proxy_network改到default
文件操作
修改要操作的文件(夹)的权限:chmod -R 777 /var/sandbox/sandbox-XXXX/*
部署相关
内网部署
离线安装插件
因为从dify市场下载的插件
.difypkg只包含执行部分的python代码没有依赖,所以直接拿到离线内网安装必然出错,所以需要借助再打包工具把所需依赖在互联网环境先下载再重新打包。
安装前准备:因为使用Docker进行解包打包,所以保证联网机已安装好Docker
- 安装dify-plugin-repackaging,
git clone https://github.com/junjiem/dify-plugin-repackaging.git
没有Docker的话也可直接下载编译好的执行文件。
- 查看所需下载的插件信息,包括:公司名、插件名、版本号
- 修改
Dockerfile文件的最后执行命令:CMD ["./plugin_repackaging.sh", "-p", "manylinux_2_17_x86_64", "market", "<公司名>", "<插件名>", "<版本号>"] - 构建镜像:
docker build -t dify-plugin-repackaging . - 执行:
docker run -v $(pwd):/app dify-plugin-repackaging - 执行完成后就会在当前目录生成一个带
-offline后缀的.difypkg文件,将该文件移至内网安装即可。