Zum Hauptinhalt springen

Umgebungsvariablen

Um Ihre Anwendung zu konfigurieren, setzen Sie die folgenden Umgebungsvariablen. Diese Variablen steuern verschiedene Aspekte des Anwendungsverhaltens, einschließlich URLs, Datenbankverbindungen und Integrationen von Drittanbietern.

Anwendungskonfiguration

VariableBeispielBeschreibung
APP_URLhttps://docmost.example.comDie Basis-URL Ihrer Anwendung. Sie ist optional, aber nützlich für korrekte E-Mail-Links.
APP_SECRETLONG_SECRET_KEYEin sicherer Schlüssel für die Anwendungssicherheit (mindestens 32 Zeichen). Generieren Sie ihn mit openssl rand -hex 32.
PORT3000Der Port, auf dem die Anwendung ausgeführt wird.
JWT_TOKEN_EXPIRES_IN30dDie Ablaufzeit für JSON Web Tokens (JWT). Der Standardwert beträgt 30 Tage.

Datenbankkonfiguration

VariableBeispielBeschreibung
DATABASE_URLpostgresql://postgres:password@localhost:5432/docmost?schema=publicDie Verbindungs-URL für Ihre PostgreSQL-Datenbank.

Redis-Konfiguration

VariableBeispielBeschreibung
REDIS_URLredis://127.0.0.1:6379Die Verbindungs-URL für Ihren Redis-Server.
Format: redis://username:password@host:port/db-number

Speicherkonfiguration

Lokalen Speicher verwenden

VariableBeispielBeschreibung
STORAGE_DRIVERlocalDer für die Dateispeicherung zu verwendende Speichertreiber.

S3-kompatiblen Speicher verwenden

VariableBeispielBeschreibung
STORAGE_DRIVERs3Der für die Dateispeicherung zu verwendende Speichertreiber.
AWS_S3_ACCESS_KEY_IDIhre AWS-S3-Zugriffsschlüssel-ID.
AWS_S3_SECRET_ACCESS_KEYIhr geheimer AWS-S3-Zugriffsschlüssel.
AWS_S3_REGIONDie Region, in der sich Ihr S3-Bucket befindet.
AWS_S3_BUCKETDer Name Ihres S3-Buckets.
AWS_S3_ENDPOINTDie Endpunkt-URL für Ihren S3-Dienst (optional).
AWS_S3_FORCE_PATH_STYLEtrueErzwingt, dass die Anfrage Path-Style-Adressierung verwendet (optional).

Azure Blob Storage verwenden

VariableBeispielBeschreibung
STORAGE_DRIVERazureDer für die Dateispeicherung zu verwendende Speichertreiber.
AZURE_STORAGE_ACCOUNT_NAMEIhr Azure-Storage-Kontoname.
AZURE_STORAGE_ACCOUNT_KEYIhr Azure-Storage-Kontoschlüssel.
AZURE_STORAGE_CONTAINERDer Name Ihres Blob-Containers.

Größenbeschränkungen für Datei-Uploads

VariableBeispielBeschreibung
FILE_UPLOAD_SIZE_LIMIT50mbDie maximale Dateigröße pro Upload. Der Standardwert ist 50mb.
FILE_IMPORT_SIZE_LIMIT100mbDie maximale Größenbeschränkung für Datei-Importe. Der Standardwert ist 200mb.

E-Mail-Konfiguration

SMTP verwenden

VariableBeispielBeschreibung
MAIL_DRIVERsmtpDer für den E-Mail-Versand zu verwendende E-Mail-Treiber.
SMTP_HOSTsmtp.example.comDer für den E-Mail-Versand zu verwendende SMTP-Server.
SMTP_PORT587Der für den SMTP-Server zu verwendende Port.
SMTP_USERNAMEDer Benutzername für den SMTP-Server.
SMTP_PASSWORDDas Passwort für den SMTP-Server.
SMTP_SECUREfalseVerwendet TLS bei der Verbindung mit dem Server, üblicherweise für Port 465. Standardmäßig false. Siehe nodemailer 'secure' für Details
MAIL_FROM_ADDRESS[email protected]Die E-Mail-Adresse, von der E-Mails gesendet werden.
MAIL_FROM_NAMEDocmostDer Name, unter dem E-Mails gesendet werden.

Postmark verwenden

VariableBeispielBeschreibung
MAIL_DRIVERpostmarkDer für den E-Mail-Versand zu verwendende E-Mail-Treiber.
POSTMARK_TOKENDas Token für Postmark, falls Postmark als MAIL_DRIVER verwendet wird.
MAIL_FROM_ADDRESS[email protected]Die E-Mail-Adresse, von der E-Mails gesendet werden.
MAIL_FROM_NAMEDocmostDer Name, unter dem E-Mails gesendet werden.

AI-Konfiguration (Enterprise)

