You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

无法远程访问Azure网络中部署的Prefect Server问题求助

Prefect Server towel容器连接Hasura失败问题排查与解决

报错中的未知IP属于Docker内部网桥IP,问题根源是自定义服务端口后,端口绑定规则和内部服务通信配置不匹配,导致towel容器无法访问Hasura的3000端口。

1. 修复端口绑定限制

从docker ps结果可以看到,Hasura容器的端口仅绑定了127.0.0.1:5002->3000/tcp,只允许本地环回访问,Docker内部网络的其他容器无法通过网桥IP访问3000端口。
启动Prefect Server时添加--host 0.0.0.0参数,放开Docker内部网络的访问权限:

prefect server start --postgres-port=5433 --server-port=5001 --hasura-port=5002 --graphql-port=5003 --expose --host 0.0.0.0

2. 补全内部服务配置

自定义端口后需要同步修改~/.prefect/config.toml,添加Hasura服务的内部访问配置,避免towel容器使用默认参数寻址:

[server]
endpoint = "http://你的Azure公网IP:5003/graphql"
hasura_port = 5002
hasura_host = "hasura" # Prefect内部Docker网络的Hasura服务域名,无需填写公网IP

[server.ui]
apollo_url = "http://你的Azure公网IP:5003/graphql"

3. 重启验证修复效果

  • 停止当前运行的Prefect服务:prefect server stop
  • 清理残留的Prefect相关容器:docker rm -f $(docker ps -a --filter name=tmp_* -q)
  • 使用修改后的启动命令重新启动服务
  • 等待2分钟后执行docker ps,确认tmp_towel_1容器状态变为healthy,再访问8080端口验证UI功能正常

内容的提问来源于stack exchange,提问作者caxefaizan

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.23 20:54:01