گردو
راهنمای استقرار پایتون و جنگو

دیپلوی جنگو و پروژه‌های پایتون روی گردو

دیپلوی جنگو، FastAPI و Flask روی سکوی ابری گردو از Git یا CLI؛ دستور ساخت و اجرا، متغیرها، دیتابیس و دامنه. پروژه‌ی پایتون خود را در چند دقیقه منتشر کنید.

پاسخ کوتاه

برای دیپلوی جنگو و اجرای وب‌سرویس‌های پایتونی بدون درگیری با کانفیگ سرور لینوکس، مخزن گیت خود را به سکوی ابری متصل کنید یا از دستور gerdoo deploy استفاده نمایید. پلتفرم گردو پکیج‌ها را نصب کرده و اپلیکیشن شما را در کانتینری امن با دامنه‌ی اختصاصی و SSL رایگان تحویل می‌دهد. اگر به دنبال میزبانی تخصصی هستید، بخش هاست پایتون ایران را بررسی کنید یا به صفحه جامع آموزش دیپلوی مراجعه فرمایید.

آخرین بازبینی: ۱۴۰۵/۰۶/۱۵

پیش‌نیازها و دستور اجرای پروژه‌های پایتون

وابستگی‌های پروژه را در فایل requirements.txt یا pyproject.toml قرار دهید. وب‌سرور برنامه باید به متغیر PORT و آدرس 0.0.0.0 گوش دهد:

# برای دیپلوی fastapi با Uvicorn
uvicorn main:app --host 0.0.0.0 --port $PORT

# برای دیپلوی جنگو با Gunicorn
gunicorn config.wsgi:application --bind 0.0.0.0:$PORT

# برای دیپلوی flask
gunicorn app:app --bind 0.0.0.0:$PORT

در Windows (PowerShell) به‌جای دستور اول از irm https://get.gerdoo.cloud/install.ps1 | iex استفاده کنید.

روش اول: دیپلوی پروژه جنگو مستقیم از Git

  1. در پنل گردو کلاد یک پروژه و محیط ابری ایجاد کنید.
  2. سرویس جدید ساخته و مخزن GitHub یا GitLab خود را انتخاب نمایید.
  3. دستور ساخت مانند اجرای مایگریشن‌ها و جمع‌آوری استاتیک‌ها را وارد کنید: python manage.py collectstatic --noinput.
  4. دستور اجرای وب‌سرور را وارد کرده و متغیرهای محرمانه مانند SECRET_KEY را ثبت کنید.
  5. پس از دیپلوی پروژه جنگو، دامنه اختصاصی خود را متصل و از SSL رایگان بهره‌مند شوید.

روش دوم: دیپلوی پروژه پایتون با ابزار Gerdoo CLI

اگر پروژه هنوز در گیت قرار نگرفته یا قصد دارید در خط CI/CD انتشار را مدیریت کنید، ابزار خط فرمان بهترین انتخاب است:

curl -fsSL https://get.gerdoo.cloud/install.sh | sh
gerdoo login
cd my-python-project
gerdoo deploy

دیتابیس، فایل‌های رسانه‌ای و نکات محیط عملیاتی

  • برای پایگاه داده‌های PostgreSQL، MySQL یا Redis از بخش افزونه‌های گردو استفاده کنید.
  • فایل‌های آپلودی کاربران (Media files) را روی دیسک‌های ماندگار ابری یا فضاهای ذخیره‌سازی سازگار با S3 قرار دهید.
  • در فرآیند دیپلوی flask و فست‌ای‌پی‌آی، از مدیریت مناسب متغیرهای محیطی برای کلیدهای محرمانه اطمینان حاصل کنید.

سوالات پرتکرار

آموزش دیپلوی جنگو روی گردو کلاد به چه صورت است؟

در آموزش دیپلوی جنگو کافی است پروژه خود را به گیت متصل کنید. گردو وجود requirements.txt را شناسایی کرده، پکیج‌ها را نصب می‌کند و با دستور اجرای سرور WSGI مانند Gunicorn برنامه را در محیط ایزوله ابری آنلاین می‌سازد.

آیا برای دیپلوی fastapi و دیپلوی flask به Dockerfile نیاز است؟

خیر، برای دیپلوی fastapi و دیپلوی flask نیازی به داکرفایل اختصاصی ندارید؛ گردو فریم‌ورک‌های پایتونی را به شکل خودکار تشخیص می‌دهد، هرچند در صورت تمایل استفاده از Dockerfile سفارشی نیز کاملاً پشتیبانی می‌شود.

دیپلوی پروژه جنگو و پایگاه داده آن چگونه انجام می‌شود؟

در فرآیند دیپلوی پروژه جنگو می‌توانید پایگاه داده PostgreSQL یا MySQL را از بخش افزونه‌های گردو با یک کلیک بسازید و متغیر DATABASE_URL را در بخش متغیرهای محیطی سرویس وارد نمایید.

دیپلوی پروژه پایتون از طریق ابزار خط فرمان چگونه است؟

برای دیپلوی پروژه پایتون می‌توانید بدون اتصال به گیت، با دستور gerdoo deploy در پوشه پروژه، کل فایل‌ها را مستقیماً به سکوی ابری ارسال و منتشر نمایید.