Docker Compose

اگر پروژه‌ی شما از چندین سرویس متصل‌به‌هم (مانند یک اپلیکیشن در کنار دیتابیس) تشکیل شده است، Docker Compose استانداردی بی‌رقیب برای استقرار یکپارچه‌ی آن‌هاست. در پلتفرم ابری پارس‌پک، شما نیازی به درگیری با پیچیدگی‌های تبدیل فایل کامپوز به مانیفست‌های کوبرنیتیز ندارید؛ زیرساخت PaaS به صورت هوشمند فایل docker-compose.yaml شما را تحلیل کرده و سرویس‌ها را مطابق با آن راه‌اندازی می‌کند.

قوانین الزامی (Validation Rules)

پیش از شروع، مطمئن شوید فایل کامپوز شما با این الزامات زیرساختی سازگار است:

  • عدم پشتیبانی از Build: امکان استفاده از دستور build در فایل کامپوز وجود ندارد. تمامی سرویس‌ها باید از ایمیج‌های ازپیش‌ساخته‌شده (image) استفاده کنند.

  • محدودیت Bind-mount: استفاده از bind-mount برای Volumes در داکر کامپوز پشتیبانی نمی‌شود.

  • مدیریت متغیرها: اگر در فایل کامپوز از متغیرهایی استفاده کرده‌اید که مقدار پیش‌فرض ندارند، آپلود فایل .env در مراحل راه‌اندازی الزامی است.

تنظیمات اولیه و متغیرها

نام پروژه و نام اپلیکیشن را تعیین کنید. اگر اجرای سرویس به متغیرهای محیطی وابسته است، به بخش «پارامترها و متغیرها» بروید و فایل .env پروژه خود را بارگذاری کنید.

این کار به سیستم اجازه می‌دهد مقادیرِ خالی در فایل YAML را جایگذاری کند.

اتصال به منبع کد (Source)

پس از تنظیم متغیرها، منبع فراخوانی فایل‌ها را مشخص کنید.

شما می‌توانید مخزن Git خود را متصل کنید یا آرشیو پروژه (حاوی فایل docker-compose.yaml) را مستقیما آپلود نمایید.

شناسایی سرویس‌ها

پس از اتصال منبع، موتور پارس‌پک فایل کامپوز شما را تحلیل کرده و تمام سرویس‌های موجود در آن را شناسایی می‌کند. در این مرحله، لیستی از سرویس‌های شناسایی‌شده نمایش داده می‌شود. برای هر سرویس (مانند دیتابیس یا وب‌سرور)، دکمه «مدیریت اپلیکیشن» وجود دارد که امکان شخصی‌سازی‌های زیر را فراهم می‌کند:

  • دسترسی عمومی: تعیین اینکه کدام سرویس به اینترنت متصل باشد و کدام سرویس (مانند دیتابیس) کاملا ایزوله باقی بماند.

  • پیکربندی دیسک: سیستم به صورت خودکار Volumeهای تعریف شده را شناسایی می‌کند. شما می‌توانید مسیر هر دیسک را تایید کرده و میزان فضای ذخیره‌سازی آن را تعیین کنید.

تخصیص منابع

در بخش تنظیمات منابع، آزادی عمل کاملی برای مدیریت هزینه‌ها و پرفورمنس دارید:

  • منابع اشتراکی: پردازنده و رم در استخری مشترک قرار می‌گیرند. این حالت بسیار اقتصادی است و سرویس‌ها به اندازه‌ی نیازشان مصرف می‌کنند.

  • منابع اختصاصی: منابع سخت‌افزاری کاملا برای سرویس شما رزرو می‌شوند. این حالت برای دیتابیس‌ها و سرویس‌های تحت فشار بالا توصیه می‌شود.

نهایی‌سازی و استقرار

پس از شخصی‌سازی هر سرویس، حتما روی دکمه «ثبت تغییرات» کلیک کنید. در نهایت، با کلیک روی دکمه‌ی «ایجاد اپلیکیشن»، فرایند شبکه‌سازی و استقرار تمامی کانتینرها آغاز می‌شود.