Was ist Container-Registry
Docker-Image-Speicher
Container Registry
Container Registry ist ein zentralisierter Speicher für Docker-Images und andere OCI-konforme Artefakte, der Versionierung, Zugriffskontrolle und Container-Verteilung bietet.
Registry-Typen
| Typ | Beispiele | |-----|-----------| | Öffentlich | Docker Hub, GitHub Container Registry | | Cloud | AWS ECR, Google GCR, Azure ACR | | Self-hosted | Harbor, Nexus, JFrog Artifactory | | GitLab | GitLab Container Registry |
Hauptfunktionen
- Image-Speicherung — Zentrales Repository
- Versionierung — Tags und Digest zur Identifikation
- Zugriffskontrolle — RBAC und Sicherheitsrichtlinien
- Schwachstellen-Scanning — Integration mit Trivy, Clair
- Replikation — Spiegelung über Regionen
Arbeiten mit Registry
| Befehl | Beschreibung | |--------|--------------| | docker login | Am Registry authentifizieren | | docker push | Image hochladen | | docker pull | Image herunterladen | | docker tag | Tag erstellen |
Best Practices
- Unveränderliche Tags verwenden (nicht latest)
- Images auf Schwachstellen scannen
- Images signieren (Cosign, Notary)
- Bereinigungsrichtlinie für alte Images einrichten
- Garbage Collection aktivieren
CI/CD-Integration
# GitLab CI Beispiel
build:
script:
- docker build -t $CI_REGISTRY_IMAGE:$CI_COMMIT_SHA .
- docker push $CI_REGISTRY_IMAGE:$CI_COMMIT_SHA