Files
Orchestrator/dhive/knowledge/projects/Jury-Voting/DEPLOY.md
T

49 lines
1.2 KiB
Markdown

# Deployment
## How It Works
1. Push to `main` → GitHub Actions builds frontend + deploys to VPS (217.160.174.2)
2. App runs as systemd service `jury-voting` on port 3002
3. Caddy (managed via NoteGraph/Caddyfile) proxies `unikat.andreknie.de``localhost:3002`
4. Score data persists in `/opt/jury-voting/server/data/session.json`
## DNS Setup (one-time)
Add an A record: `unikat.andreknie.de``217.160.174.2`
Caddy handles HTTPS automatically via Let's Encrypt.
## GitHub Secret
- `DEPLOY_SSH_KEY` — SSH key for root@217.160.174.2 (already configured)
## URLs
- **Login:** `https://unikat.andreknie.de/?token=UNIKAT_jury`
- **Results (beamer):** `https://unikat.andreknie.de/results`
- **Admin:** `https://unikat.andreknie.de/admin`
- **Password:** `UNIKAT_jury`
## Future: Move to d-hive.de
When ready to move to `unikat.d-hive.de`:
1. Add DNS A record for `unikat.d-hive.de` → VPS IP
2. Add `unikat.d-hive.de` block to Caddyfile (same as `unikat.andreknie.de`)
## Manual Operations (on VPS)
```bash
# Check service status
systemctl status jury-voting
# View logs
journalctl -u jury-voting -f
# Restart
systemctl restart jury-voting
# Reset all scores (start fresh)
rm /opt/jury-voting/server/data/session.json
systemctl restart jury-voting
```