Kommentare: sichere https Verbindung: Traefik Reverse Proxy + Let´s Encrypt
Fragen / Kommentare zu sichere https Verbindung: Traefik Reverse Proxy + Let´s Encrypt
(neueste zuerst)Hallo, schöne Anleitung! Ich habe den Docker Stack auf einer Portainer Instanz auf einem QNAP ausprobiert. Dabei habe ich immer wieder den Fehler "port is missing" bekommen: level=error msg="service \"traefik-traefik\" error: port is missing" providerName=docker container=traefik-traefik.... Mit dem zusätzlichen Label - "traefik.http.services.traefik.loadbalancer.server.port=80" startet Traefik ohne Fehlermeldung. Allerdings hab ich es bis jetzt nicht geschafft das Traefik Dashboard aufzurufen. Irgendwas an der Portweiterleitung klemmt. Firewalls hab ich schon ausgeschlossen. Es könnte noch an belegten Ports auf dem QNAP liegen (QNAP: 8080, 443, Portainer: 8443) oder daran, dass ich ein VLAN betreibe. Letzteres schliesse ich eigentlich aus, da ich aus der Shell im Traefik Container z.B. google.de anpingen kann. Für Hinweise bin ich dankbar. Vielleicht ist auch das zusätzliche Label noch nicht korrekt. Beste Grüße Christian
Hallo, nach längerer Suche funktioniert das Traefik Dashboard mit basicAuth jetzt and auch der Traefik/whoami ist erreichbar. BasicAuth / Dashboard: Damit ist eigentlich alles in Ordnung. Das Problem liegt bei der Einstellung "expose: 8080" bzw. dem fehlenden loadbalancer. Zunächst zu expose. Da ich noch ziemlich neu in der Docker-Welt bin, ging ich irrtümlich davon aus, dass dies eine Traefik spezifische Einstellung ist und dass das Dashboard über den angegebenen Port 8080 erreichbar sein sollte. Tatsächlich sagt die docker compose reference dazu: "Expose ports without publishing them to the host machine - they’ll only be accessible to linked services. Only the internal port can be specified." Das Dashboard ist natürlich ganz normal über den Namen in der Host rule (im Beispiel traefik.domain.tld) erreichbar. Die Frage ist also, für was ist die Einstellung "expose: 8080" gut? Erschwerend kam hinzu, dass ohne den loadbalancer ein Fehler auftritt, der die Erzeugung der Middleware für die basicAuth verhindert. Theoretisch sollte Traefik unter Docker automatisch den Port des Servers verwenden, wenn es nur einen gibt: "Port detection works as follows: If a container exposes a single port, then Traefik uses this port for private communication. If a container exposes multiple ports, or does not expose any port, then you must manually specify which port Traefik should use for communication by using the label traefik.http.services.<service_name>.loadbalancer.server.port (Read more on this label in the dedicated section in routing)." Das scheint nicht ganz zu funktionieren, da jedenfalls bei mir der Fehler auftritt. Traefik/whoami: Standardmässig startet Traefik/whoami auf Port 80. Ich habe aber versucht, den Server auf Port 443 anzusprechen. Das kann natürlich nicht funktionieren. Hoffe, das hilft dem ein oder anderen. Beste Grüße Christian
Beitrag erstellt von anonym