dify-mysql(自己创建的mysql容器)加入 Dify 的 docker network
·
把 dify-mysql 加入 Dify 的 docker network(最快、最稳)
1)找出 Dify 正在用的 network 名字
任选一个 Dify 容器(比如 api),把它所在 network 打印出来:
docker inspect -f '{{range $k,$v := .NetworkSettings.Networks}}{{println $k}}{{end}}' dify_docker_new-api-1
通常你会看到类似:dify_docker_new_default
为了后面少打字,你也可以直接取第一个 network 放到变量里:
DIFY_NET="$(docker inspect -f '{{range $k,$v := .NetworkSettings.Networks}}{{println $k}}{{end}}' dify_docker_new-api-1 | head -n 1)"
echo "$DIFY_NET"
2)把 dify-mysql 接入这个 network
docker network connect "$DIFY_NET" dify-mysql
这一步不会重启容器。
3)验证:从 Dify 容器内连 MySQL 3306
先确认 DNS 能解析容器名:
docker exec -it dify_docker_new-api-1 sh -lc 'getent hosts dify-mysql || ping -c 1 dify-mysql || true'
再做端口连通性测试(用 Python 直连 TCP,基本所有 dify-api 镜像都有 Python):
docker exec -it dify_docker_new-api-1 sh -lc 'python - << "PY"
import socket
host="dify-mysql"; port=3306
s=socket.socket()
s.settimeout(3)
try:
s.connect((host, port))
print("OK: connect to %s:%d" % (host, port))
except Exception as e:
print("FAIL:", e)
finally:
s.close()
PY'
看到 OK: connect... 就说明网络层已经通了。
更多推荐

所有评论(0)