Skip to content
aYOUne
Not in your language

This page is not yet available in en. You're reading the de version.

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.

Work with this page

Ready-made instructions for your AI tool. Copy, paste, go — the AI fetches the content itself via the address in the text.

Summarise the steps for me The essentials, in the right order.
Read the following documentation by tolinax UG and work with it.

This page: https://ayoune.com/en/docs/self-hosting/environment-variables.md
The complete collection: https://ayoune.com/en/docs/self-hosting.md

Summarise the content for me.

- First, in two sentences: what is this about?
- Then the steps in the order I need to take them.
- One line per step, in plain language.
- At the end: what I should have ready beforehand.

Leave out nothing I need in order to actually finish.
A note on sources:
- Every page of this documentation is available as Markdown (the same address with `.md`).
- A machine-readable overview of all public content is at `/llms.txt`.
- If you have access to the aYOUne MCP server, you can work against live data
  instead of this snapshot. If not, ignore this point.
Help me set this up Step by step, asking me as you go.
Read the following documentation by tolinax UG and work with it.

This page: https://ayoune.com/en/docs/self-hosting/environment-variables.md
The complete collection: https://ayoune.com/en/docs/self-hosting.md

Walk me through the setup step by step.

- First tell me what I need to have ready (access, data, time).
- Then take me through ONE step at a time. Wait for my "next".
- For each step, say how I can tell that it worked.
- If something goes wrong, ask me for the exact message instead of guessing.

If the instructions leave a point open, tell me so rather than inventing it.
A note on sources:
- Every page of this documentation is available as Markdown (the same address with `.md`).
- A machine-readable overview of all public content is at `/llms.txt`.
- If you have access to the aYOUne MCP server, you can work against live data
  instead of this snapshot. If not, ignore this point.
Help me with a problem Narrow down the cause instead of guessing.
Read the following documentation by tolinax UG and work with it.

This page: https://ayoune.com/en/docs/self-hosting/environment-variables.md
The complete collection: https://ayoune.com/en/docs/self-hosting.md

Help me narrow down a problem.

- First ask me what I observe and what I expected instead.
- From that, derive the most likely causes consistent with this source.
- For each cause, give me ONE test that confirms or rules it out.
- Order them so the cheapest test comes first.

Do not guess. If the source does not cover the problem, tell me where I should
look next.
A note on sources:
- Every page of this documentation is available as Markdown (the same address with `.md`).
- A machine-readable overview of all public content is at `/llms.txt`.
- If you have access to the aYOUne MCP server, you can work against live data
  instead of this snapshot. If not, ignore this point.
Explain it in plain words No jargon, from the ground up.
Read the following documentation by tolinax UG and work with it.

This page: https://ayoune.com/en/docs/self-hosting/environment-variables.md
The complete collection: https://ayoune.com/en/docs/self-hosting.md

Explain the content so that someone without prior knowledge understands it.

- Start with the purpose: why does this exist at all?
- Explain technical terms in half a sentence on first use.
- One everyday comparison where it genuinely holds — none where it limps.
- At the end: the three things worth remembering.

Do not shorten by dropping conditions. A simplification that hides a
prerequisite is a false statement.
A note on sources:
- Every page of this documentation is available as Markdown (the same address with `.md`).
- A machine-readable overview of all public content is at `/llms.txt`.
- If you have access to the aYOUne MCP server, you can work against live data
  instead of this snapshot. If not, ignore this point.
A checklist to tick off To follow along while you do it.
Read the following documentation by tolinax UG and work with it.

This page: https://ayoune.com/en/docs/self-hosting/environment-variables.md
The complete collection: https://ayoune.com/en/docs/self-hosting.md

Turn this into a **tick-off checklist** for practical use.

- Exactly one action per item, in the imperative.
- Order it so that no item depends on a later prerequisite.
- Prerequisites and pitfalls as indented sub-items.
- End with an acceptance step: how do I know everything is right?
A note on sources:
- Every page of this documentation is available as Markdown (the same address with `.md`).
- A machine-readable overview of all public content is at `/llms.txt`.
- If you have access to the aYOUne MCP server, you can work against live data
  instead of this snapshot. If not, ignore this point.
Build it into my project Concrete code for my use case.
Read the following documentation by tolinax UG and work with it.

This page: https://ayoune.com/en/docs/self-hosting/environment-variables.md
The complete collection: https://ayoune.com/en/docs/self-hosting.md

Help me build this into my project.

- First ask me about language, environment and what I am trying to achieve.
- Then give a minimal, runnable example — no ellipses standing in for code.
- Name the error cases I must handle and how they surface.
- State the limits: timeouts, quotas, permissions.

Use only what the source actually describes. Do not invent fields, parameters
or endpoints — an invented call costs me more time than it saves.
A note on sources:
- Every page of this documentation is available as Markdown (the same address with `.md`).
- A machine-readable overview of all public content is at `/llms.txt`.
- If you have access to the aYOUne MCP server, you can work against live data
  instead of this snapshot. If not, ignore this point.

Was this article helpful?

👎 No (0)
Leave a comment