Vai al contenuto principale

Systemd

Introduzione

Con Systemd, possiamo eseguire qualsiasi applicazione come servizio.

FastAPI

Come esempio, consideriamo l'esecuzione del framework FastAPI:

  1. Crea un sito web utilizzando il modello "Systemd".

Procedura guidata del sito Systemd

  1. Connettiti al server tramite SSH come utente root.
  2. Installa i pacchetti richiesti:

Debian/Ubuntu:

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

Rocky Linux/AlmaLinux:

yum install python3-pip python3-virtualenv -y
  1. Passa all'utente di sistema del tuo sito:
su - yoursiteuser

Sostituisci yoursiteuser con il nome utente effettivo.

nota

Puoi individuare l'utente del sito nella scheda del sito, nel campo "Utente del sito". Per cambiare la password dell'utente del sito, vai alla sezione "Gestione" → "Utenti" in FASTPANEL®.

  1. Crea un ambiente virtuale e attivalo:
python3 -m venv myenv
source myenv/bin/activate

Sostituisci myenv con il nome dell'ambiente desiderato.

  1. Installa i pacchetti richiesti per FastAPI:
pip install fastapi uvicorn
  1. Disattiva l'ambiente virtuale:
deactivate
  1. Crea un file main.py nella directory del sito web con il seguente contenuto:
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. Nel pannello di controllo del sito, vai su “Impostazioni” → “Backend”.
  • Imposta "Comando di avvio" su: python3 main.py
  • Salva e controlla il sito web

Log

Un servizio Systemd può generare log. In FASTPANEL®, si trovano nel pannello di controllo del sito, nella sezione "Log", sotto la scheda "Log del backend".