我正在尝试使用traefik为我的LAN上的docker / docker-compose设置一个超级简单的反向代理。问题是因为我没有域名,我试图访问(例如)URL(我的服务器存储在192.168.1.2上)“ 192.168.1.22/whoami”上的服务“ whoami”。我发现大多数配置都将其设置为“ subdomain.domain.com”之类的东西。这是我的docker-compose:
services:
traefik:
image: traefik
container_name: traefik
command:
- "--api.insecure=true"
- "--providers.docker=true"
- "--providers.docker.exposedbydefault=false"
- "--entrypoints.web.address=:80"
ports:
- 80:80
- 8080:8080
volumes:
- "/var/run/docker.sock:/var/run/docker.sock:ro"
whoami:
image whoami
container_name: whoami
labels:
- "traefik.enable=true"
- "traefik.http.routers.whoami.rule=Host(`192.168.1.2`) && Path(`/whoami`)"
- "traefik.http.routers.whoami.entrypoints=web"
restart: unless-stopped
当我访问192.168.1.2:8080时,仪表板加载,但是当我尝试访问192.168.1.2/whoami时,它给了我这个错误:“未找到。找不到您请求的URL(/ whoami)。生成者darkhttpd / 1.12“。但是,当我访问其他网址(例如192.168.1.2/badurl)时,它只会引发错误“找不到404页”。
如果您需要更多信息,请随时提出并感谢。
答案 0 :(得分:0)
针对您的问题的简单解决方案可能是在主机规则中使用域,而只需在计算机上添加主机条目即可将该域定向到IP。
还要在仪表盘上检查路由器确实进行了注册。如果不是这样,Traefik会在调试级别上记录有关问题的详细信息。