2026-06-09 20:31:08 +02:00
2026-06-09 20:31:08 +02:00
2026-06-09 20:31:08 +02:00
2026-06-09 20:31:08 +02:00
2026-06-09 20:31:08 +02:00
2026-06-09 20:31:08 +02:00
2026-06-09 20:31:08 +02:00
2026-06-09 20:31:08 +02:00
2026-06-09 20:31:08 +02:00
2026-06-09 20:31:08 +02:00
2026-06-09 20:31:08 +02:00
2026-06-09 20:31:08 +02:00
2026-06-09 20:31:08 +02:00

ProxUI

Multi-Tenant-Konsole fuer Proxmox auf Basis von Go, Supabase Postgres/Auth, Redis/asynq und React.

Architektur

  • backend/: HTTP-API, Auth/JWT-Validierung, RBAC, DB-Zugriff und Proxmox-Orchestrierung
  • worker/: asynchrone Jobs fuer Proxmox-Tasks, Reconciliation und Cleanup
  • console-proxy/: Websocket-Proxy fuer noVNC/xterm.js ohne direkte Proxmox-Verbindung im Browser
  • frontend/: React/TypeScript/Vite-App fuer Kunden- und Admin-Workflows
  • migrations/: versionierte SQL-Migrationen
  • deploy/: lokale und spaetere Deployment-Artefakte

Lokales Setup

  1. Go >= 1.22 installieren.
  2. Node.js >= 20 und npm installieren.
  3. Docker Desktop oder kompatible Docker Engine installieren.
  4. .env.example nach .env kopieren und lokale Werte setzen.
  5. Abhaengigkeiten installieren: npm install --prefix frontend.
  6. Go-Abhaengigkeiten installieren: go work sync.
  7. Backend starten: go run ./backend/cmd/api.
  8. Console-Proxy starten: go run ./console-proxy/cmd/console-proxy.
  9. Frontend starten: npm run dev --prefix frontend.

make dev, make migrate, make test und make lint werden mit E0-T02 angelegt, sobald die lokale Docker-Umgebung steht.

Sicherheitsregeln

  • Nur Backend, Worker und Console-Proxy sprechen mit Proxmox.
  • Proxmox-Tokens werden nie im Frontend sichtbar und nie unverschluesselt gespeichert.
  • Tenant-bezogene Queries muessen immer tenant-gefiltert sein.
  • Secrets gehoeren in .env oder einen Secret-Manager, nie ins Repo.
S
Description
No description provided
Readme
333 KiB
Languages
Go 50.5%
Shell 33.5%
TypeScript 8.9%
PLpgSQL 3.5%
CSS 2.4%
Other 1.1%