infrastruktur:rz:docker:best-practices
Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
| Beide Seiten der vorigen RevisionVorhergehende ÜberarbeitungNächste Überarbeitung | Vorhergehende Überarbeitung | ||
| infrastruktur:rz:docker:best-practices [2020-09-12 02:43] – hase | infrastruktur:rz:docker:best-practices [2020-09-18 21:08] (aktuell) – hase | ||
|---|---|---|---|
| Zeile 1: | Zeile 1: | ||
| - | ====== Best Practices ====== | + | ====== Best Practices |
| {{tag> storage-server infrastructure shackoperations }} | {{tag> storage-server infrastructure shackoperations }} | ||
| Zeile 6: | Zeile 6: | ||
| | 0.1 | hase | 11-09-2020 | Seite angelegt | | | 0.1 | hase | 11-09-2020 | Seite angelegt | | ||
| | 0.2 | hase | 12-09-2020 | Resourcenplanung/ | | 0.2 | hase | 12-09-2020 | Resourcenplanung/ | ||
| + | | 0.3 | hase | 12-09-2020 | Trennung nach Compose File und Docker Image | | ||
| ====== Best Practices für Docker Images im shack ====== | ====== Best Practices für Docker Images im shack ====== | ||
| Zeile 33: | Zeile 34: | ||
| ===== Optional ===== | ===== Optional ===== | ||
| + | ==== Container ohne Netzwerk ==== | ||
| + | Wenn ein Container kein Netzwerk braucht (watchtower oder autoheal) kann mit Hilfe des Parameters network_mode das Netzwerk ausgeschaltet werden. Dann wird kein " | ||
| + | < | ||
| + | services: | ||
| + | autoheal: | ||
| + | network_mode: | ||
| + | </ | ||
| + | ---- | ||
| ====== Docker Image ====== | ====== Docker Image ====== | ||
| ===== Must-Haves ===== | ===== Must-Haves ===== | ||
| - | ===== docker-compose Example File ===== | + | ==== docker-compose Example File ==== |
| Es muss ein docker-compose.yml Beispiel existieren. | Es muss ein docker-compose.yml Beispiel existieren. | ||
| - | ===== Externe Abhängigkeiten | + | ==== Externe Abhängigkeiten ==== |
| Wenn ein Container eine externe Abhängigkeit hat darf diese nicht hart ausgelegt sein. Crashed der Container in Abwesenheit der Abhängigkeit muss das Design überarbeitet werden. | Wenn ein Container eine externe Abhängigkeit hat darf diese nicht hart ausgelegt sein. Crashed der Container in Abwesenheit der Abhängigkeit muss das Design überarbeitet werden. | ||
| - | |||
| ===== Optional ===== | ===== Optional ===== | ||
| Zeile 49: | Zeile 57: | ||
| [[https:// | [[https:// | ||
| - | ===== CI ===== | + | ==== CI ==== |
| Die Docker Images sollten alle über eine CI Pipeline automatisch über Gitlab Runner gebaut werden. In jedem Git Repo für ein Docker Image muss daher eine .gitlab-ci.yml vorhanden sein. | Die Docker Images sollten alle über eine CI Pipeline automatisch über Gitlab Runner gebaut werden. In jedem Git Repo für ein Docker Image muss daher eine .gitlab-ci.yml vorhanden sein. | ||
| - | ===== Service-Handling | + | ==== Service-Handling ==== |
| Das Service-Handling in Containern kann über viele Wege abgehandelt werden. Empfohlen ist als Entrypoint entweder | Das Service-Handling in Containern kann über viele Wege abgehandelt werden. Empfohlen ist als Entrypoint entweder | ||
| * direkt den Befehlsaufruf mit Parametern oder | * direkt den Befehlsaufruf mit Parametern oder | ||
| * ein Shell-Skript, | * ein Shell-Skript, | ||
| - | |||
| - | ===== Container ohne Netzwerk ===== | ||
| - | Wenn ein Container kein Netzwerk braucht (watchtower oder autoheal) kann mit Hilfe des Parameters network_mode das Netzwerk ausgeschaltet werden. Dann wird kein " | ||
| - | < | ||
| - | services: | ||
| - | autoheal: | ||
| - | network_mode: | ||
| - | </ | ||
| - | |||
| - | |||
| - | |||
| - | |||
| - | |||
| - | |||
infrastruktur/rz/docker/best-practices.1599871400.txt.gz · Zuletzt geändert: von hase
