Nima Konteyner reestrini
Docker tasvirlarini saqlash
Container Registry
Container Registry — bu Docker tasvirlari va boshqa OCI-mos artefaktlar uchun markazlashtirilgan saqlash joyi bo'lib, versiyalash, kirish nazorati va konteynerlarni tarqatishni ta'minlaydi.
Reyestr turlari
| Tur | Misollar | |-----|----------| | Ommaviy | Docker Hub, GitHub Container Registry | | Bulutli | AWS ECR, Google GCR, Azure ACR | | O'z-o'zini joylashtirilgan | Harbor, Nexus, JFrog Artifactory | | GitLab | GitLab Container Registry |
Asosiy xususiyatlar
- Tasvir saqlash — Markazlashtirilgan ombor
- Versiyalash — Identifikatsiya uchun teglar va digest
- Kirish nazorati — RBAC va xavfsizlik siyosatlari
- Zaiflik skanerlash — Trivy, Clair bilan integratsiya
- Replikatsiya — Hududlar bo'yicha aks ettirish
Reyestr bilan ishlash
| Buyruq | Tavsif | |--------|--------| | docker login | Reyestrda autentifikatsiya | | docker push | Tasvirni yuklash | | docker pull | Tasvirni yuklab olish | | docker tag | Teg yaratish |
Eng yaxshi amaliyotlar
- O'zgarmas teglardan foydalaning (latest emas)
- Zaifliklar uchun tasvirlarni skanerlang
- Tasvirlarni imzolang (Cosign, Notary)
- Eski tasvirlar uchun tozalash siyosatini o'rnating
- Garbage collection-ni yoqing
CI/CD integratsiyasi
# GitLab CI misoli
build:
script:
- docker build -t $CI_REGISTRY_IMAGE:$CI_COMMIT_SHA .
- docker push $CI_REGISTRY_IMAGE:$CI_COMMIT_SHA