Markdown

Veröffentlichen

Browser-Apps veröffentlichen

Eine Browser-App aus Flutter Web, React Native Web oder Next.js läuft als Docker-Container auf deinem Server, bekommt ihre Dev-Adresse automatisch und für Produktion deine eigene Domain.

Auf dieser Seite

Browser-Apps sind die Variante deiner App, die im Browser läuft. Die Pipeline baut aus Flutter Web, React Native Web (Expo) oder Next.js ein Docker-Image und rollt es auf den Server deines Projekts aus; für Produktion brauchst du eine Domain. Den Deploy-Ablauf beschreibt Git-Workflow und Deployment.

Wie die Browser-App ausgeliefert wird

Traefik leitet Anfragen anhand der Domain an den Container der Browser-App weiter; HTTPS-Zertifikate richtet MainPath ein. Dev und Produktion sind getrennte Umgebungen mit eigener Konfiguration im gitops-configuration-Repository.

Backend-Adresse und weitere Variablen

MainPath schreibt die Backend-URL der jeweiligen Umgebung in env/dev.generated.env und env/prod.generated.env; stage-übergreifende Werte wie die Sentry-DSN stehen in env/shared.generated.env. Diese Dateien werden bei Änderungen am Projekt neu erzeugt und nicht bearbeitet; eigene Variablen gehören in die passende env/*.custom.env. Wie die Dateien beim Build und bei mp run-local geladen werden, steht unter Umgebungsvariablen.

Die Adressen deiner Browser-App

Umgebung URL
Dev <app>.dev.<projekt>.<organisations-domain>, automatisch vergeben
Produktion deine eigene Domain aus der Projekt-Konfiguration

Für Produktion trägst du deine Domain im Projekt ein; MainPath zeigt im Domain-Detail die nötigen DNS-Einträge und prüft laufend, ob sie gesetzt sind, wie unter DNS konfigurieren beschrieben. Liegt die Domain bei einem verbundenen DNS-Anbieter, setzt MainPath die Einträge selbst, sobald der Zugang unter Anbindungen hinterlegt ist.

Bei einem Whitelabel-Projekt bekommt jede Variante eigene Domains; ohne eigene Domain vergibt MainPath <variante>.<projekt>.<organisations-domain>.

Fehler aus der Browser-App landen in deinem Sentry-Projekt, sobald du die Komponente unter Funktionen dafür aktiviert hast (Error-Tracking).