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.