GetHomepage und Traefik - Einfache Integration und DNS-Konfiguration

In diesem Beitrag zeigen wir dir, wie du die Dashboard-App getHomepage mit Docker Compose und Traefik bereitstellst und sie über einen DNS-Eintrag wie https://my.deine-domain.org erreichst. Diese Konfiguration ermöglicht eine einfache und zentrale Verwaltung deiner SaaS-Tools.

Vorstellung von Traefik

Traefik ist ein dynamischer Reverse-Proxy und Load-Balancer, der speziell für moderne Anwendungen entwickelt wurde. Er ermöglicht die automatische Erkennung von Diensten und das einfache Verwalten von SSL/TLS-Zertifikaten. Mehr Details findest du in unserem Traefik-Tutorial.

Vorstellung von getHomepage

getHomepage ist eine Open-Source-Dashboard-App, die es dir ermöglicht, verschiedene Web-Anwendungen und Links zentral zu verwalten. Es bietet eine übersichtliche Oberfläche, mit der du deine meistgenutzten Tools und Seiten schnell erreichen kannst. getHomepage ist ideal für diejenigen, die ihre Online-Tools an einem Ort zusammenführen und effizienter verwalten möchten.

DNS-Eintrag setzen

Bevor du mit der Einrichtung fortfährst, musst du sicherstellen, dass der DNS-Eintrag für my.deine-domain.org korrekt gesetzt ist. Dieser Eintrag sollte auf die IP-Adresse des Servers verweisen, auf dem Traefik läuft. Nutze hierfür deinen DNS-Verwaltungsdienst, wie beispielsweise Cloudflare, um den entsprechenden Eintrag hinzuzufügen.

Vorstellung von Docker und Docker Compose

Docker ermöglicht es, Anwendungen in isolierten Containern zu betreiben, was ihre Bereitstellung und Skalierung erheblich vereinfacht. Docker Compose ist ein Tool, mit dem du Multi-Container-Anwendungen definieren und starten kannst. Es hilft dabei, komplexe Anwendungsumgebungen mit wenigen Befehlen zu verwalten.

Präsentation der Docker Compose für getHomepage

getHomepage

Der getHomepage-Dienst stellt das Dashboard zur Verfügung und wird über Traefik zugänglich gemacht:

services:
  homepage:
    image: ghcr.io/gethomepage/homepage:latest
    container_name: homepage
    ports:
      - "3030:3000"
    volumes:
      - /dein/homepage/pfad:/app/config  # Ersetze '/dein/homepage/pfad' mit dem tatsächlichen Pfad
      - /var/run/docker.sock:/var/run/docker.sock:ro  # Optional, für Docker-Integrationen
    restart: unless-stopped
    labels:
      - "traefik.enable=true"
      - "traefik.http.routers.homepage.rule=Host(`my.deine-domain.org`)"  # Ersetze 'deine-domain.org' mit deiner tatsächlichen Domain
      - "traefik.http.routers.homepage.entrypoints=websecure"
      - "traefik.http.routers.homepage.tls.certresolver=lets-encrypt"
      - "traefik.http.services.homepage.loadbalancer.server.port=3000"
    networks:
      - web

Erklärung der Konfiguration

  • Volumes: Der Pfad /dein/homepage/pfad muss auf ein spezifisches Verzeichnis auf deinem Host-System angepasst werden, in dem die Konfigurationsdateien von getHomepage abgelegt und bearbeitet werden können. Dadurch kannst du die Einstellungen für dein Dashboard zentral speichern und bei Bedarf ändern.

Traefik

Die Traefik-Labels sind entscheidend, um den Dienst korrekt zu konfigurieren und den Datenverkehr entsprechend weiterzuleiten:

  • traefik.enable=true: Aktiviert Traefik für diesen Dienst, sodass Traefik den Dienst überwacht und Anfragen weiterleitet.
  • traefik.http.routers.homepage.rule=Host('my.deine-domain.org'): Definiert die Bedingung für die URL-Zuordnung, die festlegt, dass Anfragen an my.deine-domain.org an den getHomepage-Dienst weitergeleitet werden.
  • traefik.http.routers.homepage.entrypoints=websecure: Weist Traefik an, diesen Dienst über den websecure EntryPoint bereitzustellen, der für HTTPS-Verkehr verwendet wird.
  • traefik.http.routers.homepage.tls.certresolver=lets-encrypt: Gibt an, dass Traefik Let’s Encrypt verwendet, um den HTTPS-Verkehr zu sichern.
  • traefik.http.services.homepage.loadbalancer.server.port=3000: Gibt den internen Port des getHomepage-Dienstes an, auf den Traefik den Verkehr weiterleitet.

Netzwerke

Die Netzwerkeinstellungen definieren das Netzwerk, das Traefik für die Verbindung der Dienste verwendet:

networks:
  web:
    external: true  # Verwendet ein externes Netzwerk, das von Traefik verwaltet wird

