swarm_full/README.md aktualisiert

This commit is contained in:
2025-01-04 21:22:23 +00:00
parent 9b37832a11
commit fa1f0d84ad

View File

@@ -1,5 +1,18 @@
# Konfiguration
## Vorhandene Konfigurationen anpassen
Es ist sinnvoll, Konfigurationen anzupassen. Die in die Services eingebundenen Dateien können von den jeweiligen Repositories geladen werden, oder über das Starten der Container mit einem Docker-Volume manuell kopiert werden. Wir empfehlen das Laden der Konfigurationsdateien aus den Git-Repositories.
Diese finden Sie hier:
- https://git.send.nrw/sendnrw/nginx
- https://git.send.nrw/sendnrw/php84
- https://git.send.nrw/sendnrw/php83
- https://git.send.nrw/sendnrw/redis
Wenn Sie keine Konfigurationen anpassen möchten, können Sie auf alle Bind-Volumes verzichten, außer `/docker/mnt/stack0/web1/src:/usr/share/nginx/html`
Beachten Sie, hier ebenfalls den Pfad des Hosts auf Ihre Umgebung anzupassen.
## Network
- Das Netzwerk ist typisch für die Swarm-Konfiguration auf overlay eingestellt.
@@ -9,6 +22,7 @@
- Hier verwenden wir einen Bind, um bestimmte Konfigurationen in den Container einzubinden.
- Möglicherweise müssen Sie bei der Verwendung mehrerer Stacks den Stack-Namen `web1` durch einen anderen Namen ersetzen.
- Achten Sie beim Deployment in einem Swarm darauf keine Volumes zu verwenden, da diese nicht Node-Übergreifend sind. In diesem Beispiel wird davon ausgegangen, das der Pfad `stack0` über Mounts wie z.B. glusterfs in alle Nodes eingebunden ist und allen Nodes zur Verfügung steht.
## Traefik-Labels
@@ -20,6 +34,15 @@
### Replicas
- Die Anzahl der Replicas steht hier standardmäßig auf `1`, außer beim Webservice, wo es `3` Replicas sind. Passen Sie dies je nach Bedarf an. Beachten Sie, den Service Redis nicht >1 zu stellen, da ansonsten die Sessions innerhalb von PHP nicht mehr konsistent sind!
### Update-Config
- Die Update-Config steht auf `1` mit einem delay von `10s`. Bei einem Update des Services werden also alle 3 Container im Abstand von 10 Sekunden aktualisiert und somit gibt es keine Downtime bei der Aktualisierung.
### Restart-Policy
- Die Restart-Policy ist auf `on-failure` gesetzt, damit der Container nur bei Fehlern neu startet.
### Placement
- Das Placement ist so eingestellt, das die Dienste nur auf Worker-Nodes (`node.role != manager`) und nicht auf Manager-Nodes bereitgestellt werden.