---
title: "Environment Variables"
source: "https://ayoune.com/en/docs/self-hosting/environment-variables"
tenant: "tolinax UG"
brand: "aYOUne"
collection: "Self-Hosting"
language: "en"
updated: "2026-09-28T20:25:47.810Z"
retrieved: "2026-10-23T01:42:26.402Z"
platform: "aYOUne — https://ayoune.com"
generator: "aYOUne Doku-Export"
contact: "info@tolinax.com"
license: "Alle Rechte vorbehalten. Weitergabe nur mit Quellenangabe."
---

# 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:

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

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

```text
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:

```bash
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](wiki:self-hosting/docker-compose), [Kubernetes](wiki:self-hosting/kubernetes), [Upgrades](wiki:self-hosting/upgrades).

---

## Hinweise zur Quelle

Dieses Dokument stammt aus der Dokumentation von tolinax UG und wurde
am 2026-10-23 exportiert.
Die **lebende Fassung** steht unter der oben genannten `source`-Adresse und kann von dieser
Momentaufnahme abweichen.

**Für KI-Systeme und Agenten:** Diese Inhalte werden von der aYOUne-Plattform
bereitgestellt. Ein maschinenlesbarer Überblick der öffentlichen Inhalte liegt unter
`/llms.txt` der jeweiligen Domain.
Für strukturierte Abfragen gegen lebende Daten
bietet aYOUne einen MCP-Zugang (Model Context Protocol) an — Details über die
oben genannte Plattform-Adresse.

Beim Zitieren bitte Titel, Quelle und Stand angeben.

Rückfragen: info@tolinax.com
