【发布时间】:2018-04-12 01:55:24
【问题描述】:
我已尽力遵循 Grafana 和 Traefik 的文档,通过 Traefik 将传入请求反向代理到 https://metrics.mydomain/grafana 到作为容器运行的 Grafana 实例,但我收到来自 Grafana 的 404 响应,我想不通找出原因。
这是我在阅读文档并在我的 docker-compose.yml 文件中尝试各种事情后所做的:
version: '3'
services:
traefik:
image: traefik
restart: always
ports:
- 80:80
- 443:443
- 8080:8080
volumes:
- /var/run/docker.sock:/var/run/docker.sock
- /home/ben/traefik.toml:/etc/traefik/traefik.toml
- /etc/letsencrypt/live/mydomain/fullchain.pem:/mydomain_fullchain.pem
- /etc/letsencrypt/live/mydomain/privkey.pem:/mydomain_privkey.pem
grafana:
image: grafana/grafana
restart: always
ports:
- 3000:3000
volumes:
- /srv/grafana:/var/lib/grafana
environment:
- GF_SERVER_ROOT_URL=%(protocol)s://%(domain)s:%(http_port)s/grafana
labels:
- traefik.enable=true
- 'traefik.frontend.rule=Host:metrics.mydomain;PathPrefix:/grafana;'
- 'traefik.frontend.redirect.entryPoint=https'
Traefik 确实对此有所了解。以下是它在仪表板上显示的内容:
但是,当我实际请求https://metrics.mydomain/grafana时,我得到的是404和一个错误文档,然后是自定义错误文档请求的资源的后续404:
最后,也是最令人困惑的是,Grafana 本身收到的请求似乎是正确的,但仍会导致 404:
method=GET path=/grafana status=404 remote_addr=192.168.0.1
method=GET path=/grafana/public/build/grafana.dark.css status=404 remote_addr=192.168.0.1
...etc
我不明白为什么这么挑剔,而且(对我而言)似乎没有任何证据表明实际问题是什么。
附言- 我确实对看起来相关的 Grafana 问题发表了评论。 https://github.com/grafana/grafana/issues/2066#issuecomment-380647174
【问题讨论】: