Files
pfandsystem-demo/nginx.conf

52 lines
1.5 KiB
Nginx Configuration File
Raw Normal View History

events {}
http {
include mime.types;
default_type application/octet-stream;
client_max_body_size 20M;
feat(frontend): Tailwind UI + Whitelabel + Multi-Tenant Components Tech: - Tailwind 3.4 + PostCSS + Autoprefixer - Inter via rsms.me, Slate + Indigo (brand-* Farbpalette) - Komponenten-Klassen .btn-{primary|secondary|danger|ghost}, .input, .label, .card, .badge-* Visuelles Refresh: - Logo entfernt - Wortmarke Pfandsystem mit Mono-Box - Login: zentriertes Card-Layout mit Tenant-Slug-Toggle - TopNav: cleanes Header mit Tabs + User-Menue, Demo-Badge - Konsistente Card/Table/Badge-Patterns ueber alle Views - Mobile-First (Tabellen scrollen, Filter wrap) Komponenten neu/umgebaut: - Auth/Login.jsx - Tenant-Slug aus URL-Param ?tenant=... - Auth/PasswordChange.jsx - Dashboard/Dashboard.jsx - Dashboard/TopNav.jsx - inkl. Mobile-Hamburger - Dashboard/Account.jsx (neu) - Dashboard/AdminDashboard.jsx - Soll-Ist mit CSV-Export - Dashboard/VorgangsListe.jsx - Dashboard/BildModal.jsx - Eingabe/VorgangForm.jsx - Kunden-Info-Popup mit Hinweis+Bildern+Maps - KundenVerwaltung.jsx - inkl. Anlieferungshinweis, Lieferzeit, Bilder-Modal - MitarbeiterVerwaltung.jsx - Aktiv-Toggle, Fahrer-Rolle - Geraete.jsx (neu) - CRUD mit Status-Badges, Filter - TourPlanung.jsx (neu) - Sortiert nach Lieferzeit, Navi-Button, Done-Persistenz - SuperAdmin.jsx (neu) - Tenant-Liste + Demo-Anlage-Modal + Verlaengern API Client: - relative URL /api (Traefik-Proxy) - Tenant-Slug im Login - Endpoints fuer tenants, geraete, kunden-bilder Sonstiges: - nginx.conf: SSL raus (Traefik macht TLS), Host-Lock raus, Gzip, immutable Cache - docker-compose: Frontend baut via Dockerfile (multi-stage) - Manifest/Theme: #4338ca (Indigo) - Aufgeraeumt: alte Supabase-Reste, Logout-Komponente (jetzt im Menu), nicht mehr noetige Deploy-Skripte
2026-05-26 13:18:13 +00:00
sendfile on;
keepalive_timeout 65;
feat(frontend): Tailwind UI + Whitelabel + Multi-Tenant Components Tech: - Tailwind 3.4 + PostCSS + Autoprefixer - Inter via rsms.me, Slate + Indigo (brand-* Farbpalette) - Komponenten-Klassen .btn-{primary|secondary|danger|ghost}, .input, .label, .card, .badge-* Visuelles Refresh: - Logo entfernt - Wortmarke Pfandsystem mit Mono-Box - Login: zentriertes Card-Layout mit Tenant-Slug-Toggle - TopNav: cleanes Header mit Tabs + User-Menue, Demo-Badge - Konsistente Card/Table/Badge-Patterns ueber alle Views - Mobile-First (Tabellen scrollen, Filter wrap) Komponenten neu/umgebaut: - Auth/Login.jsx - Tenant-Slug aus URL-Param ?tenant=... - Auth/PasswordChange.jsx - Dashboard/Dashboard.jsx - Dashboard/TopNav.jsx - inkl. Mobile-Hamburger - Dashboard/Account.jsx (neu) - Dashboard/AdminDashboard.jsx - Soll-Ist mit CSV-Export - Dashboard/VorgangsListe.jsx - Dashboard/BildModal.jsx - Eingabe/VorgangForm.jsx - Kunden-Info-Popup mit Hinweis+Bildern+Maps - KundenVerwaltung.jsx - inkl. Anlieferungshinweis, Lieferzeit, Bilder-Modal - MitarbeiterVerwaltung.jsx - Aktiv-Toggle, Fahrer-Rolle - Geraete.jsx (neu) - CRUD mit Status-Badges, Filter - TourPlanung.jsx (neu) - Sortiert nach Lieferzeit, Navi-Button, Done-Persistenz - SuperAdmin.jsx (neu) - Tenant-Liste + Demo-Anlage-Modal + Verlaengern API Client: - relative URL /api (Traefik-Proxy) - Tenant-Slug im Login - Endpoints fuer tenants, geraete, kunden-bilder Sonstiges: - nginx.conf: SSL raus (Traefik macht TLS), Host-Lock raus, Gzip, immutable Cache - docker-compose: Frontend baut via Dockerfile (multi-stage) - Manifest/Theme: #4338ca (Indigo) - Aufgeraeumt: alte Supabase-Reste, Logout-Komponente (jetzt im Menu), nicht mehr noetige Deploy-Skripte
2026-05-26 13:18:13 +00:00
gzip on;
gzip_vary on;
gzip_min_length 1024;
gzip_types text/plain text/css application/json application/javascript
application/xml+rss text/xml application/xml image/svg+xml;
server {
feat(frontend): Tailwind UI + Whitelabel + Multi-Tenant Components Tech: - Tailwind 3.4 + PostCSS + Autoprefixer - Inter via rsms.me, Slate + Indigo (brand-* Farbpalette) - Komponenten-Klassen .btn-{primary|secondary|danger|ghost}, .input, .label, .card, .badge-* Visuelles Refresh: - Logo entfernt - Wortmarke Pfandsystem mit Mono-Box - Login: zentriertes Card-Layout mit Tenant-Slug-Toggle - TopNav: cleanes Header mit Tabs + User-Menue, Demo-Badge - Konsistente Card/Table/Badge-Patterns ueber alle Views - Mobile-First (Tabellen scrollen, Filter wrap) Komponenten neu/umgebaut: - Auth/Login.jsx - Tenant-Slug aus URL-Param ?tenant=... - Auth/PasswordChange.jsx - Dashboard/Dashboard.jsx - Dashboard/TopNav.jsx - inkl. Mobile-Hamburger - Dashboard/Account.jsx (neu) - Dashboard/AdminDashboard.jsx - Soll-Ist mit CSV-Export - Dashboard/VorgangsListe.jsx - Dashboard/BildModal.jsx - Eingabe/VorgangForm.jsx - Kunden-Info-Popup mit Hinweis+Bildern+Maps - KundenVerwaltung.jsx - inkl. Anlieferungshinweis, Lieferzeit, Bilder-Modal - MitarbeiterVerwaltung.jsx - Aktiv-Toggle, Fahrer-Rolle - Geraete.jsx (neu) - CRUD mit Status-Badges, Filter - TourPlanung.jsx (neu) - Sortiert nach Lieferzeit, Navi-Button, Done-Persistenz - SuperAdmin.jsx (neu) - Tenant-Liste + Demo-Anlage-Modal + Verlaengern API Client: - relative URL /api (Traefik-Proxy) - Tenant-Slug im Login - Endpoints fuer tenants, geraete, kunden-bilder Sonstiges: - nginx.conf: SSL raus (Traefik macht TLS), Host-Lock raus, Gzip, immutable Cache - docker-compose: Frontend baut via Dockerfile (multi-stage) - Manifest/Theme: #4338ca (Indigo) - Aufgeraeumt: alte Supabase-Reste, Logout-Komponente (jetzt im Menu), nicht mehr noetige Deploy-Skripte
2026-05-26 13:18:13 +00:00
listen 80 default_server;
root /usr/share/nginx/html;
index index.html;
# API -> Backend (^~ damit Regex-Locations darunter nicht greifen)
location ^~ /api/ {
proxy_pass http://backend:3001/api/;
proxy_http_version 1.1;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
}
# Uploads -> Backend (^~ wichtig, sonst greift die .jpg-Regex-Location unten)
location ^~ /uploads/ {
proxy_pass http://backend:3001/uploads/;
proxy_http_version 1.1;
proxy_set_header Host $host;
add_header Cache-Control "public, max-age=86400";
}
# Cache fuer statische Assets im SPA
feat(frontend): Tailwind UI + Whitelabel + Multi-Tenant Components Tech: - Tailwind 3.4 + PostCSS + Autoprefixer - Inter via rsms.me, Slate + Indigo (brand-* Farbpalette) - Komponenten-Klassen .btn-{primary|secondary|danger|ghost}, .input, .label, .card, .badge-* Visuelles Refresh: - Logo entfernt - Wortmarke Pfandsystem mit Mono-Box - Login: zentriertes Card-Layout mit Tenant-Slug-Toggle - TopNav: cleanes Header mit Tabs + User-Menue, Demo-Badge - Konsistente Card/Table/Badge-Patterns ueber alle Views - Mobile-First (Tabellen scrollen, Filter wrap) Komponenten neu/umgebaut: - Auth/Login.jsx - Tenant-Slug aus URL-Param ?tenant=... - Auth/PasswordChange.jsx - Dashboard/Dashboard.jsx - Dashboard/TopNav.jsx - inkl. Mobile-Hamburger - Dashboard/Account.jsx (neu) - Dashboard/AdminDashboard.jsx - Soll-Ist mit CSV-Export - Dashboard/VorgangsListe.jsx - Dashboard/BildModal.jsx - Eingabe/VorgangForm.jsx - Kunden-Info-Popup mit Hinweis+Bildern+Maps - KundenVerwaltung.jsx - inkl. Anlieferungshinweis, Lieferzeit, Bilder-Modal - MitarbeiterVerwaltung.jsx - Aktiv-Toggle, Fahrer-Rolle - Geraete.jsx (neu) - CRUD mit Status-Badges, Filter - TourPlanung.jsx (neu) - Sortiert nach Lieferzeit, Navi-Button, Done-Persistenz - SuperAdmin.jsx (neu) - Tenant-Liste + Demo-Anlage-Modal + Verlaengern API Client: - relative URL /api (Traefik-Proxy) - Tenant-Slug im Login - Endpoints fuer tenants, geraete, kunden-bilder Sonstiges: - nginx.conf: SSL raus (Traefik macht TLS), Host-Lock raus, Gzip, immutable Cache - docker-compose: Frontend baut via Dockerfile (multi-stage) - Manifest/Theme: #4338ca (Indigo) - Aufgeraeumt: alte Supabase-Reste, Logout-Komponente (jetzt im Menu), nicht mehr noetige Deploy-Skripte
2026-05-26 13:18:13 +00:00
location ~* \.(?:js|css|woff2?|ttf|eot|jpg|jpeg|png|gif|svg|ico|webp)$ {
expires 1y;
feat(frontend): Tailwind UI + Whitelabel + Multi-Tenant Components Tech: - Tailwind 3.4 + PostCSS + Autoprefixer - Inter via rsms.me, Slate + Indigo (brand-* Farbpalette) - Komponenten-Klassen .btn-{primary|secondary|danger|ghost}, .input, .label, .card, .badge-* Visuelles Refresh: - Logo entfernt - Wortmarke Pfandsystem mit Mono-Box - Login: zentriertes Card-Layout mit Tenant-Slug-Toggle - TopNav: cleanes Header mit Tabs + User-Menue, Demo-Badge - Konsistente Card/Table/Badge-Patterns ueber alle Views - Mobile-First (Tabellen scrollen, Filter wrap) Komponenten neu/umgebaut: - Auth/Login.jsx - Tenant-Slug aus URL-Param ?tenant=... - Auth/PasswordChange.jsx - Dashboard/Dashboard.jsx - Dashboard/TopNav.jsx - inkl. Mobile-Hamburger - Dashboard/Account.jsx (neu) - Dashboard/AdminDashboard.jsx - Soll-Ist mit CSV-Export - Dashboard/VorgangsListe.jsx - Dashboard/BildModal.jsx - Eingabe/VorgangForm.jsx - Kunden-Info-Popup mit Hinweis+Bildern+Maps - KundenVerwaltung.jsx - inkl. Anlieferungshinweis, Lieferzeit, Bilder-Modal - MitarbeiterVerwaltung.jsx - Aktiv-Toggle, Fahrer-Rolle - Geraete.jsx (neu) - CRUD mit Status-Badges, Filter - TourPlanung.jsx (neu) - Sortiert nach Lieferzeit, Navi-Button, Done-Persistenz - SuperAdmin.jsx (neu) - Tenant-Liste + Demo-Anlage-Modal + Verlaengern API Client: - relative URL /api (Traefik-Proxy) - Tenant-Slug im Login - Endpoints fuer tenants, geraete, kunden-bilder Sonstiges: - nginx.conf: SSL raus (Traefik macht TLS), Host-Lock raus, Gzip, immutable Cache - docker-compose: Frontend baut via Dockerfile (multi-stage) - Manifest/Theme: #4338ca (Indigo) - Aufgeraeumt: alte Supabase-Reste, Logout-Komponente (jetzt im Menu), nicht mehr noetige Deploy-Skripte
2026-05-26 13:18:13 +00:00
add_header Cache-Control "public, immutable";
try_files $uri =404;
}
# SPA fallback
location / {
try_files $uri $uri/ /index.html;
}
}
}