Render یک پلت فرم میزبانی است که به شما کمک می کند برنامه های خود را به راحتی اجرا کنید. چه در حال ساخت سرورهای وب، وب سایت های ثابت، کارهای cron یا کانتینر باشید، این ابزار می تواند به شما کمک کند تا process.

اگر در اوایل کار خود یک توسعه‌دهنده هستید و باید یک رزومه، رزومه یا نمونه کار جذاب بسازید، Render یک ردیف رایگان ارائه می‌کند که ظرفیت ذخیره‌سازی 1 گیگابایتی را ارائه می‌دهد.

در این راهنما، روش استقرار یک برنامه جنگو را بررسی خواهیم کرد روی پلت فرم Render پروژه‌ای که ما ایجاد می‌کنیم به شما کمک می‌کند مهارت‌ها و پروژه‌های کدنویسی خود را به‌طور مؤثری در حین یادگیری در مورد استقرار به نمایش بگذارید.

پیش نیازها

برای پیروی از این راهنما، باید چند چیز را تنظیم کنید:

  • یک حساب کاربری روی پلت فرم Render
  • یک حساب Git
  • PostgreSQL نصب شده است
  • یک حساب GitHub

حالا بیایید روش استقرار یک وب سرور جنگو را به صورت رایگان بیاموزیم. 🚀

چگونه یک پایگاه داده PostgreSQL راه اندازی کنیم

ابتدا به داشبورد Render خود بروید و یک پایگاه داده PostgreSQL ایجاد کنید. کلیک کنید بر روی جدید + دکمه، ماوس را روی PostgreSQL نگه دارید و روی آن کلیک کنید.

SmOWvHI
رندر داشبورد – ایجاد پایگاه داده PostgreSQL

در مرحله بعد، تنظیمات پایگاه داده خود را با دادن یک نام به نمونه پایگاه داده خود تعریف کنید. می توانید انتخاب کنید که Render نامی برای پایگاه داده و کاربر تعریف کند یا خودتان آن را تعریف کنید.

این راهنما برای مبتدیان است، ما فقط نام نمونه را تعریف می کنیم.

اسکرین شات-2023-07-28-070509
ایجاد یک پایگاه داده جدید PostgreSQL

لایه آزاد را انتخاب کرده و کلیک کنید روی ایجاد پایگاه داده

توجه: هر پایگاه داده رایگان ایجاد شده است روی رندر 90 روز پس از ایجاد منقضی می شود. بنابراین فقط به این نکته توجه داشته باشید و اگر پروژه مهمی است آن را ارتقا دهید. می توانید قیمت را اینجا ببینید.

V4O1Sin
ایجاد یک پایگاه داده جدید PostgreSQL

یک بار وضعیت روی پایگاه داده شما را نشان می دهد در دسترس، به این معنی است که پایگاه داده با موفقیت ایجاد شده و آماده استفاده است.

پیشنهاد می‌کنیم بخوانید:  یک فایل را خط به خط در پایتون بخوانید
Utirlzn
بررسی وضعیت DB PostgreSQL تازه ایجاد شده

این را به پایین اسکرول کنید page برای دیدن تنظیمات پایگاه داده خود شما از این تنظیمات برای راه اندازی برنامه جنگو خود استفاده خواهید کرد.

GKfYcUX
اطلاعات پایگاه داده

در مرحله بعد، کنترل دسترسی به شما امکان می دهد یک آدرس IP را برای دسترسی به پایگاه داده خود انتخاب کنید.

هنگامی که پایگاه داده شما ایجاد شد، با یک مسیر کنترل دسترسی از پیش تعریف شده ارائه می شود که به شما امکان می دهد با استفاده از یک (1) آدرس IP به آن از هر کجای دنیا دسترسی داشته باشید. اگرچه، از آنجایی که از یک طرح رایگان استفاده می کنید، نمی توانید مسیر دیگری تعیین کنید روی ارائه دادن.

اسکرین شات-2023-07-28-072323
اطلاعات کنترل دسترسی PostgreSQL

شما می توانید این را تغییر دهید یا آن را به عنوان پیش فرض بگذارید.

اکنون که یک پایگاه داده ایجاد کردیم، بیایید آن را تنظیم کنیم روی پروژه جنگو

روش اتصال پایگاه داده

هنگامی که پایگاه داده راه اندازی شد، باید آن را به پروژه جنگو خود متصل کنید settings.py فایل.

به پایگاه کد خود بروید و آن را وصل کنید.

ابتدا dj-database-url را نصب کنید

pip install dj-database-url
نصب بسته اتصال پایگاه داده برای پروژه جنگو

راه های مختلفی برای اتصال پایگاه داده به پروژه برنامه شما وجود دارد. این راهنما از URL اتصال خارجی استفاده می کند.

