aYOUne
translate
Not in your language

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

Docker-Compose

Compose ist der einfachste Weg, aYOUne komplett auf einem Host zu betreiben. Profile erlauben dir, nur die Domänen-Module zu starten, die du wirklich brauchst.

Profile

Statt alle ~330 Services hochzuziehen, organisiert Compose Services in Profiles:

Profile Enthält Sinnvoll wenn
core Auth, Config, Users, Hub-API, Aggregation IMMER aktiv
crm crm-api, idcadd-tracking du Lead-Management willst
marketing marketing-api, ads-api, mail-tracking E-Mail-Kampagnen
cms cms-api, page-renderer, snippets Website/Blog
automation automation-api, custom-functions Workflows, Webhooks
ai ai-api, worker-rag, worker-orchestrator Copilot, Chatbots
chat chat-api, communication-api, gateways Live-Chat, WebRTC
wallboard reporting-api-wallboard, viewer-report Dashboards
desktop desktop-update-server Desktop-Client-Distribution

core ist Pflicht. Andere kannst du beliebig mischen.

Start mit Profilen

ay local up core crm marketing
# ODER manuell:
docker compose --profile core --profile crm --profile marketing up -d

Stoppen:

ay local down              # alle Services
docker compose down        # äquivalent

Logs:

ay local logs              # alle
ay local logs api-crm      # gezielt
ay local logs api-crm -f   # follow

dev.ps1 (Windows-First)

Auf Windows-Dev-Maschinen empfiehlt sich das Helper-Script:

.\infrastructure\local\dev.ps1 up [crm marketing]   # Profile hochziehen
.\infrastructure\local\dev.ps1 down                  # alles runterfahren
.\infrastructure\local\dev-service.ps1 -Service api-crm -Port 3001
# ↑ ersetzt Container-api-crm durch dein lokal kompiliertes API

Vorteile: Du editierst Code in WebStorm, die anderen ~329 Services laufen unverändert weiter.

Dev-Tools

Beim Start aktiviert das Compose-File standardmäßig:

Tool URL Zweck
Traefik localhost:8080 Reverse-Proxy + Routing-Dashboard
Redis Commander localhost:8081 Redis browsen
Bull Monitor localhost:8082 BullMQ-Queue-UI

Für Production diese Tools im Compose-File deaktivieren oder hinter VPN packen.

Volumes & Backup

volumes:
  mongo_data:   # /data/db
  redis_data:   # /data/dump.rdb + appendonly.aof
  storage:      # File-Uploads

Backup per Cron:

0 2 * * * docker compose exec -T mongo mongodump --archive --gzip > /backup/mongo-$(date +\%F).archive.gz
0 3 * * * tar czf /backup/storage-$(date +\%F).tar.gz /var/lib/docker/volumes/ayoune_storage/_data

Skalieren auf einem Host

Replikate via Compose-scale:

docker compose up -d --scale worker-notifications=3 --scale api-crm=2

Das funktioniert dank state-loser API-Pods + zentraler MongoDB/Redis. Sticky Sessions sind unnötig (alle Auth via JWT).

Wenn Compose nicht reicht

Bei > 100 aktiven Usern oder strikter HA-Anforderung empfiehlt sich Kubernetes.

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/docker-compose.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/docker-compose.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/docker-compose.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/docker-compose.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/docker-compose.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/docker-compose.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