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

Traefik V2自定义网络下访问容器报网关超时问题求解

问题根因

当前配置中mysql、phpmyadmin服务均加入了自定义的dev网络,但反向代理traefik没有加入该网络,导致traefik无法路由请求到同属dev网络的phpmyadmin容器,因此出现网关超时。
当你移除phpmyadmin的networks: dev配置后,phpmyadmin会自动加入docker-compose默认创建的项目网络,与traefik同网络,因此可以正常访问页面;但此时mysql仍在dev网络,两个服务跨网络无法通信,因此phpmyadmin无法连接数据库。

排查步骤
  • 执行docker network inspect dev,查看返回的Containers字段,确认traefik不在该网络的容器列表中
  • 执行docker inspect traefik,查看Networks字段,确认traefik仅加入了docker-compose默认生成的项目网络
解决方案

最优方案是将traefik也加入dev网络,修改docker-compose.yml中reverse-proxy服务的配置,新增网络配置项:

reverse-proxy:
  container_name: traefik
  image: traefik:v2.5
  command: --api.insecure=true --providers.docker
  ports:
    - "80:80"
    - "8080:8080"
  volumes:
    - "/var/run/docker.sock:/var/run/docker.sock:ro"
  # 新增以下配置
  networks:
    - dev

修改完成后执行docker-compose up -d重启服务即可。

效果验证
  • 访问traefik dashboard(默认地址http://127.0.0.1:8080),在HTTP Routers列表中可找到phpmyadmin对应的路由,状态为正常
  • 浏览器访问http://phpmyadmin.vws.dev可正常打开登录页,使用mysql配置的账号密码可正常登录

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.28 18:36:07