Fortgeschritten
Ohne Docker betreiben, den Code anpassen, neue Sprachen — für alle, die tiefer wollen.
Docker ist der empfohlene Weg — ein Befehl, wenig Überraschungen. Dieses Kapitel fasst die beiden mitgelieferten Anleitungen für alle anderen Fälle zusammen; die vollständigen Fassungen liegen als docs/manual-install.md und docs/self-build.md im Archiv.
Ohne Docker betreiben
Du brauchst Node.js 20.9+ (getestet wird mit 22), pnpm 10.33.0, PostgreSQL 14+ und einen Reverse-Proxy. Der Kern:
pnpm install --frozen-lockfile
pnpm exec prisma migrate deploy
pnpm build- Reverse-Proxy: Antwort-Pufferung aus (Downloads streamen durch die App), große Request-Bodies erlauben (Produkt-Uploads) und die Besucheradresse weitergeben (
X-Forwarded-For— sonst teilen sich alle Besucher ein Rate-Limit). - Als Dienst betreiben: die systemd-Unit aus
docs/manual-install.mdübernehmen.
Den Code anpassen
- Ändern →
cd docker && docker compose --env-file ../.env up -d --build. Ohne--buildläuft das alte Image weiter — das ist die klassische „warum passiert nichts"-Falle. - Für mehr als Einzeiler: lokal
pnpm dev— Sekunden statt Minuten pro Runde. - Drei Dinge werden generiert und gehören nie von Hand angefasst: der Prisma-Client, die Theme-/Modul-Registries,
next-env.d.ts. - Der Build erzwingt Sicherheitsregeln (fünf Prüfungen): u. a. braucht jede Admin-Aktion und jede Admin-API-Route eine Rollen-Prüfung. Ein Verstoß bricht den Build — absichtlich.
src/core/theme/types.tsundsrc/core/modules/types.tssind eingefroren — gekaufte Themes hängen daran.
Eine Sprache ergänzen
- 1
messages/en.jsonnachmessages/<code>.jsonkopieren und übersetzen - 2
Den Code in
LOCALESinsrc/core/i18n/routing.tseintragen - 3
Neu bauen
Die Sprachliste wird beim Kompilieren aufgelöst — die Datei allein genügt nicht. Ein Test fängt unvollständige Übersetzungen ab, bevor ein roher Schlüssel beim Kunden landet.