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

1.2 KiB

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.delocalhost:3002
  4. Score data persists in /opt/jury-voting/server/data/session.json

DNS Setup (one-time)

Add an A record: unikat.andreknie.de217.160.174.2

Caddy handles HTTPS automatically via Let's Encrypt.

GitHub Secret

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)

# 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