fastapi

استقرار برنامه‌های FastAPI

(FastAPI Apps)
در حال حاضر برنامه‌های FastAPI به‌صورت مستقیم در لیارا پشتیبانی نمی‌شوند اما شما می‌توانید پروژه‌های توسعه داده شده با این فریم‌ورک را طبق دستورالعمل زیر در لیارا مستقر کنید.

FastAPI یک فریم‌ورک مدرن است که با زبان Python توسعه داده شده اما عملکردی نظیر NodeJS و Go را ارائه می‌دهد.

طبق مستندات استقرار FastAPI بر روی Docker، اگر پروژه‌ای با ساختار زیر داشته باشید:

.
├── app
│   ├── __init__.py
│   └── main.py
└── requirements.txt

باید برای استقرار این پروژه در لیارا، یک فایل با نامDockerfileدر کنار فایل requirements.txt برنامه‌ی‌تان بسازید و قطعه‌کد زیر را در این فایل قرار دهید:

FROM python:3.9

WORKDIR /usr/src/app

COPY ./requirements.txt ./requirements.txt

RUN pip install --no-cache-dir --upgrade -r ./requirements.txt

COPY . .

CMD ["uvicorn", "app.main:app", "--proxy-headers", "--host", "0.0.0.0", "--port", "80"]

در نهایت می‌توانید دستور زیر را در مسیر اصلی پروژه اجرا کنید: راهنمای نصب Liara CLI

$ liara deploy --platform docker --port 80
توجه داشته باشید که
  • اگر با خطای Read-only Filesystem مواجه شدید، لازم است مستندات فایل‌سیستم برنامه‌های لیارا را مطالعه کنید.
  • بین برنامه‌ها و دیتابیس‌ها شبکه‌ی خصوصی برقرار است که در صورت استقرار Microservice‌ها و ارتباط درون‌شبکه‌ای، بسیار کاربردی است.
  • در صفحه‌ی لاگ‌ها امکان دنبال‌کردن زنده‌ی لاگ‌های‌تان را دارید.
  • برای تنظیم Environment Variableها نیز می‌توانید مستندات متغیرهای محیطی را مطالعه کنید.
;