it-themen:grundlagen:netzwerkdienste:docker
Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
| Beide Seiten der vorigen RevisionVorhergehende ÜberarbeitungNächste Überarbeitung | Vorhergehende Überarbeitung | ||
| it-themen:grundlagen:netzwerkdienste:docker [04.12.2025 13:28] – [4. Container] lars | it-themen:grundlagen:netzwerkdienste:docker [04.12.2025 13:38] (aktuell) – [Zusammenfassung] lars | ||
|---|---|---|---|
| Zeile 117: | Zeile 117: | ||
| Beispiele: | Beispiele: | ||
| - | * Datenbanken | + | * Datenbanken |
| - | * Konfigurationen | + | * Konfigurationen |
| - | * Zertifikate | + | * Zertifikate |
| - | * Uploads (z. B. Nextcloud) | + | * Uploads (z. B. Nextcloud) |
| Volume-Typen: | Volume-Typen: | ||
| - | * named volumes („docker-volume“) | + | * named volumes („docker-volume“) |
| - | * bind mounts (z. B. / | + | * bind mounts (z. B. / |
| - | ASCII: | ||
| < | < | ||
| - | Container → /data ↔ / | + | |
| + | Container → /data ↔ / | ||
| + | |||
| </ | </ | ||
| + | |||
| --- | --- | ||
| Zeile 154: | Zeile 158: | ||
| Beispiel: | Beispiel: | ||
| < | < | ||
| - | docker network create mynet | + | |
| + | docker network create mynet | ||
| + | |||
| </ | </ | ||
| + | |||
| --- | --- | ||
| Zeile 166: | Zeile 174: | ||
| <code yaml> | <code yaml> | ||
| - | version: " | ||
| - | services: | + | |
| - | web: | + | |
| - | image: nginx | + | services: |
| - | ports: | + | |
| - | - " | + | |
| - | volumes: | + | |
| - | - ./ | + | |
| + | | ||
| + | | ||
| + | |||
| </ | </ | ||
| Zeile 184: | Zeile 195: | ||
| Starten: | Starten: | ||
| - | < | + | < |
| - | docker compose up -d | + | |
| + | | ||
| + | |||
| </ | </ | ||
| + | |||
| --- | --- | ||
| Zeile 195: | Zeile 210: | ||
| Öffentliche: | Öffentliche: | ||
| - | * Docker Hub | + | * Docker Hub |
| - | * GitHub Container Registry | + | * GitHub Container Registry |
| Private: | Private: | ||
| - | * Harbor | + | * Harbor |
| - | * GitLab Registry | + | * GitLab Registry |
| - | * selbst gehosteter Registry-Container | + | * selbst gehosteter Registry-Container |
| --- | --- | ||
| Zeile 207: | Zeile 223: | ||
| ====== 9. Sicherheit in Docker ====== | ====== 9. Sicherheit in Docker ====== | ||
| - | * Container nicht als root ausführen | + | * Container nicht als root ausführen |
| - | * eigene Netzwerke nutzen | + | * eigene Netzwerke nutzen |
| - | * Secrets sicher speichern (docker secrets) | + | * Secrets sicher speichern (docker secrets) |
| - | * nicht „latest“ verwenden | + | * nicht „latest“ verwenden |
| - | * Images regelmäßig aktualisieren | + | * Images regelmäßig aktualisieren |
| - | * wenig privilegierte Container starten (--cap-drop) | + | * wenig privilegierte Container starten (--cap-drop) |
| - | * Traefik/ | + | * Traefik/ |
| --- | --- | ||
| Zeile 222: | Zeile 239: | ||
| < | < | ||
| - | web (nginx) | + | |
| - | db (mariadb) | + | web (nginx) |
| + | | ||
| + | |||
| </ | </ | ||
| - | ===== Dein Home-Lab ===== | + | ===== Mein Home-Lab ===== |
| + | |||
| + | * Traefik | ||
| + | * Portainer | ||
| + | * Vaultwarden | ||
| + | * Nextcloud | ||
| + | * Matrix | ||
| + | * Mailserver | ||
| + | * Monitoring (Grafana, Promtail, Loki) | ||
| + | * CrowdSec | ||
| - | * Traefik | ||
| - | * Portainer | ||
| - | * Vaultwarden | ||
| - | * Nextcloud | ||
| - | * Matrix | ||
| - | * Mailserver | ||
| - | * Monitoring (Grafana, Promtail, Loki) | ||
| - | * CrowdSec | ||
| - | * LDAP + Samba etc. | ||
| ===== Unternehmensumgebung ===== | ===== Unternehmensumgebung ===== | ||
| - | * Microservices | + | * Microservices |
| - | * Load Balancer | + | * Load Balancer |
| - | * CI/CD Pipelines | + | * CI/CD Pipelines |
| - | * API Gateways | + | * API Gateways |
| --- | --- | ||
| Zeile 249: | Zeile 270: | ||
| ====== 11. Best Practices ====== | ====== 11. Best Practices ====== | ||
| - | * eindeutige Verzeichnisstruktur (/ | + | * eindeutige Verzeichnisstruktur (/ |
| - | * alles in Docker Compose statt Einzellauf | + | * alles in Docker Compose statt Einzellauf |
| - | * Secrets in .env oder docker secrets | + | * Secrets in .env oder docker secrets |
| - | * Healthchecks nutzen | + | * Healthchecks nutzen |
| - | * Backups der Volumes nicht vergessen | + | * Backups der Volumes nicht vergessen |
| - | * Logs zentral erfassen (Loki, ELK) | + | * Logs zentral erfassen (Loki, ELK) |
| --- | --- | ||
| Zeile 260: | Zeile 282: | ||
| ====== Zusammenfassung ====== | ====== Zusammenfassung ====== | ||
| - | * Docker nutzt Container statt VMs | + | * Docker nutzt Container statt VMs |
| - | * Images als Vorlage → Container als laufende Instanz | + | * Images als Vorlage → Container als laufende Instanz |
| - | * Volumes speichern Daten permanent | + | * Volumes speichern Daten permanent |
| - | * Docker Networks verbinden Container | + | * Docker Networks verbinden Container |
| - | * Compose verwaltet komplette Anwendungen | + | * Compose verwaltet komplette Anwendungen |
| - | * Container sind leicht, schnell und portabel | + | * Container sind leicht, schnell und portabel |
| - | * Sicherheit ist wichtig (root vermeiden, Updates) | + | * Sicherheit ist wichtig (root vermeiden, Updates) |
| - | * Container sind Standard in DevOps & modernen IT-Umgebungen | + | * Container sind Standard in DevOps & modernen IT-Umgebungen |
it-themen/grundlagen/netzwerkdienste/docker.1764851311.txt.gz · Zuletzt geändert: von lars