django

پلتفرم Flask

(Flask Platform)

فهرست عناوین:

استقرار با Liara Desktop

در صورتی که تمایلی به خواندن آموزش متنی ندارید می‌توانید ویدیوی آموزشی زیر ‌را مشاهده کنید.

پروژه و کدهای مورد استفاده در ویدیوی فوق در اینجا قابل مشاهده و دسترسی هستند.

نصب Liara Desktop

شما می‌توانید از طریق این لینک؛ Liara Desktop را؛ متناسب با سیستم عامل خود دانلود و نصب کنید.

ورود به حساب کاربری

برای ورود به حساب کاربری از طریق Liara Desktop، ابتدا نرم‌افزار را اجرا کرده، سپس از طریق مروگر، وارد حساب‌تان شوید.

اولین استقرار

گام اول) کافیست به بخش ایجاد برنامه‌ها در لیارا بروید و با انتخاب پلتفرم Flask و نوشتن شناسه برنامه‌ی موردنظرتان و در نهایت انتخاب پلن، برنامه خود را ایجاد کنید. برای نمونه، ما در این آموزش برای برنامه آزمایشی‌مان، شناسه flask-starter را انتخاب کردیم.

گام دوم)در قدم بعدی کافیست Liara Desktop را اجرا کرده و پوشه پروژه‌تان را انتخاب کنید. بعد از انتخاب پروژه‌تان، از شما شناسه برنامه‌ موردنظرتان پرسیده می‌شود و بعد از انتخاب شناسه، لیارا عملیات استقرار را شروع می‌کند.

برنامه‌ی شما حتما باید فایلrequirements.txtرا داشته باشد و در این فایل باید لیست تمام پکیج‌هایی که استفاده کرده‌اید را وارد کنید. برای برنامه‌های Flask، دست کم باید پکیج Flask را در این فایل عنوان کرده باشید. یک نمونه‌ی پروژه‌ی Flask که آماده‌ی مستقر شدن در لیارا است را در لینک زیر می‌توانید مشاهده کنید:

https://github.com/liara-cloud/flask-getting-started

لیارا به صورت خودکار پکیج‌هایی که در فایل‌هایrequirements.txtلیست شده‌اند را برای شما نصب می‌کند. پس نیازی ندارید که به دنبال اجرای دستوراتpip installباشید. از آن‌جایی که اجرای این دستورات زمان‌بر است، برای سرعت بیشتر، این دستورات را روی سرورهای قدرتمندمان اجرا می‌کنیم تا زمان زیادی را منتظر نمانید.

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

https://flask-starter.liara.run

خطاهای رایج در فرایند استقرار

لیارا برنامه‌های فلسک را با دستوری مشابه دستور زیر اجرا می‌کند:

$ gunicorn app:app

همان‌طور که در دستور بالا مشاهده می‌کنید، لیارا نام ماژول شما را به‌صورت پیش‌فرضappدر نظر می‌گیرد. اما چنانچه شما از نام دیگری استفاده می‌کنید و در زمان دیپلوی خطای زیر را دریافت می‌کنید:

File "/usr/local/lib/python3.7/site-packages/gunicorn/util.py", line 350, in import_app
  __import__(module)
  ModuleNotFoundError: No module named 'app'

دو راه حل دارید. راه اول این است که نام ماژول‌تان را به appتغییر دهید و بعد دوباره liara deployرا وارد کنید. در غیر این‌صورت، چنانچه قصد دارید که از همان نام ماژول خودتان استفاده کنید، لازم است که نام این ماژول را در فایلی به‌نام liara.jsonتعریف کنید. این فایل باید در کنار requirements.txtساخته شود و محتویات آن به‌شکل زیر باشد:

{
  "flask": {
    "appModule": "myname:app"
  }
}

با اضافه‌کردن این فایل، بار دیگر برنامه‌تان را دیپلوی کنید. حالا لیارا برنامه‌ی شما را با دستور زیر اجرا خواهد کرد:

$ gunicorn myname:app

متوجه شدم، برو گام بعدی!
;