Django
جنگو (Django) یک فریمورک متنباز و قدرتمند وب برای زبان برنامهنویسی پایتون است که بر اساس معماری MTV (مدل-قالب-نمایش یا Model-Template-View) طراحی شده است. این فریمورک با شعار «باتریها گنجانده شدهاند»، امکانات متنوعی مانند سیستم مدیریت پایگاه داده (ORM)، احراز هویت کاربران، پنل مدیریتی داخلی و سیستم قالببندی را به صورت پیشفرض ارائه میدهد.
پلتفرم ابری پارسپک محیطی کاملا آماده و استاندارد (مبتنی بر WSGI) فراهم کرده است تا بتوانید پروژههای جنگوی خود را بدون نیاز به درگیری با تنظیمات پیچیده وبسرور، در سریعترین زمان ممکن و تنها با چند کلیک مستقر کنید.
مراحل استقرار
برای آموزش گامبهگام ساخت اپلیکیشن، به راهنمای «استقرار از طریق سورسکد (زبانها)» مراجعه کنید. همچنین برای تنظیمات زیرساختی نیز به بخش مدیریت اپلیکیشن مراجعه کنید:
پیشنیازها و استقرار کد
برای اینکه پروژه شما به درستی توسط موتور استقرار پارسپک شناسایی شود، رعایت این استانداردهای ساختاری در سورسکد و تنظیمات الزامی است:
-
فایلهای ساختاری: فایلهای
requirements.txtوmanage.pyباید حتما در مسیر ریشه اجرا (context_dir) وجود داشته باشند. -
پورت اجرای برنامه: پورت پیشفرض پنل برای برنامههای جنگو روی
8000تنظیم شده است. پورتی که وبسرور پایتونی شما روی آن ترافیک را دریافت میکند، باید دقیقا با این مقدار برابر باشد. مغایرت در این بخش باعث مسدود شدن ترافیک و دریافت خطا خواهد شد. -
مسیر ریشه اجرا: امکان تغییر مسیر ریشه اجرای کد از طریق پارامتر
django_context_dirدر زمان استقرار فراهم است. -
پارامتر ابزار بیلد (pip_index_url): این پارامتر برای مشخص کردن آدرس (URL) پیشفرض جهت استفاده توسط pip (پکیجمنیجر پایتون) برای نصب پکیجهای مورد نیاز استفاده میشود.
-
پارامتر پیکربندی (app config): این پارامتر مسیر نسبی فایل کانفیگ Gunicorn را برای مدیریت ترافیک وبسرور مشخص میکند.
-
تخصیص منابع: اپلیکیشنهای جنگو بسته به تعداد Workerها و پردازشهای همزمان، نیازمند منابع مناسبی هستند. سقف رم (RAM) و پردازنده (CPU) را حتما متناسب با بار ترافیکی تنظیم کنید.
متغیرهای محیطی (Env Vars)
متغیرهای محیطی برای مدیریت رفتار برنامه و حفظ امنیت دادهها استفاده میشوند و مقادیر آنها در زمان اجرا به صورت ایمن به برنامه تزریق خواهند شد.
-
کلید امنیتی (django_secret_key): سیستم به صورت خودکار یک کلید امنیتی قدرتمند برای رمزنگاری سشنها و امنیت پروژه تولید میکند. شما میتوانید از همین کلید پیشفرض استفاده کنید یا کلید اختصاصی خود را در این فیلد جایگزین نمایید.
-
سایر متغیرها: اطلاعات اتصال به دیتابیس یا متغیرهای کنترل وضعیت مانند
DEBUG=False(برای محیط پروداکشن) را حتما در این بخش وارد کنید تا از هاردکد شدن آنها در سورسکد جلوگیری شود.
نکته: برای آموزش گامبهگام نحوه تعریف متغیرهای اختصاصی، ConfigMapها و Secretها در داشبورد، به مستندات
تنظیمات دامنه
جهت اختصاص دامنه شخصی به سرویس خود برای دسترسی عمومی کاربران، به راهنمای
وبهوک
جهت پیادهسازی اتوماسیون و دیپلوی خودکار کدهای جدید با هر بار Push در مخزن گیت،
مشاهده لاگها
خروجیهای استاندارد برنامه (مانند دستورات console.log یا ارورهای اجرایی) بهصورت یکپارچه مانیتور میشوند. برای عیبیابی اپلیکیشن خود به