1.容器操作
原因:因为一些原因必须要使用dify1.9.1,无法使用最新修复版本,但是该版本存在react漏洞以及Next.js漏洞,需要修复
容器启动日志:
┌────┬─────────────┬─────────────┬─────────┬─────────┬──────────┬────────┬──────┬───────────┬──────────┬──────────┬──────────┬──────────┐
│ id │ name │ namespace │ version │ mode │ pid │ uptime │ ↺ │ status │ cpu │ mem │ user │ watching │
├────┼─────────────┼─────────────┼─────────┼─────────┼──────────┼────────┼──────┼───────────┼──────────┼──────────┼──────────┼──────────┤
│ 0 │ dify-web │ default │ 1.9.1 │ cluster │ 23 │ 0s │ 0 │ online │ 0% │ 60.3mb │ │ disabled │
│ 1 │ dify-web │ default │ 1.9.1 │ cluster │ 30 │ 0s │ 0 │ online │ 0% │ 56.6mb │ │ disabled │
└────┴─────────────┴─────────────┴─────────┴─────────┴──────────┴────────┴──────┴───────────┴──────────┴──────────┴──────────┴──────────┘
2026-01-14T00:38:29: PM2 log: [--no-daemon] Continue to stream logs
2026-01-14T00:38:29: PM2 log: [--no-daemon] Exit on target PM2 exit pid=7
00:38:30 0|dify-web | ▲ Next.js 15.5.0
00:38:30 0|dify-web | - Local: http://dbbd9b875910:3000
00:38:30 0|dify-web | - Network: http://dbbd9b875910:3000
00:38:30 0|dify-web | ✓ Starting...
00:38:30 1|dify-web | ▲ Next.js 15.5.0
00:38:30 1|dify-web | - Local: http://dbbd9b875910:3000
00:38:30 1|dify-web | - Network: http://dbbd9b875910:3000
00:38:30 1|dify-web | ✓ Starting...
00:38:30 0|dify-web | ✓ Ready in 226ms
00:38:30 1|dify-web | ✓ Ready in 259ms1.1进入容器
sudo docker exec -it --user root docker-web-1 /bin/sh1.2查看对应组件版本
1.2.1 React
cd /app
npm view react version
#输出19.2.31.2.2 next.js
cd /app
npm view next version
#输出:16.1.11.2更换阿里源
echo "https://mirrors.aliyun.com/alpine/v3.21/main/" > /etc/apk/repositories
echo "https://mirrors.aliyun.com/alpine/v3.21/community/" >> /etc/apk/repositories
# 清空原源文件,写入阿里源(适配 Alpine v3.21)
apk update
# 更新源缓存1.3 验证源
/app/web # echo "https://mirrors.aliyun.com/alpine/v3.21/main/" > /etc/apk/repositories
/app/web # echo "https://mirrors.aliyun.com/alpine/v3.21/community/" >> /etc/apk/repositories
/app/web # apk update
fetch https://mirrors.aliyun.com/alpine/v3.21/main/x86_64/APKINDEX.tar.gz
fetch https://mirrors.aliyun.com/alpine/v3.21/community/x86_64/APKINDEX.tar.gz
v3.21.5-137-g5140a0d78c3 [https://mirrors.aliyun.com/alpine/v3.21/main/]
v3.21.5-134-g41635b0fc8a [https://mirrors.aliyun.com/alpine/v3.21/community/]
OK: 25405 distinct packages available1.4 升级React、next.js
npm config set registry https://registry.npmmirror.com
# 2. 更换 npm 镜像(加速安装,避免网络问题)
pnpm add next@15.5.9 react@19.2.3 react-dom@19.2.3 --save --strict-peer-dependencies=false
# 说明:
#- pnpm add 对应 npm install
# - --strict-peer-dependencies=false:忽略 react-18-input-autosize 对 React 18.x 的限制
# - 无需额外清理,pnpm 会自动处理依赖树
pnpm install
# 补全依赖# 1. 查看最终安装的版本
npm list next react react-dom | grep -E 'next@|react@|react-dom@'
# 正确输出示例(需确认):
# ├── next@15.5.9
# ├── react@19.2.3
# └── react-dom@19.2.3
npm ls --legacy-peer-deps | grep -i "error"
# 检查是否有其他报错
npm ls --legacy-peer-deps | grep -i "warning"
# 检查是否有未解决的依赖警告(可选)1.5重启容器
exit
sudo docker restart docker-web-1
# 1. 退出容器,直接重启(一步到位释放端口+保留版本)
sudo docker exec -it --user root docker-web-1 /bin/sh
# 2. 重新进入容器,启动 Dify(此时端口已释放,新版 Node 生效)
node -v
# 验证结果
npm view react version
npm view next version容器日志:
┌────┬─────────────┬─────────────┬─────────┬─────────┬──────────┬────────┬──────┬───────────┬──────────┬──────────┬──────────┬──────────┐
│ id │ name │ namespace │ version │ mode │ pid │ uptime │ ↺ │ status │ cpu │ mem │ user │ watching │
├────┼─────────────┼─────────────┼─────────┼─────────┼──────────┼────────┼──────┼───────────┼──────────┼──────────┼──────────┼──────────┤
│ 0 │ dify-web │ default │ 1.9.1 │ cluster │ 23 │ 0s │ 0 │ online │ 0% │ 61.4mb │ │ disabled │
│ 1 │ dify-web │ default │ 1.9.1 │ cluster │ 30 │ 0s │ 0 │ online │ 0% │ 57.0mb │ │ disabled │
└────┴─────────────┴─────────────┴─────────┴─────────┴──────────┴────────┴──────┴───────────┴──────────┴──────────┴──────────┴──────────┘
2026-01-14T01:31:17: PM2 log: [--no-daemon] Continue to stream logs
2026-01-14T01:31:17: PM2 log: [--no-daemon] Exit on target PM2 exit pid=7
01:31:18 0|dify-web | ▲ Next.js 15.5.9
01:31:18 0|dify-web | - Local: http://74c1850c8817:3000
01:31:18 0|dify-web | - Network: http://74c1850c8817:3000
01:31:18 0|dify-web | ✓ Starting...
01:31:18 1|dify-web | ▲ Next.js 15.5.9
01:31:18 1|dify-web | - Local: http://74c1850c8817:3000
01:31:18 1|dify-web | - Network: http://74c1850c8817:3000
01:31:18 1|dify-web | ✓ Starting...
01:31:18 0|dify-web | ✓ Ready in 348ms
01:31:18 1|dify-web | ✓ Ready in 339ms