FastAPI

Сучасний, високопродуктивний веб-фреймворк Python для створення API з підказками про типи.

1. Підключіться до вашого сервера

Використовуйте SSH для підключення до сервера:

ssh root@<server-ip>

2. Доступ до облікових даних для входу

Для управління вашою програмою було створено спеціального користувача з іменем fastapi.

Ви можете знайти дані для входу в цьому файлі: /root/.fastapi-creds

Щоб переглянути їх, виконайте:

cat /root/.fastapi-creds

Якщо ви бажаєте змінити пароль, скористайтеся:

passwd fastapi

3. Перейти до користувача програми

Перейдіть до облікового запису користувача fastapi, щоб керувати своїм додатком:

su - flask

Цей обліковий запис містить ваш проект FastAPI та середовище.

4. Структура проекту

Ось стандартна структура каталогів:

/home/fastapi/fastapi_app/
├── main.py          → Your main FastAPI application file
├── venv/            → Virtual environment
└── __pycache__/     → Compiled Python files (auto-generated)

5. Управління вашою заявкою

Перейдіть до каталогу програми:

cd ~/fastapi_app

Активуйте віртуальне середовище:

source venv/bin/activate

Відредагуйте головний файл програми:

nano main.py

Перезапустіть службу FastAPI, щоб застосувати зміни:

sudo systemctl restart uvicorn-fastapi

6. Перегляд журналів

Ви можете перевірити журнали для Uvicorn і Nginx наступним чином:

  • Журнали Uvicorn: /var/log/uvicorn/
  • Журнал помилок Nginx: /var/log/nginx/error.log
  • Журнал доступу Nginx: /var/log/nginx/access.log

Щоб переглянути їх:

sudo tail -f /var/log/uvicorn/*

7. Доступ до вашого API

Після запуску служби ваша програма FastAPI буде доступна у вашому браузері за адресою: http://<server-ip>

Nginx автоматично пересилає HTTP-запити до сокета Uvicorn, на якому працює ваша програма FastAPI.

8. Зміна домену або порту

Якщо ви хочете оновити ім'я сервера, порт або домен:

  1. Редагування конфігурації сайту Nginx: sudo nano /etc/nginx/sites-available/uvicorn-fastapi
  2. Конфігурація тесту: sudo nginx -t
  3. Перезавантажити Nginx: sudo systemctl restart nginx

9. Сервіс Uvicorn

Додаток FastAPI працює через службу systemd під назвою uvicorn-fastapi.

Він використовує /home/fastapi/fastapi_app/main:app як точка входу програми та автоматично перезапускається у разі збою.

Для управління сервісом:

systemctl status uvicorn-fastapi
systemctl restart uvicorn-fastapi

Щоб редагувати послугу:

sudo vim /etc/systemd/system/uvicorn-fastapi.service
sudo systemctl daemon-reload
sudo systemctl restart uvicorn-fastapi
sudo systemctl status uvicorn-fastapi

10. Увімкніть HTTPS (опціонально)

Використовуйте Certbot для увімкнення HTTPS.

Деталі заявки