Files
dell01/README.md

2.2 KiB
Raw Permalink Blame History

dell01

Docker-Infrastruktur für Dell01 (OptiPlex 3060 Micro, Ubuntu 24.04).

Architektur

Internet
  └── Cloudflare Edge
        └── Cloudflare Tunnel (cloudflared)
              └── Traefik (Wildcard-Cert via Cloudflare DNS-Challenge)
                    └── Alle Docker-Container

Ersteinrichtung

cp .env.example .env
# .env befüllen (alle Variablen, siehe Kommentare)
make setup
make all-up

.env vorbereiten

Variable Beschreibung
DOMAIN Aktive Domain, z.B. home2.dnlm.de
INWX_USERNAME INWX Login-Name
INWX_PASSWORD INWX Passwort
CLOUDFLARE_TUNNEL_TOKEN Zero Trust → Networks → Tunnels → Tunnel erstellen
TRAEFIK_DASHBOARD_USER echo $(htpasswd -nb admin PW) | sed -e 's/\$/\$\$/g'

Cloudflare Tunnel konfigurieren

Tunnel anlegen: Zero Trust → Networks → Tunnels → Token kopieren.

Public Hostname im Dashboard: *.${DOMAIN}https://traefik:443

Alternativ (ohne Cloudflare-Zone): Tunnel-UUID aus dem Dashboard nehmen und bei INWX manuell setzen:

*.home2  CNAME  <tunnel-uuid>.cfargotunnel.com

Dann ingress in services/cloudflared/config.yaml konfigurieren (statt Dashboard).

Domain-Umstieg (home2 → home)

# In .env ändern:
DOMAIN=home.dnlm.de

make setup        # traefik.yaml neu generieren
make all-down
make all-up

Services

Service URL Compose
Traefik traefik.home2.dnlm.de services/traefik/
Gitea gitea.home2.dnlm.de services/gitea/
cloudflared services/cloudflared/

Neuen Service hinzufügen

Nur Traefik-Labels in die docker-compose.yaml:

labels:
  - "traefik.enable=true"
  - "traefik.http.routers.SERVICENAME.rule=Host(`SERVICENAME.home2.dnlm.de`)"
  - "traefik.http.routers.SERVICENAME.entrypoints=websecure"
  - "traefik.http.routers.SERVICENAME.tls=true"
  - "traefik.http.services.SERVICENAME.loadbalancer.server.port=PORT"

Netzwerk proxy als external einbinden fertig.