本地windows环境升级dify到1.11.1版本

本地windows环境升级dify到1.11.1版本

  • [1. 整体描述](#1. 整体描述)
  • [2. 前期准备](#2. 前期准备)
  • [3. 具体步骤](#3. 具体步骤)
      • [1. 备份数据](#1. 备份数据)
      • [2. 停止容器](#2. 停止容器)
      • [3. 升级Dify](#3. 升级Dify)
      • [4. 修改配置文件](#4. 修改配置文件)
      • [5. 创建容器](#5. 创建容器)
      • [6. 升级验证](#6. 升级验证)
  • [4. 总结](#4. 总结)

1. 整体描述

最近react有个安全漏洞还挺严重的,具体可以搜下,dify也受波及。1.11.1之前的版本应该都会有问题,不过dify官方也火速做了更新,修复了该漏洞。此次出了两个版本修复漏洞,具体可以去dift官网github查看:1.10.1-fix和1.11.1。在1.10版本的,不想升级到1.11,可以更新到1.10.1-fix,本文主要就介绍下升级到1.11.1的方法。

2. 前期准备

升级和安装方式有关,我是在本地用docker-compose安装的,具体可以参考我之前写的这个:
在本地windows电脑搭建Dify环境

3. 具体步骤

1. 备份数据

important!备份数据库和配置文件

数据库

执行如下命令(执行时需要dify处于正常运行状态):

bash 复制代码
# 备份数据库
docker exec dify-db pg_dumpall -U postgres > dify_backup_$(Get-Date -Format "yyyyMMdd_HHmmss").sql

其中dify-db是你dify数据库docker容器的名称,根据自己容器名称修改,使用docker ps -a查看当前容器。

执行之后,会在当前目录生成一个文件:dify_backup_20251224_140022.sql,复制这个文件到备份的目录下就可以。

配置文件

dify主要的配置文件都在.env文件,直接复制这个文件到备份的目录下就可以。

2. 停止容器

在Dify的docker目录下执行:

bash 复制代码
# 停止容器(如果使用 docker-compose)
docker-compose down

执行之后,会自动删除dify的容器。

3. 升级Dify

这里升级Dify,这次我要升级的版本是1.11.1,这个版本修复了一个react的严重安全漏洞。当前版本:1.9.2,由于我是直接通过git下载的dify源码,这里我就用git命令升级了,升级之前可以备份下dify的源码,用docker-compose安装,其实也就是从git上拉取.env配置文件。

在dify的跟目录下执行,拉取最新代码:(目前main分支就是1.11.1)

bash 复制代码
git checkout main
git pull origin main

当然这块也有很多其他的方法,比如直接修改.env配置文件,在里面搜索你当前的dify版本(我这就是1.9.2),然后替换成1.11.1,我未验证这个方法可以不,理论上应该是可以的。

4. 修改配置文件

如果通过git直接拉取代码,需要将dify/docker目录下新拉取的.env.example重新命名为.env,因为新版加了数据库的配置(支持mysql了),所以这步不做的话,直接docker-compose up -d,数据库的容器无法创建(我怎么知道的?我开始就没做这步)。

当然,得用新的配置文件和原来你自己的配置文件对比下,比如你之前修改了一些配置,也要同步在新拉取的配置文件上修改下。

5. 创建容器

执行如下命令拉取镜像,创建容器:

bash 复制代码
# 使用 docker-compose
docker-compose up -d

执行之后,会拉取1.11.1版本镜像,会执行一段时间,不用科学上网的话,会比较慢。

等待拉取镜像完成,会自动创建容器,在docker desktop会看到,容器的版本号会变成:1.11.1。

6. 升级验证

等待Dify正常启动,通过页面访问,看下Dify的版本号,还有自己的配置和已经开发的工作流还在不在,是否正常运行。

我自己验证下,是没啥问题的。

4. 总结

Dify更新,每次都心惊胆颤,这次更新,是用1.9.2升级到1.11.1,跨越版本不多,网上经常有说升级之后,会出现各种各样的问题,但是这次更新不和避免,一是修复了严重漏洞,二是增加了mysql的支持,还增加了定时任务的组件,还是值得升级的。目前看,升级之后运行还算稳定。

相关推荐
月落归舟14 小时前
java基础之拷贝、单例
java·单例·拷贝
鬼蛟14 小时前
什么是 Git
java
木雷坞14 小时前
视觉算法环境 Docker 镜像拉取失败排查
运维·人工智能·docker·容器
空中海14 小时前
第二篇:注册中心篇 — Nacos 与 Eureka 服务注册发现
spring boot·云原生·eureka
直奔標竿14 小时前
SpringAI + RAG + MCP + Agent 零基础全栈实战(完结篇)| 27课完整汇总,Java开发者AI转型必看
java·开发语言·人工智能·spring boot·后端·spring
云烟成雨TD14 小时前
Spring AI 1.x 系列【31】向量数据库:进阶使用指南
java·人工智能·spring
瀚高PG实验室14 小时前
安全版V4.5版本docker容器license过期问题处理步骤
安全·docker·容器·瀚高数据库
逍遥德15 小时前
SpringBoot数据库连接池HikariCP,Druid,Tomcat JDBC,DBCP2,c3p0配置使用
数据库·spring boot·tomcat
万邦科技Lafite15 小时前
京东开放API接口:item_get返回参数指南
java·前端·javascript·api·电商开放平台
曹牧15 小时前
Java:处理 HTTP 请求的 Content-Type
java·开发语言