Traefik은 컨테이너에 액세스할 수 없습니다.

Traefik은 컨테이너에 액세스할 수 없습니다.

며칠 전부터 이 문제를 해결하려고 노력하고 있지만 이해가 되지 않고 인터넷에서 도움이 되는 내용도 찾을 수 없으므로 모든 힌트에 대해 매우 감사하겠습니다.

몇 주 전에 새로운 Ubuntu 16.04.4 LTS 서버를 설정했습니다. Docker를 설치하고 내부 웹페이지를 실행했습니다. 이제 추가 웹페이지가 생겼고 두 개의 서로 다른 하위 도메인으로 액세스할 수 있게 만들고 싶습니다.

  • appone.qwert.de
  • apptwo.qwert.de

이러한 이유로 나는 qwert.de 도메인을 구입하고 공급자에게 고정 IP 주소를 요청했습니다. 이제 qwert.de 도메인을 통해 내 서버에 연결할 수 있습니다.

그런 다음 내 요구 사항을 거의 모두 충족하는 traefik을 찾았습니다. 그래서 다음 구성으로 설치했습니다.

debug = false

logLevel = "ERROR"
defaultEntryPoints = ["https","http"]

[entryPoints]
  [entryPoints.http]
  address = ":80"
    [entryPoints.http.redirect]
    entryPoint = "https"
  [entryPoints.https]
  address = ":443"
  [entryPoints.https.tls]

[retry]

[docker]
endpoint = "unix:///var/run/docker.sock"
domain = "qwert.de"
watch = true
exposedbydefault = false

[acme]
email = "[email protected]"
storage = "acme.json"
entryPoint = "https"
OnHostRule = true
[acme.httpChallenge]
entryPoint = "http"

그런 다음 다음 docker-compose 명령을 사용하여 컨테이너를 시작했습니다.

version: '2'

services:
  traefik:
    image: traefik:latest
    restart: always
    ports:
      - 80:80
      - 443:443
    networks:
      - web
    volumes:
      - /var/run/docker.sock:/var/run/docker.sock
      - /srv/docker/traefik/traefik.toml:/traefik.toml
      - /srv/docker/traefik/acme.json:/acme.json
    container_name: traefik

networks:
  web:
    external: true 

모든 것이 잘 작동하고 traefik의 일반적인 "404 페이지를 찾을 수 없습니다" 메시지가 나타납니다. 그런 다음 다음 코드를 사용하여 기본 nginx 컨테이너를 시작합니다.

sudo docker run -d --label "traefik.frontend.rule=HOST:appone.qwert.ch" --network web nginx:latest

하지만 이제 appone.qwert.ch 웹사이트에 전화하려고 하면 일반적인 "404 페이지를 찾을 수 없습니다"라는 메시지도 나타납니다. traefik 컨테이너는 다음과 같은 오류 메시지를 표시합니다.

level:error msg="Error creating route for frontend frontend-HOST-qwert-de-0: error parsing rule: error parsing rule: 'HOST:qwert.de'. Unknown function: 'HOST'"

어떻게든 새 도메인으로 서버를 구성해야 하는지, 아니면 내가 무엇을 잘못했는지 모르겠습니다.

내 /etc/hosts/ 파일은 다음과 같습니다.

127.0.0.1       qwert.de  Linux-Server
127.0.1.1       Linux-Server
212.153.72.45   qwert.de Linux-Server

# The following lines are desirable for IPv6 capable hosts
::1     localhost ip6-localhost ip6-loopback
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters

모든 답변에 정말 감사하겠습니다.

답변1

여기 내가 사용하고 있어요주인대신에주인

-l "traefik.frontend.rule=호스트:appone.qwert.ch"

관련 정보