云计算百科
云计算领域专业知识百科平台

学习 Dify 遇到的一些问题

本地 Docker 部署 Dify 踩的四个坑,记录一下。

一、80 端口被占用,容器起不来

docker compose up -d 报错:

Error response from daemon: ports are not available:
exposing port TCP 0.0.0.0:80 -> 127.0.0.1:0:
listen tcp 0.0.0.0:80: bind: An attempt was made to access a socket
in a way forbidden by its access permissions.

在这里插入图片描述

Windows 的 80 端口被系统服务占了,Docker 绑不上。

解决: 改 .env 里的宿主机映射端口:

# 改前
EXPOSE_NGINX_PORT=80
EXPOSE_NGINX_SSL_PORT=443

# 改后
EXPOSE_NGINX_PORT=8080
EXPOSE_NGINX_SSL_PORT=8443

容器内部 Nginx 还是 80 不用动,映射自动变成 8080:80。改完 docker compose up -d,访问 http://localhost:8080。

注意: 通过http://localhost/signin进入 dify,默认请求 80 端口,要改为http://localhost:8080/signin

二、管理员账号未知

用了别人分享的文件夹,启动后管理员已被创建,/install 页面进不去。

解决: 删掉整个文件夹,GitHub 重新 clone,重新 docker compose up -d,就能正常创建管理员了。本质是 PostgreSQL 数据卷里存了别人的账号信息。

三、工作流卡在"同步数据"

1.16.1 版本 bug,工作流界面一直转圈进不去。

解决: 修改 docker-compose.yml 镜像标签:

image: langgenius/difyapi:1.14.2
image: langgenius/difyweb:1.14.2

重启:

docker compose pull
docker compose up -d

缺点:失去 v1.16 新 Agent 沙箱功能;优点:工作流秒加载、无同步卡死。

四、代码节点报沙箱网络错误(重点)

代码节点 Test Run 报错:

Failed to execute code, which is likely a network issue,
please check if the sandbox service is running.
( Error: [Errno -3] Temporary failure in name resolution )

原因: docker/volumes/sandbox/conf/ 目录下缺少 config.yaml。Docker 镜像不会自动生成这个文件,sandbox 找不到配置就默认禁用网络。

解决: 从dify-sandbox 源码拿到配置,创建 docker/volumes/sandbox/conf/config.yaml:

app:
port: 8194
debug: False
key: difysandbox
max_workers: 4
max_requests: 50
worker_timeout: 15
python_path: /opt/python/bin/python3
enable_network: True
enable_preload: False
log_path: "./logs"
allowed_syscalls:
proxy:
socks5: ''
http: 'http://ssrf_proxy:3128'
https: 'http://ssrf_proxy:3128'
no_proxy: ''
allowed_env_vars: []

proxy 必须填 ssrf_proxy:3128,sandbox 在 internal 网络里没有直接外网出口,流量必须走 Squid 代理。

然后重建容器(restart 不会重读 .env):

docker compose up -d sandbox

验证:

docker compose exec sandbox env | findstr ENABLE_NETWORK
# ENABLE_NETWORK=true

在这里插ENABLE_NETWORK=true入图片描述 在这里插入图片描述

参考:CSDN – Dify 沙箱网络问题

赞(0)
未经允许不得转载:网硕互联帮助中心 » 学习 Dify 遇到的一些问题
分享到: 更多 (0)

评论 抢沙发

评论前必须登录!