Caddy per Schalter in der .env statt per CLI-Flag

Frage aus dem Betrieb: laesst sich ein Compose-Abschnitt ueber eine Variable
in der .env zu- und abschalten, statt ihn auszukommentieren? Bedingte Bloecke
kennt Compose nicht - aber COMPOSE_PROFILES darf in der .env stehen und
aktiviert das Profil, ohne dass ein Flag noetig ist.

  COMPOSE_PROFILES=        -> Caddy wird nicht angelegt (Standard)
  COMPOSE_PROFILES=caddy   -> Caddy startet bei `docker-compose up -d` mit

Vorteil gegenueber `--profile caddy`: der Schalter wirkt auch bei down, logs
und ps, wo das Flag leicht vergessen wird und dann verwaiste Container
zurueckbleiben.

Empirisch geprueft mit einem separaten Testprojekt (compose 1.29.2): ohne den
Eintrag startete nur der ungeschuetzte Dienst, mit Eintrag beide.

Dokumentiert in .env.example, im Kommentar am caddy-Dienst und in der README.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
2026-08-19 19:43:59 +02:00
co-authored by Claude Opus 5
parent 22501f4650
commit ffeb4dbfd8
3 changed files with 30 additions and 13 deletions
+11 -3
View File
@@ -54,9 +54,17 @@ JWT_REFRESH_EXPIRES_IN=7d
ENCRYPTION_KEY=change-this-to-64-hex-characters-please-rotate-before-production-xx
# ---------- Optionaler Reverse-Proxy (Caddy) ----------
# Nur nötig, wenn du KEINEN eigenen Reverse-Proxy hast und Caddy das SSL
# übernehmen soll. Starten dann mit: docker-compose --profile caddy up -d
# Ohne dieses Profil bleibt Caddy aus und ändert nichts am Setup.
# Brauchst du nur, wenn du KEINEN eigenen Reverse-Proxy hast (nginx, Nginx
# Proxy Manager, Traefik) und Caddy das SSL übernehmen soll.
#
# EIN/AUS über diesen Schalter nichts auskommentieren:
# leer lassen -> Caddy wird nicht einmal angelegt (Standard)
# =caddy -> Caddy startet bei jedem `docker-compose up -d` mit
# Der Schalter wirkt auch bei `down`, `logs` usw. im Gegensatz zum
# Kommandozeilen-Flag `--profile caddy`, das man leicht vergisst.
COMPOSE_PROFILES=
# Nur relevant, wenn oben `caddy` gesetzt ist:
DOMAIN=crm.example.com
CADDY_DIR=./data/caddy
CADDY_CONFIG_DIR=./data/caddy-config