惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

WordPress大学
WordPress大学
Microsoft Security Blog
Microsoft Security Blog
Security Archives - TechRepublic
Security Archives - TechRepublic
V
Visual Studio Blog
宝玉的分享
宝玉的分享
IT之家
IT之家
人人都是产品经理
人人都是产品经理
T
The Blog of Author Tim Ferriss
I
InfoQ
B
Blog RSS Feed
T
Threatpost
博客园_首页
M
MIT News - Artificial intelligence
Spread Privacy
Spread Privacy
cs.CL updates on arXiv.org
cs.CL updates on arXiv.org
Know Your Adversary
Know Your Adversary
U
Unit 42
Engineering at Meta
Engineering at Meta
C
Cyber Attacks, Cyber Crime and Cyber Security
月光博客
月光博客
Scott Helme
Scott Helme
T
Tor Project blog
有赞技术团队
有赞技术团队
AWS News Blog
AWS News Blog
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
Last Week in AI
Last Week in AI
S
Schneier on Security
Vercel News
Vercel News
博客园 - Franky
C
Cybersecurity and Infrastructure Security Agency CISA
L
LINUX DO - 热门话题
NISL@THU
NISL@THU
L
LangChain Blog
爱范儿
爱范儿
Google DeepMind News
Google DeepMind News
The GitHub Blog
The GitHub Blog
雷峰网
雷峰网
Latest news
Latest news
C
CXSECURITY Database RSS Feed - CXSecurity.com
Hugging Face - Blog
Hugging Face - Blog
Exploit-DB.com RSS Feed
Exploit-DB.com RSS Feed
www.infosecurity-magazine.com
www.infosecurity-magazine.com
G
GRAHAM CLULEY
S
Security Affairs
A
About on SuperTechFans
K
KPMG report finds enterprise disconnect between AI and its ROI | CIO
大猫的无限游戏
大猫的无限游戏
W
WeLiveSecurity
Cisco Talos Blog
Cisco Talos Blog
罗磊的独立博客

阿锦在线[ajinol.com]

ESP8266+ESPHome+Homeassistant实现地暖水温监测 追觅L10 Pro扫地机更换电池方法 Bitwarden:修改docker-compose配置邮件服务及管理员面板 斐讯DC1插排故障(通电无反应)维修方法 最近喜欢的歌曲:【4K Hi-Res】程艾影_赵雷 halo-hao主题友链页面的设置方法 新版homeassistant core 2025.3.0 bemfa 加载失败解决方法 Z2M 2.0.0启动zigbee2mqtt失败:cannot discover tcp adapters at this time DNS解析的整个过程 好歌推荐:赵雷《朵》【Hi-res】 Dify:环境变量说明 部分AI大模型API调用价格汇总 Dify:docker-compose.yaml和.env.example文件的注释说明 Halo-Hao主题“在线工具”页面模板代码 智能家居HomeAssistant系列:配置教程 童年回忆之:四驱赛车 收藏几个动态懒加载图片 收藏几个在线自动生成文章封面、海报的网址 1panel面板的快照恢复或服务器业务迁移教程
Dify:社区版v0.15.3升级至v1.0.0教程
标签 · 2025-03-03 · via 阿锦在线[ajinol.com]

前言

本文专为使用官方Docker Compose进行快速安装的旧版Dify用户设计。如果您是通过源代码部署或对容器参数进行了自定义配置(例如,复用容器等),则本文可能不适用。此外,我仅对从0.15.3版本升级至1.0.0版本的流程进行了验证,对于更早版本的升级,我尚未进行测试,因此请您在参考时谨慎评估其适用性。

开始升级

升级分为以下步骤:

  1. 备份数据

  2. 主项目升级

  3. 插件迁移

1. 备份数据

1.1 运行 cd 命令至你的 Dify 项目路径,新建备份分支。

1.2 运行以下命令,备份你的 docker-compose YAML 文件(可选)。

