Skip to content

agit8or1/Depl0y

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

264 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

Depl0y

Proxmox VE Management Panel β€” Infrastructure at your fingertips

🌐 Website: depl0y.mspreboot.com

License Python Vue.js Version Website GitHub Stars

⭐ If Depl0y saves you time, give it a star β€” it helps others find the project!

Depl0y is a free, open-source web control panel for Proxmox VE. Manage VMs, clusters, nodes, storage, backups, networking, firewall, HA, and physical hardware from a single dark-mode interface.


Screenshots

A guided tour at depl0y.mspreboot.com covers more screens than fit here.

Login

Login

Proxmox Datacenters & Hosts

Proxmox Hosts Multi-datacenter view with node health, cluster join/unjoin, server-model chips, BMC poll selector, and ⚑ Power dropdown per host

VM List

VM List Filter, search, bulk-select, and per-row actions β€” start/stop/migrate/clone/snapshot/delete

VM Detail

VM Detail Per-VM lifecycle, config (CPU / RAM / disks / NICs), snapshots, firewall, console, and live charts

Create VM

Create VM Guided VM creation with cloud-init credentials, storage selection, and ISO/cloud-image picker

Federation Map

Federation Map Live OpenStreetMap showing all datacenters as pins β€” green online, red offline

Cluster Status

Cluster Status Cluster-wide quorum, node membership, HA resources, and replication jobs

HA Management

HA Management HA group + resource CRUD with quorum/state monitoring

Backup

Backup PBS datastore browsing, backup schedule CRUD, and manual triggers

Storage

Storage Storage pools across nodes with content browsing

ISO & Cloud Images

Cloud Images Upload ISOs, configure cloud-image templates, manage on disk

iDRAC / iLO Dashboard

iDRAC Dashboard Hardware health, power, temperature, wattage for all BMC-equipped servers β€” Dell iDRAC + HPE iLO via Redfish

iDRAC Server Detail

iDRAC Server Detail Per-server CPU / DIMM / storage / firmware / network / SEL inventory + power actions

Deploy LLM

Deploy LLM One-click LLM deployment β€” Ollama, llama.cpp, vLLM, LocalAI with optional GPU passthrough

Audit Log

Audit Log Every user action and system change recorded with filtering

User Management

User Management Role-based access β€” Admin, Operator, Viewer β€” with 2FA/TOTP

Settings

Settings Cloud image setup, cluster SSH, HA enablement, integrations, and one-click system updates

API Explorer

API Explorer Browse and test the depl0y REST API directly from the panel


Features

πŸ–₯️ Full Proxmox VE Management

  • VMs β€” start/stop/reboot/suspend/resume, config editing (CPU, RAM, disks, NICs), snapshots, clone, migrate, firewall, VNC console, QEMU serial terminal
  • LXC Containers β€” lifecycle, config editing, snapshots, terminal (xterm.js)
  • Nodes β€” RRD metrics charts, VM + LXC list, storage browser, network config, task log, node terminal, OS-level shutdown / reboot via pvesh
  • Cluster β€” status, node list, HA groups and resources, quorum monitoring
  • Cluster Join / Unjoin β€” join any node to a cluster (fingerprint auto-fetched), remove nodes from cluster
  • Replication β€” job CRUD, force-sync, log viewer
  • Node Evacuation β€” migrate all VMs off a node to other online nodes
  • Firewall β€” cluster, node, and VM-level rules; security groups; IPsets
  • Backup β€” schedule CRUD, manual trigger, PBS datastore browsing
  • Storage β€” pool management, content browsing, ISO and cloud image management
  • Networking β€” bridge/bond/VLAN config with apply-pending support
  • Offline-tolerant β€” host/node endpoints (status, vms, lxc, tasks) return clean empty payloads when a node is powered off so the dashboard doesn't blow up

πŸ“Š Dashboard

  • Widget grid β€” drag-and-drop reordering with masonry (asymmetric column) layout
  • 10+ widgets β€” CPU, RAM, storage, network traffic, disk I/O, VM status, alerts, activity feed, quick actions
  • Clickable tiles β€” every widget links to its management view
  • Per-widget refresh β€” each widget auto-refreshes independently

