Skip to content

Deployment

Joshua Phu Kuhrau edited this page Jul 23, 2026 · 2 revisions

Deployment

Produktions-Setup

# Produktions-Compose verwenden
docker compose -f docker-compose.prod.yml up -d

# Migrationen ausführen
docker compose -f docker-compose.prod.yml exec backend alembic upgrade head

Nginx / Reverse Proxy

Die nginx/-Konfiguration übernimmt:

  • SSL-Terminierung
  • Routing an Backend
  • Static File Serving
server {
    listen 443 ssl;
    server_name workmate.example.com;

    location /api/ {
        proxy_pass http://backend:8000;
    }
}

Empfohlene Server-Specs

Komponente Minimum Empfohlen
CPU 2 Cores 4 Cores
RAM 2 GB 4 GB
Storage 20 GB 50 GB+
OS Ubuntu 22.04 Ubuntu 24.04

Backup

# Datenbank sichern (User & DB heißen beide workmate_private, nicht workmate)
docker compose -f docker-compose.prod.yml exec postgres pg_dump -U workmate_private workmate_private > backup.sql

# Dateien sichern (Upload-Volume)
docker run --rm -v workmate_private_uploads:/data -v "$PWD":/backup alpine tar -czf /backup/files_backup.tar.gz -C /data .

Updates

git pull
docker compose -f docker-compose.prod.yml pull
docker compose -f docker-compose.prod.yml up -d
docker compose -f docker-compose.prod.yml exec backend alembic upgrade head

Deploy läuft in der Praxis über GitHub Actions (deploy.yml, docker-build.yml) — ARM64-Build dauert ca. 20 Minuten.


API Reference | → Contributing

Clone this wiki locally