VariableBeispielBeschreibung
AI_DRIVERopenaiDer zu verwendende AI-Anbieter. Optionen: openai, openai-compatible, gemini, ollama.
AI_EMBEDDING_MODELtext-embedding-3-smallDas für die Erzeugung von Vektor-Embeddings verwendete Modell.
AI_COMPLETION_MODELgpt-4o-miniDas für die Beantwortung von Fragen verwendete Modell.
AI_EMBEDDING_DIMENSION1536Optional. Die Vektordimension für pgvector. Wird für voreingestellte Modelle automatisch erkannt. Unterstützte Werte: 768, 1024, 1536, 2000, 3072.
AI_EMBEDDING_SUPPORTS_MRLtrueOptional. Steuert, ob der Parameter dimensions an die API des Embedding-Modells gesendet wird. Standardmäßig wird die Modellvoreinstellung verwendet, falls verfügbar, andernfalls true. Auf false setzen für Modelle, die keinen dimensions-Parameter akzeptieren.
OPENAI_API_KEYsk-proj-xxxxxIhr OpenAI-API-Schlüssel. Erforderlich, wenn AI_DRIVER auf openai oder openai-compatible gesetzt ist.
OPENAI_API_URLhttps://api.openai.com/v1Optional. Benutzerdefinierter API-Endpunkt für Azure OpenAI oder kompatible Anbieter.
GEMINI_API_KEYAIzaSyxxxxxIhr Google-Gemini-API-Schlüssel. Erforderlich, wenn AI_DRIVER=gemini.
OLLAMA_API_URLhttp://localhost:11434Die URL Ihrer Ollama-Instanz. Erforderlich, wenn AI_DRIVER=ollama.

DRAW.IO (Diagrams.net) Konfiguration

Die standardmäßige Draw.io-Einbettungs-URL ist https://embed.diagrams.net.

VariableBeispielBeschreibung
DRAWIO_URLhttps://embed.diagrams.netDie URL Ihres benutzerdefinierten draw.io-Servers.

Suchkonfiguration (Enterprise)

VariableBeispielBeschreibung
SEARCH_DRIVERtypesenseDer zu verwendende Suchmaschinen-Treiber. Der Standardwert ist postgres (Datenbanksuche). typesense ist eine speziell entwickelte Suchmaschine mit tippfehlertoleranter, schneller Suche, die in der Enterprise Edition verfügbar ist.
TYPESENSE_URLhttp://localhost:8108Die URL Ihres Typesense-Servers. Erforderlich, wenn SEARCH_DRIVER=typesense. (Enterprise)
TYPESENSE_API_KEYyour_api_key_hereIhr Typesense-API-Schlüssel mit Lese-/Schreibberechtigungen. Erforderlich, wenn SEARCH_DRIVER=typesense. (Enterprise)
TYPESENSE_LOCALEenDie Locale für Textanalyse und Suche. Der Standardwert ist en. Beispiele: en, es, fr, de, ja, zh, ko usw. Eine vollständige Liste finden Sie unter Von Typesense unterstützte Sprachen. (Enterprise)

SAML

Der Großteil der SAML-Konfiguration erfolgt über die Seite Einstellungen → Sicherheit & SSO in der App. Die folgende Variable ist die Ausnahme, da sie auf dem Server gesetzt werden muss.

VariableBeispielBeschreibung
SAML_DISABLE_REQUESTED_AUTHN_CONTEXTfalseWenn auf true gesetzt, lässt Docmost das Element RequestedAuthnContext (das PasswordProtectedTransport anfordert) aus der SAML-AuthnRequest weg. Dadurch können Identitätsanbieter wie AD FS ihre Standard-Authentifizierungsmethode verwenden, beispielsweise die integrierte Windows-Authentifizierung für Intranet-Clients. Gilt instanzweit für alle SAML-Anbieter. Standardmäßig false.

Sicherheit

Iframe-Einbettung

Standardmäßig blockiert Docmost die Einbettung Ihrer Instanz in einem <iframe> durch andere Ursprünge. Dies schützt Benutzer vor Clickjacking-Angriffen, bei denen eine bösartige Website Docmost in einem versteckten Frame lädt und angemeldete Benutzer dazu verleitet, auf zerstörerische Aktionen zu klicken. Standardmäßig antwortet Docmost mit X-Frame-Options: SAMEORIGIN, sodass nur Seiten, die von Ihrem eigenen Docmost-Ursprung ausgeliefert werden, Docmost-Inhalte in einem Iframe einbetten können.

Öffentlich geteilte Seiten (/share/...) sind von dieser Einschränkung ausgenommen und können immer von jedem Ursprung aus eingebettet werden. Geteilte Inhalte sind öffentlich, schreibgeschützt und enthalten keine authentifizierten Aktionen, sodass sie keine Clickjacking-Angriffsfläche bieten.

Wenn Sie den Rest von Docmost (die App selbst) berechtigterweise in einem anderen Tool einbetten müssen, beispielsweise in einem Intranet-Portal oder LMS, verwenden Sie die folgenden Variablen.

VariableBeispielBeschreibung
IFRAME_EMBED_ALLOWEDfalseHauptschalter für die externe Iframe-Einbettung. Standardmäßig false, was X-Frame-Options: SAMEORIGIN ausgibt. Auf true setzen, um externe Einbettung zuzulassen.
IFRAME_ALLOWED_ORIGINShttps://intranet.example.com,https://portal.example.comOptionale, durch Kommas getrennte Zulassungsliste. Wird nur berücksichtigt, wenn IFRAME_EMBED_ALLOWED=true. Wenn angegeben, gibt Docmost Content-Security-Policy: frame-ancestors 'self' <origins> anstelle von X-Frame-Options aus. Wenn leer, ist die Einbettung von jedem Ursprung aus zulässig.

Telemetrie

Wir erfassen anonym die aktive Version, die Anzahl der Benutzer, die Anzahl der Seiten sowie die Anzahl der Bereiche und Arbeitsbereiche.

VariableBeispielBeschreibung
DISABLE_TELEMETRYtrueZum Deaktivieren der Telemetrie