> ## Documentation Index
> Fetch the complete documentation index at: https://docs.pachtify360.de/llms.txt
> Use this file to discover all available pages before exploring further.

# Installation und Infrastruktur

> Vorhandene Compose-Dienste, Konfiguration und Abnahme einer Installation.

## Voraussetzungen

Für den selbst betriebenen Betrieb benötigst du eine zur vorhandenen
Compose-Datei passende Container-Umgebung, PostgreSQL, persistente Volumes,
HTTPS-Terminierung und die erforderlichen Netzwerkfreigaben.
Nutze die Dateien `docker-compose.yml` und `docker/Dockerfile.*` im Repository
als verbindliche technische Grundlage.

## Installation vorbereiten

1. Lege die freigegebene Repository-/Image-Version fest.
2. Stelle Datenbank und persistente Speicherung bereit.
3. Konfiguriere die erforderlichen Umgebungsvariablen über die
   Secret-Verwaltung des Betriebs.
4. Richte die Microsoft-Anwendung und ihre Redirect-Adressen passend zur
   tatsächlichen Installation ein.
5. Prüfe Proxy, HTTPS, Cookie-Verhalten und die Weiterleitung von `/api`.
6. Plane die explizit geprüften Datenbankmigrationen vor dem neuen API-Code ein.
7. Starte die Dienste erst nach den betrieblichen Freigaben.

<Warning>
  Ein Docker-/Compose-Betrieb auf dem eigenen Server ist von der
  Entwicklungsumgebung getrennt. Ein Repository-Push oder eine geänderte
  Frontend-Versionsanzeige bestätigt keine erfolgreiche Produktionsinstallation.
</Warning>

## Lesende Erstkontrolle

Im Installationsverzeichnis auf dem eigenen Server:

```bash theme={null}
docker compose ps
docker compose logs --tail=100 api
```

Verwende für einen Healthcheck deine tatsächlich konfigurierte Basisadresse:

```bash theme={null}
curl --fail "$PACHTIFY_BASE_URL/api/healthz"
```

Der derzeitige Healthcheck liefert bei Erfolg `{"status":"ok"}`.
Er prüft nicht sämtliche externen Anbindungen und enthält selbst keine
Softwareversionsnummer.

## Abnahme

Prüfe Anmeldung, Rollen, lesenden Zugriff auf Stammdaten und eine
Entwurfs-PDF. Vergleiche außerdem Image-/API-Startversion, Frontend-Version
und benötigte Datenbankspalten.
Eine Testbuchung oder externe Übertragung ist ein gesonderter Vorgang und
gehört nicht automatisch zur technischen Erstkontrolle.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.