Files
proxmox_list/prox-visualizer
2026-06-07 11:33:20 +02:00
..
3
2026-06-07 11:33:20 +02:00
2026-06-07 09:30:11 +02:00
2026-06-07 09:30:11 +02:00
3
2026-06-07 11:33:20 +02:00
2026-06-07 09:30:11 +02:00

Prox Visualizer

Dashboard local pour inventorier les VM/LXC Proxmox et reperer les doublons par nom ou par metadata duplicate_id quand les notes sont accessibles.

Backend

cd backend
python -m venv .venv
source .venv/bin/activate
pip install -r requirements.txt
cp .env.example .env
uvicorn app.main:app --reload --host 0.0.0.0 --port 8000

Le fichier backend/.env attend une liste JSON:

PROXMOX_SERVERS='[
  {
    "name": "PVE-203",
    "url": "https://10.0.3.203:8006",
    "token_name": "api-visualizer@pve!visualizer-token",
    "token_value": "secret-du-token"
  }
]'

Avec des droits de lecture limites, le scan tente de lister les VM/LXC. La lecture des descriptions est optionnelle: si Proxmox refuse l'acces aux configs, les machines restent visibles mais duplicate_id reste vide.

Frontend

cd frontend
npm install
npm run dev

Vite sert le dashboard sur http://localhost:5173 et proxifie /api vers http://127.0.0.1:8000.

Pour rendre l'application disponible sur le reseau local:

./start.sh

Ouvre ensuite l'URL Network affichee par Vite, par exemple http://10.0.3.x:5173/.

Routes utiles

  • GET /: etat de l'API.
  • GET /api/proxmox/servers: serveurs configures, sans secrets.
  • GET /api/vms/scan: inventaire, etat des serveurs et groupes de doublons.
  • GET /api/ai/context: contexte JSON compact pour une IA ou un outil externe.
  • GET /api/ai/context.md: meme contexte au format Markdown.