docker上部署dify-ollama-知识库搭建Linux
docker上部署dify-ollama-知识库搭建【Linux】
部署dify
拉取代码,下载慢的可以搞个代理,几分钟就能下好。
Git可以实时更新代码,同时git上的Issue也有很多问题反馈,说不定有你的问题。
部署文档,参考官方文档把,毕竟其他人的也都是CV的官方文档(
这里说一下我碰到的问题:
服务刚起来的时候那一刻,是可以正常访问到的,但是过了会,继续访问 域名/install的时候发生了nginx
502网关超时问题,就好像服务垮掉了一样,但是我去看docker,发现nginx服务没挂,我继续访问域名/install的时候nginx日志没有更新。
可以确定两个点:
docker容器是可以访问外网的
nginx配置是没有问题的,我调高了服务超时响应时间,发现nginx还是过了五六秒,它就“不理我”了,因此可以怀疑是服务器的问题了。
后面发现,是服务器禁用了IPV4的转发功能... 解除禁用,就没问题了。
总结:如果你的nginx是latest,理论上nginx配置是没有问题的。如果有问题,可能和你的服务器配置有关,比如安全组是否开放了80、443端口,IPV4转发功能是否被禁用了?
这是我的nginx配置文件
server { listen 80; server_name _;
location /console/api { proxy_pass http://api:5001; include proxy.conf; }
location /api { proxy_pass http://api:5001; include proxy.conf; }
location /v1 { proxy_pass http://api:5001; include proxy.conf; }
location /files { proxy_pass http://api:5001; include proxy.conf; }
location /explore { proxy_pass http://web:3000; include proxy.conf; }
location /e { proxy_pass http://plugin_daemon:5002; proxy_set_header Dify-Hook-Url ://; include proxy.conf; }
location / { proxy_pass http://web:3000; include proxy.conf; }
placeholder for acme challenge location
placeholder for https config defined in https.conf.template
}
部署ollama
Linux上安装ollama
curl -fsSL -o ollama_install.sh
chmod +x ollama_install.sh
sh ollama_install.sh 即可完成ollama的安装 可以去ollama官网查看,有哪些配置,结合自己电脑配置选择。【可以问deepseek让它选择】
ollama list 查看部署了哪些大模型,直接run + 大模型版本号 ,会先看你本地有没有部署,没有的话直接自动下载部署,一般size越大,越聪明。【我这里是本地windows的截图,不必在意】
ollama run deepseek-r1:8b 这样ollama就成功部署deepseek了。
dify连接ollama,添加知识库
Linux环境下,host.docker.internal 不适用 host.docker.internal是一个开发功能,只在Docker DesktTop有效。 Linux系统下直接使用docker0的IP :172.17.0.1【默认】 也可以更改 etc/docker/daemon.json 来绑定指定的ip
{
“bip”:“172.0.0.1/24”
}
这里被告知无法解析host.docker.internal 域名
修改为docker0网关ip即可