Выставить панель управления Traefik на поддомен - PullRequest
0 голосов
/ 03 мая 2020

У меня настроен Traefix, и я пытаюсь открыть панель мониторинга для веб-сайта, обслуживаемого через Cloudflare с SSL. Я просмотрел документы и не могу понять, как открыть документы для поддоменов одного из моих сайтов. У меня есть следующий docker -компонентный файл:

services:
  traefik:
    container_name: traefik
    image: "traefik"
    labels:
      - "traefik.enable=true"
      - "traefik.http.routers.dashboard.rule=Host(`foo.bar.dev`) && PathPrefix(`/`)"
      - "traefik.http.routers.dashboard.entrypoints=websecure"
      - "traefik.http.routers.dashboard.service=dashboard@internal"
      - "traefik.http.routers.dashboard.middlewares=dashboard_redirect@internal,dashboard_stripprefix@internal"
      - "traefik.http.routers.dashboard.priority=2"
      - "traefik.http.routers.api.rule=Host(`foo.bar.dev`) && PathPrefix(`/api`)"
      - "traefik.http.routers.api.entrypoints=websecure"
      - "traefik.http.routers.api.service=api@internal"
      - "traefik.http.routers.api.priority=1"
      - "traefik.http.routers.api.middlewares=dashboard_redirect@internal,dashboard_stripprefix@internal"

    ports:
      - "443:443"
      - "8080:8080"
    expose:
      - 443
    volumes:
      - "/var/run/docker.sock:/var/run/docker.sock:ro"
      - "./traefik.toml:/traefik.toml"
version: "3.3"

и следующий файл traefik.toml:

[accessLog]

[api]
  dashboard = true
  insecure = true

[providers.docker]
  exposedByDefault = false

[entryPoints]
  [entryPoints.websecure]
    address = ":443"

Я все еще получаю 404 на поддомене. Сертификаты располагаются по cloudflare, поэтому я без проблем захожу на порт 443 в моей сети. Мой порт затем перенаправляется маршрутизаторами на мой сервер Traefix. Я чувствую, что правило хоста не запускается, потому что, когда я получаю доступ к порту 8080 напрямую с IP-адреса во внутренней сети, я могу получить доступ к приборной панели и увидеть два правила, установленные в docker.

Любой, кто может указать я в правильном направлении?

1 Ответ

0 голосов
/ 03 мая 2020

Я в итоге получил его работать со следующей конфигурацией:

version: "3.3"
services:
  traefik:
    container_name: traefik
    image: "traefik"
    networks:
      - webgateway
    labels:
      - "traefik.enable=true"
      - "traefik.http.routers.dashboard.rule=Host(`foo.bar.dev`)"
      - "traefik.http.routers.dashboard.entrypoints=websecure"
      - "traefik.http.routers.dashboard.tls"
      - "traefik.http.services.dashboard.loadbalancer.server.port=8080"
    ports:
      - "443:443"
    expose:
      - 8080
    volumes:
      - "/var/run/docker.sock:/var/run/docker.sock:ro"
      - "./traefik.toml:/traefik.toml"

networks:
  webgateway:
    driver: bridge
[log]
  level = "DEBUG"

[accessLog]

[api]
  dashboard = true
  insecure = true

[providers.docker]
  exposedByDefault = false

[entryPoints]
  [entryPoints.websecure]
    address = ":443"
...