Managing cloud infrastructure requires clear visibility into system resources without consuming massive amounts of RAM or CPU. Beszel is an ultra-lightweight, open-source server monitoring hub designed for developers and sysadmins who want real-time metrics, Docker container statistics, and alert notifications without the overhead of heavy enterprise suites. By deploying Beszel via Docker Compose on Ubuntu, you can set up a central dashboard to track your entire fleet of virtual machines in under five minutes.
Get Your VPSie Instance Ready
- Create an Account: Register at the VPSie Client Portal.
- Fund Your Account: Go to Billing in the portal to add funds or set up payment methods.
- Deploy a Server: Create a Linux VM running Ubuntu 24.04 / 26.04 LTS or Debian 12 / 13 with at least 2 vCPUs and 2 GB RAM.
Update System and Install Dependencies
Ensures your package manager and security updates are current. Log into your server via SSH and update the system package database:
sudo apt update && sudo apt upgrade -y
sudo apt install -y curl wget git build-essential
Install Docker & Docker Compose
Ensure the host system is up-to-date and container-ready.
Update package lists and install Docker along with the Docker Compose plugin on your Ubuntu system:
sudo apt install -y ca-certificates curl gnupg
curl -fsSL https://get.docker.com -o get-docker.sh
sudo sh get-docker.sh
Confirm Docker is running by checking its status:
sudo systemctl status docker --no-pager
Configure Docker Compose for Beszel Hub
Set up directory structure and service configuration.
Create a dedicated directory for Beszel and create the docker-compose.yml file:
mkdir -p ~/beszel && cd ~/beszel
nano docker-compose.yml
Paste the following configuration into the file:
services:
beszel:
image: henrygd/beszel:latest
container_name: beszel
restart: unless-stopped
ports:
- "8090:8090"
environment:
- APP_URL=http://YOUR_SERVER_IP:8090
volumes:
- ./beszel_data:/beszel_data
Note: Replace YOUR_SERVER_IP with your server’s public or local IP address.
Launch the Beszel Hub Service
Deploy the containerized hub application.
Start the Beszel Hub container in detached mode:
docker compose up -d
Verify that the container is up and listening on port 8090:
docker ps | grep beszel
Complete Initial Web Admin Onboarding
Create your primary administrator account.
Open your web browser and navigate to:
http://YOUR_SERVER_IP:8090
- Fill in the prompt to create your initial Admin Account (Email and Password).
- Once logged in, click the Add System button at the top right of the Web UI.
- Enter a name for the server you want to monitor (e.g., ubuntu-primary).
Deploy the Beszel Agent
The Web UI will automatically generate a custom docker-compose.yml snippet containing your unique SSH public key and token for the Beszel Agent.
Open a terminal on the system you want to monitor and run:
mkdir -p ~/beszel-agent && cd ~/beszel-agent
nano docker-compose.yml
Paste the agent configuration provided by the Web UI, save the file, and launch the agent:
docker compose up -ddocker compose up -d
Verification: Return to the Beszel Hub Web UI. Within a few seconds, the system status indicator will turn green, displaying live metrics for CPU, memory, disk I/O, network bandwidth, and running Docker containers.

