VPS Manager
Control panel for self-hosted servers
A single-server dashboard for VPSs that run projects under PM2 or Docker, designed to be fully usable from a phone.
- Role
- Designer and developer
- Type
- My tool
- Year
- 2026
- Status
- In daily use
Illustration of a deploy streaming live in VPS Manager.
Overview
I host my own products and several client systems on Linux VPSs. VPS Manager is the control panel I built to run them, from a laptop or from my phone.
It shows every PM2 process and Docker container with its git branch, tag and whether it is behind origin, deploys with one tap, and opens a real terminal for any project in the browser.
Built with
- React
- Node.js
- Express
- WebSockets
- xterm.js
- node-pty
- PM2
- Docker
What I built
- 01Live CPU, memory, disk and network charts over WebSockets
- 02Every PM2 process and Docker container, with git branch, tag and behind-origin status
- 03One-tap deploys: fetch → checkout → install → build → restart, streamed live
- 04A persistent browser terminal for every project, with node-pty and xterm.js
- 05A watchdog with Telegram alerts for leaks, restart loops, OOM exits and full disks
- 06A phone-first layout, so a server can be fixed from anywhere
Engineering
Stops at the first failure
Every deploy step streams its output live, and the pipeline halts on the first error, so a failed build doesn't restart the running app.
Real terminals
node-pty spawns a persistent shell for each project, and xterm.js renders it in the browser.
Problems find me
The watchdog looks for memory-leak signals, restart loops, OOM exits and full disks, and alerts me on Telegram.