Kopieren Sie .env.example nach .env und füllen Sie aus, was Sie brauchen — die wenigen tatsächlich erforderlichen stehen unter Erste Schritte → Installation. Ein leerer Wert in .env fällt auf den hier genannten Standard zurück; NODE_ENV fehlt absichtlich in der Datei, da das Release-Image immer mit NODE_ENV=production läuft und jeder Eintrag hier, selbst ein leerer, das überschreiben würde.
Öffentliche Origin, die der Browser nutzt (nur Origin), z. B. https://app.example.com oder http://localhost:5173.
OSIRIS_APP_DOMAIN
—
Öffentliche App-Domain für die Caddy-Edge (automatisches Let’s-Encrypt-TLS), z. B. app.example.com.
OSIRIS_API_URL
—
Interne API-Basis-URL.
OSIRIS_MODE
—
Betriebsmodus: local | public. Wird vom Einrichtungsassistenten gesetzt; lässt sich hier festlegen.
OSIRIS_EDITION
community
Edition, bis ein Lizenzschlüssel installiert ist: community | business | service_provider.
OSIRIS_LICENSE_PUBLIC_KEY
im Release eingebaut
Optionale Überschreibung des Ed25519-Lizenzprüfschlüssels (roh, base64url).
OSIRIS_UPDATE_CHECK_URL
aus
Opt-in Update-Prüfung: ein öffentlicher Releases-Endpunkt (z. B. eine GitHub-.../releases/latest-URL). Leer bedeutet aus; es werden nie Installationsdaten gesendet.
LOG_LEVEL
info
Log-Level von Worker und Scheduler: debug | info | warn | error.
OSIRIS_VERSION (die laufende Version) wird zur Build-Zeit ins Image geschrieben; setzen Sie sie nicht in .env — ein leerer Wert dort würde sie verbergen.
Passwort für den Postgres-Superuser, den Docker Compose anlegt. POSTGRES_USER/POSTGRES_DB sind standardmäßig osiris.
DATABASE_MIGRATION_URL
— (erforderlich)
Der Datenbankeigentümer; führt nur Migrationen aus.
DATABASE_URL
— (erforderlich)
Die Anwendungsrolle, der Row Level Security unterliegt. Der Migrationsschritt legt sie mit dem hier angegebenen Namen/Passwort an.
DATABASE_PROVIDER_URL
— (erforderlich)
Die Installationsrolle (BYPASSRLS), genauso angelegt.
Drei Rollen, drei Verbindungszeichenfolgen, drei verschiedene Passwörter — siehe Erste Schritte → Die drei Datenbank-Rollen. Die Prozesse starten nicht, wenn sich herausstellt, dass DATABASE_URL ein Superuser ist oder RLS umgehen kann.
Erforderlich. 32-Byte-Schlüsselverschlüsselungsschlüssel (KEK), base64. Umschließt jeden Mandantenschlüssel; bewahren Sie eine Kopie offline auf — siehe Osiris selbst sichern.
BETTER_AUTH_SECRET
Erforderlich. Secret für die eigenen Tokens und Sitzungen des Auth-Systems.
Microsoft Entra (mandantenübergreifende App für Backup, Client Credentials)
Client-ID einer separaten App-Registrierung, die nur für die Anmeldung von Endnutzern genutzt wird (delegiert openid profile email, kein Datenzugriff).
Erlaubt IMAP-Quellen ohne TLS. Nur Entwicklung; niemals in Produktion.
IMAP_ALLOW_PRIVATE_NETWORKS
nur vom Provider gespeicherte
true lässt jede IMAP-Quelle Loopback und private Netze erreichen; standardmäßig können das nur von einer Provider-Administration gespeicherte Server, und Mandanten-Administrationen sind auf öffentliche Server beschränkt.