Простая конфигурация обратного прокси Traefik - PullRequest
0 голосов
/ 18 февраля 2020

Я запускаю Traefik версии 2.1.4 со следующей конфигурацией:

defaultEntryPoints:
  - http

entryPoints:
  hole-1:
    address: ':663'

frontends:
  hole-frontend-1:
    backend: hole-backend-1
    entrypoints:
      - hole-1

backends:
  hole-backend-1:
    servers:
      hole-server-1:
        url: 'http://11.23.24.1:3000'
        weight: 10

Когда я нажимаю http://11.23.24.1:663, я попадаю на страницу Traefik 404 pages not found. Когда я go до http://11.23.24.1:3000 в браузере, он работает, он отображает страницу.

Я не могу понять, как настроить обратный прокси-сервер в Traefik, чтобы указать http://11.23.24.1:663 для http://11.23.24.1:3000.

Я пробовал это, но я получаю ошибку

2020/02/18 11:39:43 command traefik.exe Ошибка: в файле не найдена правильная конфигурация : C: \ config \ traefik.yaml

http:
  routers:
    hole-router-1:
      rule: "Host(`11.23.24.1`) && PathPrefix(`/`)"
      service: hole-service

services:
  hole-service:
    loadBalancer:
      servers:
        - url: http://11.23.24.1:3000

Ответы [ 2 ]

0 голосов
/ 18 февраля 2020

C:\config\traefik\traefik.yaml:

entryPoints:
  hole-1:
    address: ":661"

providers:
  file:
    filename: C:\config\traefik\dynamic.yaml

C:\config\traefik\dynamic.yaml:

http:
  routers:
    hole-router-1:
      rule: "Path(`/`)"
      entryPoints:
        - hole-1
      service: hole-service

  services:
    hole-service:
      loadBalancer:
        servers:
          - url: http://10.23.24.10:3000

Я запустил Traefik с: traefik.exe --configFile=C:/config/traefik/traefik.yaml

0 голосов
/ 18 февраля 2020

Traefik 2.1 больше не поддерживает внешний и внутренний интерфейсы. Этот репозиторий содержит несколько примеров для развертывания Traefik 2.1 https://github.com/wshihadeh/traefik_v2

Пример, чтобы сделать это с Docker:

version: '3.7'

networks:
  traefik:
    external: true

volumes:
  db_data:

services:

  proxy:
    image: traefik:v2.1
    command:
      - '--providers.docker=true'
      - '--entryPoints.http.address=:80'
      - '--providers.providersThrottleDuration=2s'
      - '--providers.docker.watch=true'
      - '--providers.docker.exposedbydefault=false'
      - '--providers.docker.defaultRule=Host("local.me")'
      - '--accessLog.bufferingSize=0'
    volumes:
      - '/var/run/docker.sock:/var/run/docker.sock:ro'
    ports:
      - '663:80'
    deploy:
      restart_policy:
        condition: any
        delay: 5s
        max_attempts: 3
        window: 120s
      update_config:
        delay: 10s
        order: start-first
        parallelism: 1
      rollback_config:
        parallelism: 0
        order: stop-first
    logging:
      driver: json-file
      options:
        'max-size': '10m'
        'max-file': '5'
    networks:
      - traefik

   hole-backend:
    image:  hole-backend:demo-v1
    command: 'web'
    deploy:
      labels:
        - traefik.enable=true
        - traefik.http.services.hole.loadbalancer.server.port=8080
        - traefik.http.routers.hole.rule=Host(`hole.local.me`)
        - traefik.http.routers.hole.service=blog
        - traefik.http.routers.hole.entrypoints=web
        - traefik.docker.network=traefik
      restart_policy:
        condition: any
        delay: 5s
        max_attempts: 3
        window: 120s
      update_config:
        delay: 10s
        order: start-first
        parallelism: 1
      rollback_config:
        parallelism: 0
        order: stop-first
    logging:
      driver: json-file
      options:
        'max-size': '10m'
        'max-file': '5'
    networks:
      - traefik
...