Dieser Abschnitt definiert das Netzwerk, das von Traefik verwendet wird, um die verschiedenen Dienste miteinander zu verbinden und die Verbindungen zu verwalten.

Fazit

Mit dieser Anleitung kannst du getHomepage effizient und sicher mit Traefik und Docker bereitstellen. Die Konfiguration ist flexibel und kann leicht an individuelle Anforderungen angepasst werden. Für weitere Fragen oder eine professionelle Betreuung schau in unseren Discord-Channel. Wir unterstützen dich gerne bei der optimalen Einrichtung und Verwaltung deiner Anwendungen.

Komplette Docker Compose

Hier ist die vollständige docker-compose.yml Datei für die getHomepage-Installation:

version: "3.3"

services:
  homepage:
    image: ghcr.io/gethomepage/homepage:latest
    container_name: homepage
    ports:
      - "3030:3000"
    volumes:
      - /dein/homepage/pfad:/app/config  # Ersetze '/dein/homepage/pfad' mit dem tatsächlichen Pfad
      - /var/run/docker.sock:/var/run/docker.sock:ro  # Optional, für Docker-Integrationen
    restart: unless-stopped
    labels:
      - "traefik.enable=true"
      - "traefik.http.routers.homepage.rule=Host(`my.deine-domain.org`)"  # Ersetze 'deine-domain.org' mit deiner tatsächlichen Domain
      - "traefik.http.routers.homepage.entrypoints=websecure"
      - "traefik.http.routers.homepage.tls.certresolver=lets-encrypt"
      - "traefik.http.services.homepage.loadbalancer.server.port=3000"
    networks:
      - web

networks:
  web:
    external: true  # Verwendet ein externes Netzwerk, das von Traefik verwaltet wird
ayedo Alien Discord

Werde Teil der ayedo Community

In unserer Discord Community findest du Antworten auf deine Fragen rund um das Thema ayedo, Kubernetes und Open Source. Hier erfährst du in Realtime was es Neues bei ayedo und unseren Partnern gibt und hast die Möglichkeit mit unserem Team in direkten Kontakt zu treten.

Join the Community ↗

Ähnliche Inhalte

Alle Blogs →



Fabian Peter · 10.06.2024 · ⏳ 3 Minuten

Compliance leicht gemacht: Die ISO27001 als Schlüssel zur Einhaltung gesetzlicher Vorschriften

Compliance leicht gemacht: Die ISO27001 als Schlüssel zur Einhaltung gesetzlicher Vorschriften Die Einhaltung gesetzlicher Anforderungen und Datenschutzrichtlinien ist für Unternehmen eine ständige …

Lesen →

Lewin Grunenberg · 09.06.2024 · ⏳ 3 Minuten

Baserow mit Traefik-Labels bereitstellen und unter DNS-Eintrag nutzen

Einleitung In diesem Beitrag zeigen wir dir, wie du Baserow mithilfe von Docker Compose und Traefik bereitstellen und es über einen DNS-Eintrag wie https://data.deine-domain.org zugänglich machen …

Lesen →

Lewin Grunenberg · 09.06.2024 · ⏳ 4 Minuten

Mattermost mit Traefik-Labels bereitstellen und unter DNS-Eintrag nutzen

Einleitung In diesem Beitrag zeigen wir dir, wie du Mattermost mit Docker Compose und Traefik bereitstellst und es über einen DNS-Eintrag wie https://chat.deine-domain.org erreichst. Diese …

Lesen →

Lewin Grunenberg · 09.06.2024 · ⏳ 4 Minuten

Paperless-ngx mit Traefik-Labels bereitstellen und unter DNS-Eintrag nutzen

Einleitung In diesem Beitrag zeigen wir dir, wie du Paperless-ngx mit Docker Compose und Traefik bereitstellst und es über einen DNS-Eintrag wie https://docs.deine-domain.org erreichst. Diese …

Lesen →

Lewin Grunenberg · 09.06.2024 · ⏳ 3 Minuten

Portainer mit Traefik-Labels bereitstellen und unter DNS-Eintrag nutzen

Einleitung: Portainer mit Traefik-Labels bereitstellen und unter DNS-Eintrag nutzen In diesem Beitrag zeigen wir dir, wie du Portainer mit Docker Compose und Traefik bereitstellst und es über einen …

Lesen →


Interessiert an weiteren Inhalten? Hier gehts zu allen Blogs →

Kontaktieren Sie uns

Unsere Cloud-Experten beraten Sie gerne und individuell.

Wir antworten in der Regel innerhalb weniger Stunden auf Ihre Nachricht.

Zu Gen-Z für E-Mail? Einfach mal Discord versuchen. Unter +49 800 000 3706 können Sie unter Angabe Ihrer Kontaktdaten auch einen Rückruf vereinbaren. Bitte beachten Sie, dass es keine Möglichkeit gibt, uns telefonisch direkt zu erreichen. Bitte gar nicht erst versuchen. Sollten Sie dennoch Interesse an synchroner Verfügbarkeit via Telefon haben, empfehlen wir Ihnen unseren Priority Support.