به تنظیمات پایگاه داده خود بروید روی رندر و کپی کنید URL پایگاه داده خارجی.

dJqwIy4
دریافت URL DB خارجی

بعد، import dj-base-url در شما settings.py و URL پایگاه داده (از Render) را به عنوان پایگاه داده خود تعریف کنید.

توجه: همیشه عاقلانه است که به دلایل امنیتی اطلاعات حساس را به یک فایل .env اضافه کنید.

import dj-database-url
import os

DATABASES = {
	"default": dj_database_url.parse(os.environ.get("DATABASE_URL"))
}
تنظیمات پایگاه داده روی پروژه جنگو

سپس، جداول خود را به پایگاه داده جدید خود انتقال دهید تا اطمینان حاصل کنید که اتصال موفقیت آمیز بوده است.

اگر هیچ انتقالی به هیچ db.sqlite به صورت محلی انجام نداده‌اید، مطمئن شوید که ابتدا مهاجرت را انجام داده‌اید وگرنه هنگام اجرا جدول ایجاد نمی‌کنید. python manage.py migrate.

# To make migrations if this is your first time connecting to a database 
python manage.py makemigrations

#To migrate tables set روی your migrations folders
python manage.py migrate
جنگو به DB مهاجرت می کند

اگر اتصال موفقیت آمیز بود و همه جداول خود را منتقل کردید، terminal خروجی باید به شکل زیر باشد:

nXVd604
مهاجرت موفق

شما اکنون یک قدم با استقرار پروژه جنگو فاصله دارید! 🎉

پیشنهاد می‌کنیم بخوانید:  موارد استفاده پایتون – پایتون برای چه چیزی بهتر است؟

فراموش نکنید که پایگاه کد خود را به یک مخزن Git با commit های معنی دار فشار دهید.

روش ایجاد وب سرویس

این آخرین مرحله برای اجرای پروژه شماست.

به داشبورد Render خود بروید. کلیک جدید + و انتخاب کنید سرویس وب.

wbse
ایجاد یک وب سرویس جدید

اگر قبلاً GitHub خود را وصل نکرده اید. پس از اتصال باید به این شکل باشد:

MMk3GWX
اتصال Git به پلتفرم رندر

مخزن مورد نظر برای استقرار را جستجو کنید و روی آن کلیک کنید اتصال دکمه. باید یکپارچه کار کند.

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

استقرار
تنظیم وب سرور جنگو

Gunicorn را نصب کنید و requires.txt خود را در پروژه جنگو خود تغییر دهید. با اجرا pip freeze > requires.txt، می توانید بسته های نصب شده را در requirement.txt خود به روز کنید. این به طور خودکار لیست فایل های مورد نیاز پروژه شما را تغییر می دهد.

Gunicorn یک وب سرور سبک وزن پایتون است که به عنوان یک دروازه بین یک برنامه وب و اینترنت عمل می کند. این برای استقرار طراحی شده است زیرا درخواست های وب ورودی را به طور موثر مدیریت می کند.

سپس، تغییرات خود را به Git فشار دهید. به یاد داشته باشید، شما Git را به وب سرویس خود وصل کرده اید، بنابراین Render مخزن را نظارت می کند و هنگامی که هر گونه تغییری را تشخیص می دهد، به طور خودکار مستقر می شود.

pip install gunicorn

pip freeze > requirements.txt # To update your requirements.txt file
در حال به روز رسانی requires.txt

مطمئن شوید که سرویس وب Render خود را به آن اضافه کرده اید ALLOWED_HOSTS در تنظیمات شماpy.

بعد، مطمئن شوید که درست را تنظیم کرده اید requirements.txt همانطور که در تصویر زیر می بینید. همچنین، مطمئن شوید که از زمان اجرای پایتون مناسب استفاده می‌کنید و تنظیمات gunicorn پروژه خود را تعریف می‌کنید روی پلت فرم رندر.

پس از اتمام، به پایین بروید و انتخاب کنید وب سرویس ایجاد کنید.

req-1
ایجاد یک وب سرویس

به داشبورد Render برگردید و کلیک کنید روی Deployed Web Service برای مشاهده پیوند زنده شما.

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

خودشه! شما اولین برنامه جنگو را راه اندازی کرده اید روی یک پلت فرم رایگان از وب سرور خود برای 90 روز آینده لذت ببرید. 😎

نتیجه

به طور خلاصه، استقرار یک برنامه/سرور جنگو یا هر سرور دیگری روی رندر آسان و کارآمد است.

با استفاده از ویژگی های Render مانند یکپارچه سازی مداوم و نظارت داخلی، توسعه دهندگان می توانند تمرکز بیشتری داشته باشند روی ساخت اپلیکیشن و ویژگی های آن به جای تاکید بر زیرساخت و مدیریت برنامه.