docs: add systemd unit files with EnvironmentFile directive

Unit files load env vars from /etc/central/central.env using
EnvironmentFile directive. Includes README with installation
and configuration instructions.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
Matt Johnson 2026-05-16 02:38:21 +00:00
commit c6cbdb0825
3 changed files with 43 additions and 0 deletions

41
systemd/README.md Normal file
View file

@ -0,0 +1,41 @@
# Systemd Unit Files
These unit files configure Central services for systemd.
## Installation
```bash
# Copy unit files
sudo cp central-supervisor.service /etc/systemd/system/
sudo cp central-archive.service /etc/systemd/system/
# Reload systemd
sudo systemctl daemon-reload
# Enable and start services
sudo systemctl enable --now central-supervisor
sudo systemctl enable --now central-archive
```
## Configuration
Both services load environment variables from `/etc/central/central.env`:
```bash
CENTRAL_DB_DSN=postgresql://central:password@localhost/central
CENTRAL_NATS_URL=nats://localhost:4222
CENTRAL_CONFIG_SOURCE=db
CENTRAL_MASTER_KEY_PATH=/etc/central/master.key
```
## Service Dependencies
- **central-supervisor**: Requires NATS server
- **central-archive**: Requires NATS server and PostgreSQL
## Logs
```bash
journalctl -u central-supervisor -f
journalctl -u central-archive -f
```

View file

@ -10,6 +10,7 @@ User=central
Group=central
WorkingDirectory=/opt/central
Environment=HOME=/opt/central
EnvironmentFile=/etc/central/central.env
ExecStart=/opt/central/.venv/bin/central-archive
Restart=on-failure
RestartSec=5

View file

@ -10,6 +10,7 @@ User=central
Group=central
WorkingDirectory=/opt/central
Environment=HOME=/opt/central
EnvironmentFile=/etc/central/central.env
ExecStart=/opt/central/.venv/bin/central-supervisor
Restart=on-failure
RestartSec=5