[Unit] Description=TrainPulse Webserver After=network-online.target Wants=network-online.target [Service] User=trainpulse EnvironmentFile=/etc/trainpulse.env WorkingDirectory=/opt/trainpulse ExecStart=/opt/trainpulse/.venv/bin/uvicorn trainpulse.server:app --host 0.0.0.0 --port 8080 --proxy-headers Restart=always RestartSec=5 [Install] WantedBy=multi-user.target