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. Зміна домену або порту
Якщо ви хочете оновити ім'я сервера, порт або домен:
- Редагування конфігурації сайту Nginx:
sudo nano /etc/nginx/sites-available/uvicorn-fastapi - Конфігурація тесту:
sudo nginx -t - Перезавантажити 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.