cd docker
cp docker-compose.yaml docker-compose.yaml.$(date +%s).bak

1.3 运行命令停止服务,在 Docker 目录中执行备份数据命令。

docker compose down
tar -cvf volumes-$(date +%s).tgz volumes

67c5b1ea933bc.webp

2. 升级版本

v1.0.0 支持通过 Docker Compose 部署。运行 cd 命令至你的 Dify 项目路径,运行以下命令升级 Dify 版本:

git checkout 1.0.0 # 切换至 1.0.0 分支
cd docker
docker compose -f docker-compose.yaml up -d

注意:

在执行git checkout 1.0.0可能会出现问题:

问题一:

error:pathspec'1.0.0'did not match anyfile(s)known to git

67c5b20c064a1.webp

这个问题是在存储库中找不到特定的标签或分支,进行以下操作即可:

  1. 验证标签/分支:确保1.0.0是有效的标记或分支。您可以使用以下方式列出所有标签:

    git tag

    或者使用以下命令列出所有分支:

    git branch -a
  2. 检查更新:确保您的本地存储库是最新的:

    git fetch --all

问题二:

error:Your local changes to the following files would be overwritten by checkout:docker/nginx/conf.d/default.conf.template
Please commit your changes or stash them before you switch branches.

67c5b2337f0ac.webp

需要git checkout 切换本地分支拉取项目别的分支代码时报错,显示已对本地分支做出修改。这时本地分支代码因与远程分支代码不同,所以无法强行切换别的分支拉去代码,放弃本地文件修改内容即可:

1.沒有git add .前可使用。

放弃未加入暂存区的代码(可以是已有文件夹的修改内容,也可以为文件夹的全部内容,但新建文件夹及内容不可以被删除)

git checkout .

2.已经git add .但是还未git commit

清除git add.执行的代码命令,再使用方法1的命令

git reset HEAD

说明:

这两个可能会出现的问题都是git方面的操作常识,与Dify无关。执行完git checkout 1.0.0最后出现HEAD is now at c0358d8d0 release/1.0.0(#14478)代表成功。

成功提示:

在执行完命令:docker compose -f docker-compose.yaml up -d后,系统开始自动拉取镜像,并全部启动后代表升级成功。

67c5b3ab50e7b.webp

67c5b3ab3d3f5.webp

该步骤的目的:将此前社区版本所使用的工具及模型供应商,自动进行数据迁移并安装至新版本的插件环境中。

3.1 进入docker-api容器终端

方法一:

运行 docker ps 命令,查看 docker-api 容器 id 号。

运行命令 docker exec -it a3cb19c2**** bash 进入容器终端,

方法二:

如果有docker管理面板,比如1panel,可以直接在面板里进入容器终端:

67c5b4e0298db.webp

3.2 在容器终端内运行:

poetry run flask extract-plugins --workers=20

67c5b5379f361.webp

如果提示报错,建议参考前置准备,先在服务器内安装 poetry 环境;运行命令后,若终端出现待输入项,点击 “回车” 跳过输入。

此命令将提取当前环境中使用的所有模型和工具。workers 参数将决定提取过程中的所使用的并行进程数,可根据需要进行调整。命令运行完成后将生成 plugins.jsonl 文件保存结果,该文件包含了当前 Dify 实例中所有工作区的插件信息。

确保你的网络正常访问公网,并支持访问https://marketplace.dify.ai。在 docker-api-1 容器内继续运行以下命令:

poetry run flask install-plugins --workers=2

此命令将下载并安装所有必要的插件到最新的社区版本中。当终端出现 Install plugins completed. 标识时,迁移完成。

67c5b566c0395.webp

验证升级结果

访问 Dify 平台,轻点右上角 “插件” 查看此前所使用的工具是否被正确安装。随机使用某个插件,验证是否能够正常运行。如果无误,说明你已完成版本升级和数据迁移。

67c5b591dab6c.webp