ProxCenter is an alternative to VMware vCenter for Proxmox environments. It provides a modern, intuitive web interface to manage multiple Proxmox VE clusters and Proxmox Backup Server instances from a single pane of glass.
See the code
www.proxcenter.io · Live Demo · Documentation
Enterprise-grade management platform for Proxmox Virtual Environment
ProxCenter is a modern web interface for monitoring, managing, and optimizing Proxmox VE infrastructure. Multi-cluster management, cross-hypervisor migration, workload balancing, and more, all from a single pane of glass.
# Community Edition (Free)
curl -fsSL https://proxcenter.io/install/community | sudo bash
# Enterprise Edition
curl -fsSL https://proxcenter.io/install/enterprise | sudo bash -s -- --token YOUR_TOKEN
The installer sets up Docker, the Compose stack, PostgreSQL and the persistent volumes under /opt/proxcenter. When it finishes, open http://your-server:3000 and create the first admin account.
Running behind a reverse proxy? Enable the "Behind reverse proxy" toggle in the connection settings, to prevent failover from switching to the internal node IPs.
See the documentation for the full feature list and the Community vs Enterprise breakdown.
![]() Multi-cluster Inventory | ![]() DRS Load Balancing |
![]() Hypervisor Migration | ![]() Real-Time Ceph Monitoring |
![]() Site Recovery | ![]() Multi-channel Alerts |
![]() Zero Trust Network Security | ![]() Network Topology Map |
Pull the new images and restart the stack:
cd /opt/proxcenter
docker compose pull
docker compose up -d
Schema migrations run automatically on startup. Nothing else is required for a Community install.
Enterprise, when a release adds a setting: docker compose pull refreshes the images, never docker-compose.yml, and the shipped Compose files pass their environment through an explicit environment: list. A setting introduced by a newer release therefore never reaches the container on a pull-only update, whatever /opt/proxcenter/.env holds. Re-run the installer to refresh the Compose file:
curl -fsSL https://proxcenter.io/install/enterprise | sudo bash -s -- --token YOUR_TOKEN
It keeps your secrets, your customised NEXTAUTH_URL and APP_URL, and your license key, leaves the data untouched, then pulls and recreates only the containers whose environment changed. An install that pinned a version in .env has to pass it again with --version, since a re-run otherwise resets it to latest.
High availability: the three nodes run the same Compose file, so the same two commands apply per node. Upgrade one node at a time and keep the version identical across the cluster.
Coming from v1.3.x or earlier: SQLite support was removed in v1.4.0 and there is no in-place migration to PostgreSQL. Follow Upgrade to v1.4 for the cutover.
Checking the result:
cd /opt/proxcenter
docker compose ps # Service status
docker compose logs -f # Follow the logs
docker compose restart # Restart the stack
The Docker install above is the supported path. Building by hand suits hosts without Docker, such as an LXC container, and covers the Community Edition only: the Enterprise features need the closed-source orchestrator.
You need Node.js 22.12 or later, PostgreSQL 16 or later with an empty database, and 4 GB of RAM for the build. The running application needs far less, around 300 MB.
VERSION=vX.Y.Z # the release to install
mkdir -p /opt/proxcenter && cd /opt/proxcenter
curl -fsSL https://github.com/adminsyspro/proxcenter-ui/archive/refs/tags/$VERSION.tar.gz | tar xz --strip-components=1
cd frontend
npm ci --legacy-peer-deps --ignore-scripts
npm run build:icons
npx prisma generate
PROXCENTER_SKIP_TYPECHECK=1 npm run build
PROXCENTER_SKIP_TYPECHECK=1 skips the TypeScript check of next build. That check needs about 3 GB of heap on top of the compiler, and CI has already run it on every released tag. Keep it on when you build modified sources, with about 8 GB of RAM and NODE_OPTIONS=--max-old-space-size=4096.
Create the environment file, for example /opt/proxcenter_data/.env, readable by root only:
NODE_ENV=production
DATABASE_URL=postgresql://proxcenter:PASSWORD@localhost:5432/proxcenter?schema=public
APP_SECRET=... # openssl rand -base64 32
NEXTAUTH_SECRET=... # openssl rand -base64 32
NEXTAUTH_URL=http://your-server:3000
APP_URL=http://your-server:3000
Apply the schema, seed the default tenant and roles, then start the server from the frontend directory:
set -a && . /opt/proxcenter_data/.env && set +a
npx prisma migrate deploy
npx prisma db seed
node start.js # listens on 0.0.0.0:3000, override with PORT and HOSTNAME
Run node start.js under a service manager, such as a systemd unit with WorkingDirectory=/opt/proxcenter/frontend and EnvironmentFile=/opt/proxcenter_data/.env. To upgrade, fetch the new tag, repeat the build, run npx prisma migrate deploy and restart the service. The seed is idempotent and safe to run again.
High availability adds its own sizing and network prerequisites, listed in the documentation.
Automated scanning via CodeQL, Trivy, and Dependabot. Report vulnerabilities to [email protected].
338 followers · starred Apr 2026
811 followers · starred May 2026
2,271 followers · starred Jul 2026
137 followers · starred Apr 2026
ProxCenter is an alternative to VMware vCenter for Proxmox environments. It provides a modern, intuitive web interface to manage multiple Proxmox VE clusters and Proxmox Backup Server instances from a single pane of glass.
See the code
www.proxcenter.io · Live Demo · Documentation
Enterprise-grade management platform for Proxmox Virtual Environment
ProxCenter is a modern web interface for monitoring, managing, and optimizing Proxmox VE infrastructure. Multi-cluster management, cross-hypervisor migration, workload balancing, and more, all from a single pane of glass.
# Community Edition (Free)
curl -fsSL https://proxcenter.io/install/community | sudo bash
# Enterprise Edition
curl -fsSL https://proxcenter.io/install/enterprise | sudo bash -s -- --token YOUR_TOKEN
The installer sets up Docker, the Compose stack, PostgreSQL and the persistent volumes under /opt/proxcenter. When it finishes, open http://your-server:3000 and create the first admin account.
Running behind a reverse proxy? Enable the "Behind reverse proxy" toggle in the connection settings, to prevent failover from switching to the internal node IPs.
See the documentation for the full feature list and the Community vs Enterprise breakdown.
![]() Multi-cluster Inventory | ![]() DRS Load Balancing |
![]() Hypervisor Migration | ![]() Real-Time Ceph Monitoring |
![]() Site Recovery | ![]() Multi-channel Alerts |
![]() Zero Trust Network Security | ![]() Network Topology Map |
Pull the new images and restart the stack:
cd /opt/proxcenter
docker compose pull
docker compose up -d
Schema migrations run automatically on startup. Nothing else is required for a Community install.
Enterprise, when a release adds a setting: docker compose pull refreshes the images, never docker-compose.yml, and the shipped Compose files pass their environment through an explicit environment: list. A setting introduced by a newer release therefore never reaches the container on a pull-only update, whatever /opt/proxcenter/.env holds. Re-run the installer to refresh the Compose file:
curl -fsSL https://proxcenter.io/install/enterprise | sudo bash -s -- --token YOUR_TOKEN
It keeps your secrets, your customised NEXTAUTH_URL and APP_URL, and your license key, leaves the data untouched, then pulls and recreates only the containers whose environment changed. An install that pinned a version in .env has to pass it again with --version, since a re-run otherwise resets it to latest.
High availability: the three nodes run the same Compose file, so the same two commands apply per node. Upgrade one node at a time and keep the version identical across the cluster.
Coming from v1.3.x or earlier: SQLite support was removed in v1.4.0 and there is no in-place migration to PostgreSQL. Follow Upgrade to v1.4 for the cutover.
Checking the result:
cd /opt/proxcenter
docker compose ps # Service status
docker compose logs -f # Follow the logs
docker compose restart # Restart the stack
The Docker install above is the supported path. Building by hand suits hosts without Docker, such as an LXC container, and covers the Community Edition only: the Enterprise features need the closed-source orchestrator.
You need Node.js 22.12 or later, PostgreSQL 16 or later with an empty database, and 4 GB of RAM for the build. The running application needs far less, around 300 MB.
VERSION=vX.Y.Z # the release to install
mkdir -p /opt/proxcenter && cd /opt/proxcenter
curl -fsSL https://github.com/adminsyspro/proxcenter-ui/archive/refs/tags/$VERSION.tar.gz | tar xz --strip-components=1
cd frontend
npm ci --legacy-peer-deps --ignore-scripts
npm run build:icons
npx prisma generate
PROXCENTER_SKIP_TYPECHECK=1 npm run build
PROXCENTER_SKIP_TYPECHECK=1 skips the TypeScript check of next build. That check needs about 3 GB of heap on top of the compiler, and CI has already run it on every released tag. Keep it on when you build modified sources, with about 8 GB of RAM and NODE_OPTIONS=--max-old-space-size=4096.
Create the environment file, for example /opt/proxcenter_data/.env, readable by root only:
NODE_ENV=production
DATABASE_URL=postgresql://proxcenter:PASSWORD@localhost:5432/proxcenter?schema=public
APP_SECRET=... # openssl rand -base64 32
NEXTAUTH_SECRET=... # openssl rand -base64 32
NEXTAUTH_URL=http://your-server:3000
APP_URL=http://your-server:3000
Apply the schema, seed the default tenant and roles, then start the server from the frontend directory:
set -a && . /opt/proxcenter_data/.env && set +a
npx prisma migrate deploy
npx prisma db seed
node start.js # listens on 0.0.0.0:3000, override with PORT and HOSTNAME
Run node start.js under a service manager, such as a systemd unit with WorkingDirectory=/opt/proxcenter/frontend and EnvironmentFile=/opt/proxcenter_data/.env. To upgrade, fetch the new tag, repeat the build, run npx prisma migrate deploy and restart the service. The seed is idempotent and safe to run again.
High availability adds its own sizing and network prerequisites, listed in the documentation.
Automated scanning via CodeQL, Trivy, and Dependabot. Report vulnerabilities to [email protected].
338 followers · starred Apr 2026
811 followers · starred May 2026
2,271 followers · starred Jul 2026
137 followers · starred Apr 2026