πŸ—ΊοΈ Federation & Multi-Datacenter

  • Multi-host β€” add and manage multiple Proxmox VE hosts with API token or password auth
  • Live Map β€” OpenStreetMap/Leaflet with datacenter pins (blue = online, red = offline)
  • Federated Summary β€” aggregate VM/node/storage stats across all registered hosts
  • Federated Dashboard β€” cross-datacenter VM/node overview in one view

πŸ–§ iDRAC / iLO Out-of-Band Management

  • Redfish Dashboard β€” unified health, power, temperature, wattage for all BMC-equipped servers
  • Two-section Power menu β€” surface a ⚑ Power dropdown on every host card, node card, and on the iDRAC management page. Top section runs through the Proxmox OS (graceful shutdown / reboot via pvesh), bottom section runs through iDRAC/BMC (Power On / Force Off / Graceful Off / Reset / Power Cycle / PXE) β€” the only path that can power on a fully-off machine
  • Server model auto-detection β€” Redfish Model β†’ Dell SystemPID β†’ Dell SystemID β†’ PCI subsystem lookup β†’ manager generation tag, in that order. Resolves PowerEdge model names directly from the BMC even on 13G boxes where the standard Model field is blank
  • Manual model override β€” pencil-edit on the host/node model chip; persists to system_settings and applies to the live cache instantly. Required for older (iDRAC 7) BMCs that don't expose model metadata at all
  • Configurable poll interval β€” 1 / 2 / 5 / 10 minutes, persisted globally; backend live-reschedules the job and queues an immediate poll on change
  • Continuous post-poll refresh β€” Refresh All / Poll Now drives a 1.5 s cache re-fetch loop for ~20 s, so per-server model/health/power-state updates appear as soon as each individual BMC responds (rather than waiting for the slowest)
  • Hardware Inventory β€” CPUs, DIMMs, storage controllers & drives, firmware, NICs, SEL
  • Daily firmware-update check β€” Dell catalog XML parsed daily; BIOS / iDRAC available-version chips with direct support links
  • Multi-vendor β€” Dell iDRAC (iDRAC 7 / 8 / 9 / 14G+) and HPE iLO via Redfish v1; SSH-based hardware reporting for hosts without Redfish

πŸ€– LLM Deployment

  • Simple + Advanced modes β€” 4 questions to deploy, or full control over engine/model/GPU/OS/storage
  • 4 Engines β€” Ollama, llama.cpp (GGUF), vLLM (OpenAI-compatible), LocalAI (Docker)
  • 15+ Models β€” Llama 3.x, Mistral, Phi-4, Gemma, Qwen, DeepSeek, Code Llama, and more
  • GPU Passthrough β€” NVIDIA (CUDA) and AMD (ROCm) with automatic driver install
  • Add-ons β€” Open WebUI, ComfyUI (Stable Diffusion), AI auto-tuning, RAG, conversation logging

πŸ“₯ VM Import

  • File upload β€” OVA, OVF, VMDK, VHD, VHDX, QCOW2, RAW via drag & drop
  • VMware direct β€” connect to ESXi or vCenter, browse and pull VMs over the network
  • Auto-parse β€” OVF descriptors extracted for name, CPU, RAM, disk, OS type
  • Disk conversion β€” VMDK/VHD/VHDX β†’ qcow2 via qemu-img automatically

⚑ Cloud Image Deployment

  • 30-second deployments β€” Ubuntu, Debian, Rocky, AlmaLinux (after one-time template setup)
  • Cloud-Init β€” hostname, user, SSH key, static IP, DNS, package injection

πŸ” Security & Access Control

  • Role-based β€” Admin, Operator, Viewer with route-level enforcement
  • 2FA / TOTP β€” authenticator app support with QR code setup
  • Encrypted storage β€” all passwords and API tokens encrypted at rest (Fernet)
  • Audit log β€” every user action and system change recorded
  • Rate limiting β€” 100 req/min globally with security headers

