Docker Registry
Docker Registry یک اپلیکیشن سمت سرور یا Server-Side است و مانند یک مخزن مرکزی به کاربران اجازه میدهد ایمیجهای خود را ذخیره کرده و با دیگران به اشتراک بگذارند. بر اساس نیاز، کاربران میتوانند رجیستریهای عمومی (Public) یا خصوصی (Private) را انتخاب کنند.
برای ایجاد یک Docker Registry خصوصی، می توانید از ایمیج ارایهشده بهوسیلهی Docker استفاده کنید. برای نمونه، شیوهی اجرای آن با استفاده از Docker Compose بهشکل زیر است:
version: '3'
services:
registry:
image: registry:2
ports:
- "5000:5000"
volumes:
- ./data:/var/lib/registry
استقرار با یک کلیک
به کمک اپلیکیشنهای آمادهی کانتینر ابری آروان راهاندازی Docker Registry تنها با یک کلیک امکانپذیر است. شما میتوانید از میان رجیستری با دیسک لوکال یا فضای ابری آروان یکی را انتخاب کنید.
استفاده از Docker Registry
پس از دیپلوی اپلیکیشن میتوانید شروع به کار با رجیستری کنید. Pull کردن یا دریافت ایمیج از رجیستری و Push کردن یا بارگذاری ایمیج در آن از مهمترین موارد استفادهی این اپلیکیشن بهشمار میرود.
لاگین کردن
برای دسترسی به رجیستری ساختهشده ابتدا باید با استفاده از دامنهی اختصاصدادهشده به اپلیکیشنتان به آن لاگین کنید. در نمونهی زیر دامنهی اپلیکیشن داکر رجیستری dockerregistry-project.apps.ir-thr-ba1.arvanpaas.ir است.
نام کاربری و رمز عبور بهشکل پیشفرض admin:password است.
docker login https://dockerregistry-project.apps.ir-thr-ba1.arvanpaas.ir/
Push کردن ایمیج
برای Push کردن یا بارگذاری ایمیج در رجیستری باید مانند دستور زیر ابتدا یک تگ به آن اختصاص دهید:
docker tag bitnami/kubectl dockerregistry-project.apps.ir-thr-ba1.arvanpaas.ir/kubectl
سپس با دستور docker push
ایمیج تگگذاریشده را Push کنید:
docker push dockerregistry-project.apps.ir-thr-ba1.arvanpaas.ir/kubectl
Pull کردن ایمیج
با استفاده از دستور docker pull
میتوانید یک ایمیج را از رجسیتریتان دریافت کنید:
docker pull dockerregistry-project.apps.ir-thr-ba1.arvanpaas.ir/kubectl
ساختن منیفست از روی یک ایمیج
به کمک ایمیجهای رجیستری میتوانید منیفستهایی برای استقرار اپلیکیشن بسازید. برای این کار باید ابتدا Credentialهای رجیستری را اضافه کنید و سپس منیفست را اجرا کنید:
image: dockerregistry-project.apps.ir-thr-ba1.arvanpaas.ir/kubectl:latest
name: registery
ports:
- containerPort: 8080
افزونهی VS Code
افزونههای Docker در Shell ابری آروان یا هر محیط VS Code دیگری، این امکان را در اختیارتان میگذارد تا رجیستریهای داکر و ایمیجهای موجود در آنها را مشاهده کرده و آنها را Push ،Pull یا حذف کنید. همچنین می توانید تگهای موجود را مشاهده کرده و بهراحتی نام کامل آنها را کپی کنید.