ما هو سجل الحاويات
تخزين صور Docker
سجل الحاويات
سجل الحاويات هو تخزين مركزي لصور Docker وغيرها من العناصر المتوافقة مع OCI، يوفر التحكم في الإصدارات والتحكم في الوصول وتوزيع الحاويات.
أنواع السجلات
| النوع | أمثلة | |-------|-------| | عام | Docker Hub، GitHub Container Registry | | سحابي | AWS ECR، Google GCR، Azure ACR | | مستضاف ذاتياً | Harbor، Nexus، JFrog Artifactory | | GitLab | GitLab Container Registry |
الوظائف الرئيسية
- تخزين الصور — مستودع مركزي
- التحكم في الإصدارات — العلامات والتجزئة للتعريف
- التحكم في الوصول — RBAC وسياسات الأمان
- فحص الثغرات — التكامل مع Trivy، Clair
- النسخ — النسخ المتطابق عبر المناطق
العمل مع السجل
| الأمر | الوصف | |-------|-------| | docker login | المصادقة على السجل | | docker push | رفع الصورة | | docker pull | تنزيل الصورة | | docker tag | إنشاء علامة |
أفضل الممارسات
- استخدام علامات غير قابلة للتغيير (وليس latest)
- فحص الصور بحثاً عن الثغرات
- توقيع الصور (Cosign، Notary)
- إعداد سياسة تنظيف الصور القديمة
- تفعيل جمع القمامة
تكامل CI/CD
# مثال GitLab CI
build:
script:
- docker build -t $CI_REGISTRY_IMAGE:$CI_COMMIT_SHA .
- docker push $CI_REGISTRY_IMAGE:$CI_COMMIT_SHA