Naar hoofdinhoud springen

Systemd

Inleiding

Met Systemd kunnen we elke applicatie als een service uitvoeren.

FastAPI

Neem als voorbeeld het uitvoeren van het FastAPI-framework:

  1. Maak een website aan met de sjabloon "Systemd".

Wizard voor Systemd-site

  1. Maak via SSH als root-gebruiker verbinding met de server.
  2. Installeer de vereiste pakketten:

Debian/Ubuntu:

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

Rocky Linux/AlmaLinux:

yum install python3-pip python3-virtualenv -y
  1. Schakel over naar de systeemgebruiker van uw site:
su - yoursiteuser

Vervang yoursiteuser door de daadwerkelijke gebruikersnaam.

opmerking

U kunt de sitegebruiker bepalen in de sitekaart, veld "Site user". Ga naar de sectie "Management" → "Users" in FASTPANEL® om het wachtwoord van de sitegebruiker te wijzigen.

  1. Maak een virtuele omgeving aan en activeer deze:
python3 -m venv myenv
source myenv/bin/activate

Vervang myenv door de gewenste naam van de omgeving.

  1. Installeer de vereiste pakketten voor FastAPI:
pip install fastapi uvicorn
  1. Deactiveer de virtuele omgeving:
deactivate
  1. Maak een bestand main.py in de websitemap met de volgende inhoud:
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. Ga in het sitedashboard naar “Settings” → “Backend”.
  • Stel "Launch command" in op: python3 main.py
  • Sla op en controleer de website

Logboeken

Een Systemd-service kan logboeken genereren. In FASTPANEL® bevinden deze zich in het sitedashboard, in de sectie "Logs", onder het tabblad "Backend log".