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.