v1.5: Docker/Compose/.env.example auf selbst gehostetes Postgres umgestellt
Dockerfile: keine NEXT_PUBLIC_*-Build-Args mehr (Branding-URLs sind jetzt relativ, kein Anon-Key-Konzept mehr – das Image wird dadurch umgebungsunabhängig), db/migrate.mjs + scripts/ werden zusätzlich in die Runner-Stage kopiert (nicht Teil von Next's Standalone-Trace), CMD wendet Migrationen an und legt bei Bedarf den Admin an, bevor der Server startet. docker-compose.yml: db-Dienst ist jetzt die primäre Datenbank (kein Supabase-Dump-Mount mehr), neues Volume branding_data für Logo/Favicon, Bind-Mount für ZUGANGSDATEN.md. .env.example: Supabase-Variablen durch DATABASE_URL + optionales ADMIN_EMAIL ersetzt. package.json: @supabase/ssr und @supabase/supabase-js entfernt. README.md komplett auf die neue Architektur aktualisiert.
This commit is contained in:
+9
-11
@@ -1,25 +1,23 @@
|
||||
# Vorlage für .env.local (Entwicklung) bzw. die Umgebungsvariablen
|
||||
# beim Hoster (Live-Betrieb). Echte Werte niemals committen!
|
||||
|
||||
# Supabase-Projekt-URL (Dashboard -> Project Settings -> API)
|
||||
NEXT_PUBLIC_SUPABASE_URL=https://<projekt-ref>.supabase.co
|
||||
|
||||
# Öffentlicher anon-Key (darf im Browser landen, RLS schützt die Daten)
|
||||
NEXT_PUBLIC_SUPABASE_ANON_KEY=<anon-key>
|
||||
|
||||
# Service-Role-Key (GEHEIM! Nur serverseitig, für die Benutzerverwaltung)
|
||||
SUPABASE_SERVICE_ROLE_KEY=<service-role-key>
|
||||
# Verbindung zur (selbst gehosteten) PostgreSQL-Datenbank.
|
||||
DATABASE_URL=postgres://postgres:<passwort>@localhost:5432/canteen_menu
|
||||
|
||||
# Öffentliche URL, unter der die App erreichbar ist (Schema + Domain).
|
||||
# Wird für den CSRF-Origin-Check hinter Reverse-Proxies genutzt und ist
|
||||
# zugleich die Passkey-Domain: nach einer Änderung einmalig
|
||||
# SUPABASE_ACCESS_TOKEN=<token> node scripts/configure-passkeys.mjs
|
||||
# ausführen, damit Passkeys auf der neuen Domain funktionieren.
|
||||
# zugleich die Passkey-Domain (RP-ID/Origin werden direkt daraus
|
||||
# abgeleitet, kein separater Konfigurationsschritt nötig).
|
||||
APP_URL=http://localhost:3000
|
||||
|
||||
# Titel im Browser-Tab und Überschrift, solange kein Logo hochgeladen ist.
|
||||
SITE_TITLE=Canteen Menu
|
||||
|
||||
# Optional: E-Mail-Adresse für den automatisch angelegten Admin-Erstnutzer
|
||||
# (nur relevant, solange die users-Tabelle noch leer ist). Ohne Angabe
|
||||
# wird admin@<Hostname aus APP_URL> verwendet.
|
||||
ADMIN_EMAIL=
|
||||
|
||||
# Optional: DeepL-API-Key für automatische Übersetzung von Gerichten nach
|
||||
# Englisch/Polnisch (kostenloser Free-Tier unter deepl.com/de/pro-api,
|
||||
# Free-Keys enden auf ":fx"). Ohne Key bleibt "Automatisch übersetzen"
|
||||
|
||||
Reference in New Issue
Block a user