笔者根据【知识科普】【纯本地化搭建】【不本地也行】DeepSeek + RAGFlow 构建个人知识库_哔哩哔哩_bilibili
教程搭建知识库,全部流程完毕,尝试chat时遇到以下错误,被困扰多日
ERROR:
Connection error caused by: ConnectionError(Connection error caused by: NewConnectionError(<urllib3.connection.HTTPConnection object at 0x7fead7596a40>: Failed to establish a new connection: 【Errno 111】 Connection refused))
原因:
排查各种端口连接问题后,发现错误来源竟然是内存不足
笔者的电脑总内存为16GB,docker desktop中显示为docker分配的内存为7.5GB
内存显著不足,导致elasticsearch无法正常运行,显示为无法建立连接
解决方案:
调整windows对docker desktop的内存分配。进入docker desktop的settings-resources页面,发现资源由windows分配,指引我们去修改系统对WSL2的资源分配
(后续操作笔者参考了如下文章:Windows环境下docker desktop修改最大内存 - 简书)
win + r,调出运行,输入 %UserProfile%,进入用户文件夹
在用户文件夹下创建一个新的文件,改名为 .wslconfig,内容如下
[wsl2]
memory=16GB # 分配的内存
processors=12 # 处理器核心数量,考虑超线程
swap=0
localhostForwarding=true
保存文件后,重启docker和WSL。
1. 退出docker,任务管理器中确保无docker相关进程
2. win+r调出运行,输入cmd并回车,在命令提示符中,输入以下内容并回车
wsl --shutdown
重新打开docker,确保容器中所有的程序都运行,重新在浏览器中连接ragflow进行尝试