πŸ”„ VM Update Management

  • One-click updates β€” check and install updates on any managed Linux VM via SSH
  • Real-time streaming β€” live terminal output as apt/dnf runs
  • Auto-scheduled checks β€” configurable interval (6h–7d) for automatic checks

Quick Start

One-Line Installation

curl -fsSL http://deploy.agit8or.net/downloads/install.sh | sudo bash

Installs all dependencies, configures nginx, and creates a systemd service β€” ready in ~30 seconds.

Post-Installation

  1. Open http://your-server-ip β€” default credentials: admin / admin (change immediately)
  2. Enable 2FA β€” Settings β†’ User Profile β†’ Enable TOTP
  3. Add a Proxmox host β€” Proxmox Hosts β†’ Add Datacenter β†’ test connection
  4. Deploy or import a VM

Updating

cd /opt/depl0y && git pull origin main && sudo bash deploy.sh

Or: Settings β†’ System Updates β†’ Check for Updates β†’ Install


Configuration

Environment Variables (/etc/depl0y/config.env)

SECRET_KEY=your_jwt_secret_key_minimum_32_chars
ENCRYPTION_KEY=your_fernet_encryption_key
DATABASE_URL=sqlite:////var/lib/depl0y/db/depl0y.db
DEBUG=false
LOG_LEVEL=INFO

Storage Locations

Path Contents
/var/lib/depl0y/db/depl0y.db SQLite database
/var/lib/depl0y/isos ISO images
/var/lib/depl0y/cloud-images Cloud image templates
/var/lib/depl0y/ssh_keys SSH key pairs
/var/log/depl0y/ Application logs
/tmp/depl0y-imports/ Temporary VM import working directory

Architecture

β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚         Frontend (Vue.js 3)         β”‚
β”‚   SPA Β· Axios Β· Chart.js Β· Leaflet  β”‚
β”‚   Dark Mode Β· Widget Grid Β· xterm   β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
               β”‚ HTTP REST (/api/v1)
β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β–Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚       Backend (FastAPI + Python)     β”‚
β”‚  Auth Β· VMs Β· Cluster Β· Import      β”‚
β”‚  LLM Β· HA Β· Backup Β· iDRAC Β· Alerts β”‚
β””β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
       β”‚              β”‚
β”Œβ”€β”€β”€β”€β”€β”€β–Όβ”€β”€β”€β”€β”€β”€β” β”Œβ”€β”€β”€β”€β–Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚   SQLite DB  β”‚ β”‚   Proxmox VE API    β”‚
β”‚  (users/VMs/ β”‚ β”‚  nodes/qemu/cluster β”‚
β”‚  settings)   β”‚ β”‚  + Redfish / SSH    β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜

Key dependencies: proxmoxer, pyVmomi, paramiko, SQLAlchemy, Pydantic, APScheduler, python-jose, Leaflet


API Documentation

  • Swagger UI: http://your-server/api/v1/docs
  • ReDoc: http://your-server/api/v1/redoc
  • In-App API Explorer: Sidebar β†’ API Explorer

Development

# Backend
cd backend && python3 -m venv venv && source venv/bin/activate
pip install -r requirements.txt
uvicorn app.main:app --reload

# Frontend
cd frontend && npm install && npm run dev

# Production build + deploy
sudo bash /opt/depl0y/deploy.sh

Troubleshooting

Cannot connect to Proxmox host

  • Verify credentials and network connectivity
  • Disable verify_ssl for self-signed certificates
  • Ensure Proxmox API port (8006) is reachable

VM import fails

  • Ensure local storage exists with enough space on the target node
  • SSH must be configured between Depl0y server and Proxmox host (Settings β†’ SSH Setup)

Cluster join fails

  • Ensure the root@pam password is correct for the cluster master node
  • The fingerprint is auto-fetched β€” if it fails, fetch it manually: pvecm status on the master

Backend logs

sudo journalctl -u depl0y-backend -f

For more help: GitHub Issues


Contributing

Pull requests welcome. For major changes, open an issue first to discuss what you'd like to change.


License

MIT β€” see LICENSE for details.