Dify和Open-WebUI升级

in 默认分类 with 0 comment

2025-06-25T09:57:15.png

本文Dify升级和Open-WebUI升级。Dify 升级时需将主要文件进行备份。所有的升级操作均需谨慎!
Dify 升级需备份的文件为:docker 文件夹中的:volumes文件夹、.env文件和docker-compose.yaml

Windows Dify升级


Dify本机环境:

1)系统:windows 11 23H2;
2)软件安装:Docker Desktop;git;
3)测试模型deepseek-R1:8B和bge-m3;
PS:此方法只适用于git clone 下载并使用docker 方式部署的dify,下载zip包运行的无法使用此方法升级。

1)下载git,下载git 的目的为拉取dify的文件;
git 下载链接:Download for Windows

PS:git安装后如果无法在cmd中使用git clone命令,可以在环境变量中添加PATH
2025-06-25T10:25:05.png

2)使用git clone,下载dify(此处指定下载版本0.15.2,只为看出升级后差别)

PS C:\Users\Administrator\Desktop>git clone https://github.com/langgenius/dify.git --branch 0.15.2

2025-06-25T10:28:16.png

3)打开Docker Desktop后在Dify的docker文件夹中右键【在终端中打开】,输入【docker compose up -d 】通过docker 方式启动dify;
2025-06-25T10:25:48.png
2025-06-25T12:24:38.png

4)使用web页面登录,http://机器IP;
2025-06-25T12:25:22.png

版本为指定的v0.15.2版本
2025-06-25T12:29:01.png

5)添加模型供应商和所下载模型(V0.15.2 和V0.14.3 两者在添加模型方面不同);
2025-06-25T12:25:53.png
2025-06-25T12:28:10.png

6)添加机器人及知识库(只为后期升级后查看这些物品是否还存在);
2025-06-26T01:28:04.png

2025-06-26T01:28:39.png

升级过程

1)备份.env和docker-compose.yaml文件;

PS C:\Users\Administrator\Desktop\dify\docker>cp .env .env.20260626.bak
PS C:\Users\Administrator\Desktop\dify\docker>cp docker-compose.yaml docker-compose.yaml.20260626.bak

2)检查版本及下拉取最新版本;

 PS C:\Users\Administrator\Desktop\dify\docker>git checkout main
 PS C:\Users\Administrator\Desktop\dify\docker>git pull origin main

2025-06-26T01:43:15.png

3)结束docker;

PS C:\Users\Administrator\Desktop\dify\docker>docker compose down

4)备份volumes文件夹;

PS C:\Users\Administrator\Desktop\dify\docker>tar -cvzf volumes.20260626.tgz volumes


5)启动docker

PS C:\Users\Administrator\Desktop\dify\docker>docker compose up -d

2025-06-26T01:44:37.png
2025-06-26T01:50:00.png

最终效果

1)v0.15.2版本创建的机器人和知识库仍在;
2025-06-26T01:54:33.png

2025-06-26T01:55:06.png
PS:知识库中显示【不可用】的原因为v0.15.2版本模型提供商默认全部添加至Dify,但新版本的模型提供商需要手动添加;

2)此时将旧版本的模型提供商重新添加;

2025-06-26T01:58:16.png
2025-06-26T02:00:46.png

3)等待一段时间后模型将出现(建议出现后删除重新添加模型)
2025-06-26T02:04:19.png

Ubuntu Dify升级


Dify本机环境:

1)系统:ubuntu 22版本;
2)软件安装:docker,dify,git

升级过程:

1)备份docker-compose.yaml文件;

(yorick) root@yorick:/data/dify/docker# cp docker-compose.yaml docker-compose.yaml.20260626.bak

2)在ubuntu中升级时,如git pull 出现以下报错则检查网络是否正常,是否被拦截等;

(yorick) root@yorick:/data/dify/docker# git pull origin main
fatal: unable to access 'https://github.com/langgenius/dify.git/': gnutls_handshake() failed: Error in the pull function.

3)如使用git pull 仍然报错,可以修改dify 文件中的.git文件夹中的config ,将其中的url修改为:

url = https://github.com/langgenius/dify.git

4)在备份好yaml文件额volumes文件夹后然后重新放回至dify 文件夹执行

(yorick) root@yorick:/data/dify# git checkout 
(yorick) root@yorick:/data/dify# git pull

PS:如拉取时仍然报错且报错如下所示:

(yorick) root@yorick:/data/dify# git pull origin main
remote: Enumerating objects: 513, done.
remote: Counting objects: 100% (358/358), done.
remote: Compressing objects: 100% (213/213), done.
remote: Total 513 (delta 237), reused 145 (delta 145), pack-reused 155 (from 3)
Receiving objects: 100% (513/513), 603.82 KiB | 2.20 MiB/s, done.
Resolving deltas: 100% (254/254), completed with 48 local objects.
From https://github.com/langgenius/dify
 * branch                main       -> FETCH_HEAD
   1a7ad195f..317d28745  main       -> origin/main
Updating 1a7ad195f..317d28745
error: Your local changes to the following files would be overwritten by merge:
        docker/docker-compose.yaml
Please commit your changes or stash them before you merge.
Aborting

可运行下面命令:

(yorick) root@yorick:/data/dify/docker# git stash  //将当前工作目录中的未提交的修改(包括修改的文件和暂存区的更改)临时保存到 Git 的“藏匿(Stash)”列表中,以便后续恢复。
(yorick) root@yorick:/data/dify/docker# git pull  //从远程仓库拉取最新的提交,并合并到当前分支。
(yorick) root@yorick:/data/dify/docker# git stash pop  //将最近一次保存的 stash(通过 git stash 或 git stash save 保存的修改)重新应用到工作目录中,并自动删除该 stash。
(yorick) root@yorick:/data/dify# git checkout 
(yorick) root@yorick:/data/dify# git pull

5)如正常拉取成功后关闭docker,

(yorick) root@yorick:/data/dify/docker# docker compose down

6)备份volumes文件夹

(yorick) root@yorick:/data/dify/docker# tar -cvf volumes-20260626.tgz volumes

7)当git pull 拉取完毕后,在docker 文件夹中运行,重新运行加载即可。

(yorick) root@yorick:/data/dify/docker# docker compose up -d

Open-WebUI升级


本机环境:
1)Ubuntu 22版本
2)不是使用docker方式部署。

Open-WebUI 升级较简单,下面两句命令即可完成升级操作(支持回退)

(yorick)root@yorick:~# pip3 install -U open-webui //此命令为将open-webui升级至最新版本
(yorick)root@yorick:~# pip3 install open-webui==0.6.13 //此命令为将版本升级至0.6.13版本,如需使用其他版本则修改版本号即可

Responses