Systemd
소개
Systemd를 사용하면 모든 애플리케이션을 서비스로 실행할 수 있습니다.
FastAPI
예시로 FastAPI 프레임워크를 실행해 보겠습니다:
- "Systemd" 템플릿을 사용하여 웹사이트를 생성합니다.

- root 사용자로 SSH를 통해 서버에 연결합니다.
- 필요한 패키지를 설치합니다:
Debian/Ubuntu:
apt update && apt install python3-pip python3-venv -y
Rocky Linux/AlmaLinux:
yum install python3-pip python3-virtualenv -y
- 사이트의 시스템 사용자로 전환합니다:
su - yoursiteuser
yoursiteuser을 실제 사용자 이름으로 바꾸세요.
참고
사이트 카드의 "Site user" 필드에서 사이트 사용자를 확인할 수 있습니다. 사이트 사용자 비밀번호를 변경하려면 FASTPANEL®의 "Management" → "Users" 섹션으로 이동하세요.
- 가상 환경을 생성하고 활성화합니다:
python3 -m venv myenv
source myenv/bin/activate
myenv을 원하는 환경 이름으로 바꾸세요.
- FastAPI에 필요한 패키지를 설치합니다:
pip install fastapi uvicorn
- 가상 환경을 비활성화합니다:
deactivate
- 웹사이트 디렉터리에
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)
- 사이트 대시보드에서 “Settings” → “Backend”로 이동합니다.
- "Launch command"를 다음과 같이 설정합니다:
python3 main.py - 저장한 후 웹사이트를 확인합니다
로그
Systemd 서비스는 로그를 생성할 수 있습니다. FASTPANEL®에서는 사이트 대시보드의 "Logs" 섹션에 있는 "Backend log" 탭에서 이를 확인할 수 있습니다.