Mikä on Säilörekisteri
Docker-kuvien tallennus
Container Registry
Container Registry on keskitetty tallennustila Docker-kuville ja muille OCI-yhteensopiville artefakteille, joka tarjoaa versionhallinnan, pääsynhallinnan ja säiliöiden jakelun.
Registry-tyypit
| Tyyppi | Esimerkkejä | |--------|-------------| | Julkinen | Docker Hub, GitHub Container Registry | | Pilvi | AWS ECR, Google GCR, Azure ACR | | Itse isännöity | Harbor, Nexus, JFrog Artifactory | | GitLab | GitLab Container Registry |
Pääominaisuudet
- Kuvien tallennus — Keskitetty repository
- Versionhallinta — Tagit ja digest tunnisteena
- Pääsynhallinta — RBAC ja turvallisuuspolitiikat
- Haavoittuvuuksien skannaus — Integraatio Trivy, Clair
- Replikointi — Peilaus alueiden välillä
Työskentely Registryn kanssa
| Komento | Kuvaus | |---------|--------| | docker login | Todenna registryyn | | docker push | Lataa kuva | | docker pull | Lataa kuva | | docker tag | Luo tagi |
Parhaat käytännöt
- Käytä muuttumattomia tageja (ei latest)
- Skannaa kuvat haavoittuvuuksien varalta
- Allekirjoita kuvat (Cosign, Notary)
- Aseta siivouslinja vanhoille kuville
- Ota käyttöön garbage collection
CI/CD-integraatio
# GitLab CI -esimerkki
build:
script:
- docker build -t $CI_REGISTRY_IMAGE:$CI_COMMIT_SHA .
- docker push $CI_REGISTRY_IMAGE:$CI_COMMIT_SHA