Zum Inhalt springen
aYOUne

Environment Variables

Environment Variables

aYOUne verwendet eine einzelne ConfigMap (ayoune in K8s, .env in Compose) für alle Services. Das macht das Multi-Service-Setup einfacher zu pflegen — eine Variable, die du einmal setzt, ist überall verfügbar.

Pflicht-Variablen

Variable Default Beschreibung
MONGO_URL — MongoDB-Connection-String (Replicaset!)
REDIS_URL — Redis-Connection (redis://...)
JWT_SECRET — Min. 32 Zeichen, geheim
AYOUNE_VERSION aktuelle Plattform-Version (für Audit-Tagging)
LICENSE_KEY trial HMAC-SHA256 License-Key
BASE_URL — Public-Hostname (z.B. https://app.firma.tld)

Optionale Foundation

Variable Default Beschreibung
MONGO_DB_NAME ayoune DB-Name innerhalb des Replicasets
REDIS_DB 0 Redis-Logical-DB
JWT_REFRESH_SECRET = JWT_SECRET Eigenes Secret für Refresh-Tokens
JWT_ACCESS_TTL 15m Access-Token Lebensdauer
JWT_REFRESH_TTL 30d Refresh-Token Lebensdauer
STORAGE_TYPE gcs gcs / s3 / local
STORAGE_BUCKET — Bucket-Name

Module-spezifisch

Variable Modul Zweck
OPENAI_API_KEY ai Default LLM-Provider
ANTHROPIC_API_KEY ai Claude-Models
STRIPE_SECRET_KEY payments Stripe-Charges
PAYPAL_CLIENT_ID payments PayPal-Webhooks
TWILIO_ACCOUNT_SID notifications SMS / Voice
SENDGRID_API_KEY notifications Mail-Versand
VAPID_PUBLIC / VAPID_PRIVATE notifications Web-Push
GOOGLE_CLOUD_PROJECT infrastructure GCP-Auth
AYOUNE_WORKER_PROBE_PORT core Worker-Probe-Port (default 3000)
AYOUNE_RELEASE_NAME core Scope-Name für registerModuleStates

Service-Discovery

Im K8s-Setup verbinden sich Services intern via DNS — kein extra Setup nötig:

api-crm.develop.svc.cluster.local:3000

Im Compose-Setup nutzt jedes Service den Namen aus docker-compose.yml:

api-crm:3000

CORS

Variable Default Beschreibung
CORS_ORIGIN_OVERRIDE — Komma-Liste zusätzlicher Origins (überspringt aYOUneCustomers.allowedOrigins[])
CORS_ALLOW_CREDENTIALS true Access-Control-Allow-Credentials

Boot-Watchdog

Seit Core 2026.46.0 killt ein 60s-Boot-Watchdog Pods, deren essentielle Init-Phase (DB + Models + License) nicht durchläuft. Tuning:

AYOUNE_BOOT_WATCHDOG_MS=60000   # default
AYOUNE_BOOT_WATCHDOG_DISABLED=false

Background-Subsysteme (Logger, JobQ, Monitoring) blocken ay.ready nicht — Probleme dort tauchen als subsystem_error auf, nicht als Crash.

Secrets via External-Secret-Manager

Statt Plain-Text-Secrets in Compose/Helm:

  • GKE: Secret-Manager mit Workload-Identity
  • Hetzner: HCP Vault Secrets oder bitwarden secrets
  • AWS: Secrets Manager

Die ConfigMap enthält dann nur Referenzen, kein Klartext.

Siehe auch: Docker-Compose, Kubernetes, Upgrades.

Mit dieser Seite weiterarbeiten

Fertige Anweisungen für dein KI-Werkzeug. Kopieren, einfügen, loslegen — die KI holt sich den Inhalt selbst über die Adresse im Text.

Die Schritte für mich zusammenfassen Das Wesentliche, in der richtigen Reihenfolge.
Lies die folgende Dokumentation von tolinax UG und arbeite damit.

Diese Seite: https://ayoune.com/de/docs/self-hosting/environment-variables.md
Die vollständige Sammlung: https://ayoune.com/de/docs/self-hosting.md

Fasse den Inhalt für mich zusammen.

- Zuerst in zwei Sätzen: worum geht es hier?
- Dann die Schritte in der Reihenfolge, in der ich sie gehen muss.
- Je Schritt eine Zeile, in einfacher Sprache.
- Am Ende: was ich vorher bereithalten sollte.

Lass nichts weg, was ich brauche, um wirklich fertig zu werden.
Hinweis zu den Quellen:
- Jede Seite dieser Dokumentation ist als Markdown abrufbar (dieselbe Adresse mit `.md`).
- Ein maschinenlesbarer Überblick aller öffentlichen Inhalte liegt unter `/llms.txt`.
- Falls du Zugriff auf den aYOUne-MCP-Server hast, kannst du damit gegen lebende Daten
  arbeiten statt gegen diese Momentaufnahme. Falls nicht, ignoriere diesen Punkt.
Bei der Einrichtung helfen Schritt für Schritt, mit Rückfragen an mich.
Lies die folgende Dokumentation von tolinax UG und arbeite damit.

Diese Seite: https://ayoune.com/de/docs/self-hosting/environment-variables.md
Die vollständige Sammlung: https://ayoune.com/de/docs/self-hosting.md

Begleite mich Schritt für Schritt durch die Einrichtung.

- Sag mir zuerst, was ich bereithalten muss (Zugänge, Daten, Zeit).
- Dann führe mich EINEN Schritt nach dem anderen. Warte auf mein "weiter".
- Nenne je Schritt, woran ich merke, dass er geklappt hat.
- Wenn etwas schiefgeht, frag nach der genauen Meldung, statt zu raten.

Wenn die Anleitung eine Stelle offen lässt, sag mir das, statt sie zu erfinden.
Hinweis zu den Quellen:
- Jede Seite dieser Dokumentation ist als Markdown abrufbar (dieselbe Adresse mit `.md`).
- Ein maschinenlesbarer Überblick aller öffentlichen Inhalte liegt unter `/llms.txt`.
- Falls du Zugriff auf den aYOUne-MCP-Server hast, kannst du damit gegen lebende Daten
  arbeiten statt gegen diese Momentaufnahme. Falls nicht, ignoriere diesen Punkt.
Bei einem Problem weiterhelfen Ursache eingrenzen statt raten.
Lies die folgende Dokumentation von tolinax UG und arbeite damit.

Diese Seite: https://ayoune.com/de/docs/self-hosting/environment-variables.md
Die vollständige Sammlung: https://ayoune.com/de/docs/self-hosting.md

Hilf mir, ein Problem einzugrenzen.

- Frag mich zuerst, was ich beobachte und was ich erwartet hätte.
- Leite daraus die wahrscheinlichsten Ursachen ab, die zu dieser Quelle passen.
- Gib mir je Ursache EINEN Test, der sie bestätigt oder ausschließt.
- Sortiere so, dass der billigste Test zuerst kommt.

Rate nicht. Wenn die Quelle das Problem nicht abdeckt, sag mir, wo ich
weitersuchen sollte.
Hinweis zu den Quellen:
- Jede Seite dieser Dokumentation ist als Markdown abrufbar (dieselbe Adresse mit `.md`).
- Ein maschinenlesbarer Überblick aller öffentlichen Inhalte liegt unter `/llms.txt`.
- Falls du Zugriff auf den aYOUne-MCP-Server hast, kannst du damit gegen lebende Daten
  arbeiten statt gegen diese Momentaufnahme. Falls nicht, ignoriere diesen Punkt.
In einfachen Worten erklären Ohne Fachbegriffe, von Grund auf.
Lies die folgende Dokumentation von tolinax UG und arbeite damit.

Diese Seite: https://ayoune.com/de/docs/self-hosting/environment-variables.md
Die vollständige Sammlung: https://ayoune.com/de/docs/self-hosting.md

Erkläre den Inhalt so, dass ihn jemand ohne Vorwissen versteht.

- Beginne mit dem Zweck: wozu gibt es das überhaupt?
- Fachbegriffe beim ersten Vorkommen in einem Halbsatz erklären.
- Ein Alltags-Vergleich, wo er wirklich trägt — keiner, wo er hinkt.
- Am Ende: die drei Dinge, die man sich merken sollte.

Kürze nicht durch Weglassen von Einschränkungen. Eine Vereinfachung, die eine
Bedingung unterschlägt, ist eine Falschaussage.
Hinweis zu den Quellen:
- Jede Seite dieser Dokumentation ist als Markdown abrufbar (dieselbe Adresse mit `.md`).
- Ein maschinenlesbarer Überblick aller öffentlichen Inhalte liegt unter `/llms.txt`.
- Falls du Zugriff auf den aYOUne-MCP-Server hast, kannst du damit gegen lebende Daten
  arbeiten statt gegen diese Momentaufnahme. Falls nicht, ignoriere diesen Punkt.
Checkliste zum Abhaken Zum Mitgehen während der Umsetzung.
Lies die folgende Dokumentation von tolinax UG und arbeite damit.

Diese Seite: https://ayoune.com/de/docs/self-hosting/environment-variables.md
Die vollständige Sammlung: https://ayoune.com/de/docs/self-hosting.md

Mache daraus eine **abhakbare Checkliste** für die praktische Umsetzung.

- Je Punkt genau eine Handlung, im Imperativ.
- Reihenfolge so, dass kein Punkt eine spätere Voraussetzung braucht.
- Voraussetzungen und Stolperstellen als eingerückte Unterpunkte.
- Am Ende eine Abnahme: woran erkenne ich, dass alles richtig ist?
Hinweis zu den Quellen:
- Jede Seite dieser Dokumentation ist als Markdown abrufbar (dieselbe Adresse mit `.md`).
- Ein maschinenlesbarer Überblick aller öffentlichen Inhalte liegt unter `/llms.txt`.
- Falls du Zugriff auf den aYOUne-MCP-Server hast, kannst du damit gegen lebende Daten
  arbeiten statt gegen diese Momentaufnahme. Falls nicht, ignoriere diesen Punkt.
In mein Projekt einbauen Konkreter Code für meinen Anwendungsfall.
Lies die folgende Dokumentation von tolinax UG und arbeite damit.

Diese Seite: https://ayoune.com/de/docs/self-hosting/environment-variables.md
Die vollständige Sammlung: https://ayoune.com/de/docs/self-hosting.md

Hilf mir, das in mein Projekt einzubauen.

- Frag mich zuerst nach Sprache, Umgebung und dem, was ich erreichen will.
- Gib dann ein minimales, lauffähiges Beispiel — keine Auslassungs-Punkte.
- Benenne die Fehlerfälle, die ich abfangen muss, und wie sie sich zeigen.
- Nenne Grenzen: Zeitlimits, Mengenbegrenzungen, Berechtigungen.

Verwende ausschließlich das, was die Quelle wirklich beschreibt. Erfinde keine
Felder, Parameter oder Endpunkte — ein erfundener Aufruf kostet mich mehr Zeit,
als er spart.
Hinweis zu den Quellen:
- Jede Seite dieser Dokumentation ist als Markdown abrufbar (dieselbe Adresse mit `.md`).
- Ein maschinenlesbarer Überblick aller öffentlichen Inhalte liegt unter `/llms.txt`.
- Falls du Zugriff auf den aYOUne-MCP-Server hast, kannst du damit gegen lebende Daten
  arbeiten statt gegen diese Momentaufnahme. Falls nicht, ignoriere diesen Punkt.

War dieser Artikel hilfreich?

👎 Nein (0)
Kommentar hinterlassen