نامگذاری صحیح ایمیجها
پیش از push کردن یک image به رجیستری، باید آن را با فرمت مناسب تگ بزنید: <نام کاربری یا آدرس رجیستری>/<نام ایمیج>:<نسخه>. برای Docker Hub:
docker build -t my-app:1.0 .
docker tag my-app:1.0 aliuser/my-app:1.0
docker push aliuser/my-app:1.0
برای یک رجیستری خصوصی، آدرس سرور هم باید در تگ قید شود:
docker tag my-app:1.0 registry.mycompany.com/my-app:1.0
docker push registry.mycompany.com/my-app:1.0
برای دانلود یک image منتشرشده روی هر سرور دیگری:
docker pull aliuser/my-app:1.0
docker run aliuser/my-app:1.0
اهمیت نسخهبندی درست تگها
یک اشتباه رایج، اتکای همیشگی به تگ latest است. اگر image شما همیشه با تگ latest منتشر شود، سرور تولید ممکن است بدون اطلاع شما نسخهی جدیدی را pull کند که هنوز کاملاً تست نشده است. بهترین شیوه این است که از نسخهبندی معنایی (semantic versioning) یا حتی شناسهی commit گیت بهعنوان تگ استفاده کنید تا هر image دقیقاً قابل ردیابی به یک نسخهی مشخص از کد باشد؛ این کار هماهنگی بین گردش کار گیت و دیپلوی داکر را نیز برقرار میکند.