Files
Orchestrator/dhive/Jury-Voting/DEPLOY.md
T
ankn a5f8fb49ab Migrate all repos into monorepo context folders
Bahn: aisupport, Analyse-O2C-C2S, awesome-bahn-mcp-servers, beam-mcp,
      Confluence_Bot, db-planet-mcp-server, O2C-Harness, project-audit,
      Projekt-KIQ-HP, teamlandkarte-mcp
Dhive: Jury-Voting
Privat: CV, NoteGraph (NOTE: NoteGraph needs complete redo after consolidation)
Shared: AI-Orchestrator, OrgMyLife, power_skills_and_more
Shared/references: symphony (read-only)

Bahn repos remain available as independent remotes - this monorepo
pulls them in via subtree, the originals are untouched.
2026-06-30 20:39:52 +02:00

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
```