Add systemd units
Each repo carries the units for the daemons it owns. WorkingDirectory stays /srv/astrape so env/ and models/ resolve, while the code comes from the editable installs under repos/. The old astrape-db.service was misnamed -- it runs the weather forecast ingest, and collided with what would have been an astrape-db repo. It is astrape-weather-forecast.service here. The training unit forces ATEN_CPU_CAPABILITY=default, because this host has no AVX2 and torch otherwise dies with SIGILL in Adam, and caps threads with Nice so a nightly run does not starve the 5-second Modbus poll. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -0,0 +1,19 @@
|
|||||||
|
[Unit]
|
||||||
|
Description=Astrape Web UI
|
||||||
|
After=network-online.target
|
||||||
|
Wants=network-online.target
|
||||||
|
|
||||||
|
[Service]
|
||||||
|
Type=simple
|
||||||
|
User=gibil
|
||||||
|
Group=gibil
|
||||||
|
WorkingDirectory=/srv/astrape
|
||||||
|
Environment=PYTHONUNBUFFERED=1
|
||||||
|
Environment=PYTHONDONTWRITEBYTECODE=1
|
||||||
|
|
||||||
|
ExecStart=/srv/astrape/.venv/bin/python -m astrape_dashboard.scripts.daemons.web_daemon
|
||||||
|
Restart=always
|
||||||
|
RestartSec=10
|
||||||
|
|
||||||
|
[Install]
|
||||||
|
WantedBy=multi-user.target
|
||||||
Reference in New Issue
Block a user