Traefik kann nicht auf Container zugreifen

Traefik kann nicht auf Container zugreifen

Ich versuche seit Tagen dieses Problem zu lösen, komme aber nicht weiter und habe auch im Internet nichts hilfreiches gefunden, daher bin ich für jeden Hinweis sehr dankbar.

Vor ein paar Wochen habe ich einen neuen Ubuntu 16.04.4 LTS Server aufgesetzt. Ich habe Docker installiert und eine interne Webseite darauf laufen lassen. Jetzt haben wir eine weitere Webseite und ich möchte diese gerne über zwei verschiedene Subdomains erreichbar machen.

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

Aus diesem Grund habe ich mir die Domain qwert.de gekauft und bei meinem Provider eine feste IP-Adresse beantragt. Mein Server ist nun über die Domain qwert.de erreichbar.

Dann bin ich auf Traefik gestoßen, das so ziemlich alle meine Bedürfnisse abdeckt. Also habe ich es mit der folgenden Konfiguration installiert:

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"

Und dann habe ich den Container mit dem folgenden Docker-Compose-Befehl gestartet:

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 

Alles funktioniert einwandfrei und ich erhalte die typische „404 Seite nicht gefunden“-Meldung von Traefik. Anschließend starte ich einen einfachen Nginx-Container mit dem folgenden Code:

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

Wenn ich nun aber versuche die Webseite appone.qwert.ch aufzurufen erhalte ich ebenfalls die typische "404 Seite nicht gefunden" Meldung. Der Traefik Container wirft folgende Fehlermeldung aus:

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'"

Ich weiß nicht, ob ich den Server irgendwie mit der neuen Domäne konfigurieren muss oder was ich falsch gemacht habe.

Meine /etc/hosts/-Datei sieht folgendermaßen aus:

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

Ich würde mich über jede Antwort sehr freuen.

Antwort1

Hier verwende ichGastgeberanstattGASTGEBER

-l "traefik.frontend.rule=Host:appone.qwert.ch"

verwandte Informationen