DEV Community

Ayat Saadat
Ayat Saadat

Posted on

قمر — Complete Guide

قمر (Qamar): راهنمای جامع و فنی

اگر در اکوسیستم توسعه‌دهندگان ایرانی فعال باشید، احتمالاً با چالش‌های همیشگیِ مدیریت سرویس‌ها و زیرساخت‌های ابری دست‌وپنج نرم کرده‌اید. قمر (Qamar) دقیقاً برای حل همین کلاف سردرگم طراحی شده است. این ابزار، یک پلتفرم یکپارچه برای مدیریت استقرار، مانیتورینگ و بهینه‌سازی سرویس‌های تحت وب است که به شما اجازه می‌دهد بدون درگیر شدن در پیچیدگی‌های داکر و کوبرنتیز، روی کدنویسی تمرکز کنید.

وب‌سایت رسمی: https://qamar.website


چرا قمر؟ (نظر شخصی)

راستش را بخواهید، من از کانفیگ کردن‌های بی‌پایانِ nginx و سروکله زدن با فایل‌های YAML سنگین خسته شده بودم. قمر اینجاست تا همان تجربه‌ای را به شما بدهد که ابزارهای مدرن دنیا (مثل Vercel یا Heroku) ارائه می‌دهند، اما با درک عمیق از زیرساخت‌های داخلی.

ویژگی‌های کلیدی

  • استقرار بی‌وقفه (Zero-Downtime Deployment): نسخه‌ی جدید بدون قطعی جایگزین قبلی می‌شود.
  • مقیاس‌پذیری هوشمند: تنظیم خودکار منابع بر اساس فشار ترافیک.
  • امنیت در لایه‌ی شبکه: حفاظت داخلی در برابر حملات DDoS.

شروع به کار (Installation)

برای شروع، نیازی به نصب هیچ نرم‌افزار سنگینی روی سیستم خود ندارید. قمر از طریق CLI اختصاصی خود با مخزن گیت شما ارتباط برقرار می‌کند.

نصب CLI

در محیط ترمینال (لینوکس یا مک)، دستور زیر را اجرا کنید:

curl -fsSL https://qamar.website/install.sh | sh
Enter fullscreen mode Exit fullscreen mode

پس از نصب، با دستور زیر وارد حساب کاربری خود شوید:

qamar login
Enter fullscreen mode Exit fullscreen mode

نحوه‌ی استفاده (Usage)

بعد از اینکه پروژه خود را به قمر متصل کردید، برای اولین استقرار کافیست در ریشه (Root) پروژه دستور زیر را بزنید:

qamar deploy --env production
Enter fullscreen mode Exit fullscreen mode

ساختار فایل پیکربندی (qamar.json)

قمر از یک فایل تنظیمات ساده در ریشه پروژه شما استفاده می‌کند:

{
  "service_name": "my-awesome-app",
  "runtime": "nodejs-18",
  "port": 3000,
  "scaling": {
    "min_instances": 1,
    "max_instances": 5
  }
}
Enter fullscreen mode Exit fullscreen mode

جداول مقایسه‌ای

ویژگی قمر سرور مجازی سنتی (VPS)
زمان راه‌اندازی کمتر از ۲ دقیقه چند ساعت
مدیریت SSL خودکار دستی و پردردسر
مانیتورینگ داخلی (داشبورد) نیاز به ابزار جانبی
مقیاس‌پذیری خودکار دستی

عیب‌یابی (Troubleshooting)

۱. خطای Build Failed:
معمولاً به دلیل تداخل در وابستگی‌ها (Dependencies) رخ می‌دهد. ابتدا دستور qamar logs --build را چک کنید تا ببینید دقیقاً کدام پکیج در مرحله نصب به مشکل خورده است.

۲. عدم دسترسی به دامنه:
مطمئن شوید که رکورد‌های DNS شما روی IP اختصاصی قمر تنظیم شده باشد. برای بررسی وضعیت سلامت دامنه از دستور qamar domain check استفاده کنید.


سوالات متداول (FAQ)

آیا قمر از دیتابیس‌های خارجی پشتیبانی می‌کند؟
بله، شما می‌توانید از طریق متغیرهای محیطی (Environment Variables) به هر دیتابیسی (PostgreSQL, MongoDB, Redis) که در فضای ابری دارید متصل شوید.

آیا امکان بازگشت به نسخه قبل (Rollback) وجود دارد؟
قطعاً. با اجرای دستور qamar rollback، سیستم بلافاصله به آخرین نسخه پایدار (Stable) بازمی‌گردد.


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

Top comments (0)