Перейти к основному содержимому

Systemd

Введение

С помощью Systemd мы можем запускать любое приложение как службу.

FastAPI

В качестве примера рассмотрим запуск фреймворка FastAPI:

  1. Создайте веб-сайт, используя шаблон "Systemd".

Мастер создания сайта Systemd

  1. Подключитесь к серверу по SSH как пользователь root.
  2. Установите необходимые пакеты:

Debian/Ubuntu:

apt update && apt install python3-pip python3-venv -y

Rocky Linux/AlmaLinux:

yum install python3-pip python3-virtualenv -y
  1. Переключитесь на системного пользователя вашего сайта:
su - yoursiteuser

Замените yoursiteuser на фактическое имя пользователя.

примечание

Определить пользователя сайта можно в карточке сайта, в поле "Пользователь сайта". Чтобы изменить пароль пользователя сайта, перейдите в раздел "Управление" → "Пользователи" в FASTPANEL®.

  1. Создайте виртуальное окружение и активируйте его:
python3 -m venv myenv
source myenv/bin/activate

Замените myenv на желаемое имя окружения.

  1. Установите необходимые пакеты для FastAPI:
pip install fastapi uvicorn
  1. Деактивируйте виртуальное окружение:
deactivate
  1. Создайте файл main.py в директории веб-сайта со следующим содержимым:
import os
import uvicorn
from fastapi import FastAPI

app = FastAPI()

@app.get("/")
def read_root():
return {"hello": "world"}

if __name__ == "__main__":
port = int(os.getenv("SERVICE_PORT", 8000))
uvicorn.run(app, host="0.0.0.0", port=port)
  1. В панели управления сайтом перейдите в раздел “Настройки” → “Backend”.
  • Установите для "Команда запуска" значение: python3 main.py
  • Сохраните и проверьте веб-сайт

Журналы

Служба Systemd может генерировать журналы. В FASTPANEL® они находятся в панели управления сайтом, в разделе "Журналы", на вкладке "Журнал Backend".