
Self-hosting Beszel Agent the easy way
Yulei ChenBeszel is a lightweight server monitoring platform with a clean dashboard, Docker container stats, and historical data. The Beszel Agent is the component that runs on the servers you want to monitor, collecting system metrics and reporting them back to a central Beszel hub.
Sliplane makes it easy to deploy the Beszel Agent as a container service. With a one-click preset, you can get the agent running in minutes and connected to your existing Beszel hub - no manual Docker setup required.
Prerequisites
Before deploying, ensure you have a Sliplane account (free trial available).
You also need a running Beszel hub instance to connect the agent to. The agent itself doesn't provide a web interface - it sends metrics to your hub for visualization and alerting.
Quick start
Sliplane provides one-click deployment with presets.
- Click the deploy button above
- Select a project
- Select a server. If you just signed up you get a 48-hour free trial server
- Click Deploy!
About the preset
The one-click deploy uses Sliplane's Beszel Agent preset. Here's what's included:
- Image:
henrygd/beszel-agent:0.18.4(check Docker Hub for newer versions) - Port:
45876(default TCP port for hub-to-agent SSH communication) - Protocol: TCP (the Beszel hub connects to the agent over SSH)
- Persistent storage: mounted to
/var/lib/beszel-agentfor agent data - KEY: placeholder you must replace with the SSH public key from your Beszel hub
Next steps
After deployment, the agent listens on port 45876 for connections from your Beszel hub. You need to configure both sides to complete the setup.
Getting the SSH key from your hub
- Open your Beszel hub dashboard
- Click Add System
- Copy the SSH public key shown in the dialog
Configuring the agent on Sliplane
- Go to your Beszel Agent service in Sliplane
- Update the
KEYenvironment variable with the SSH public key you copied - Redeploy the service
Adding the agent in your hub
In your Beszel hub's "Add System" dialog:
- Host: your Sliplane service domain (e.g.
beszel-agent-xxxx.sliplane.app) - Port: the TCP port assigned by Sliplane (check your service settings)
- Name: give it a recognizable name
Environment variables
| Variable | Default | Description |
|---|---|---|
PORT | 45876 | TCP port the agent listens on |
KEY | (required) | SSH public key(s) from your Beszel hub |
LOG_LEVEL | warn | Logging level (debug, info, warn, error) |
SKIP_GPU | false | Set to true to skip GPU monitoring |
SYSTEM_NAME | (auto) | Custom name for this system in the hub |
Logging
The agent logs to STDOUT by default, which works with Sliplane's built-in log viewer. Set LOG_LEVEL to debug for more detailed output when troubleshooting connection issues. For general Docker log tips, check out our post on how to use Docker logs.
Cost comparison
Of course you can also run Beszel Agent with other cloud providers. Here is a pricing comparison for the most common ones:
| Provider | vCPU Cores | RAM | Disk | Estimated Monthly Cost | Notes |
|---|---|---|---|---|---|
| Sliplane | 2 | 2 GB | 40 GB | €9 | charge per server |
| Render | 1 | 2 GB | 40 GB | ~$35-$45 | VM Small |
| Fly.io | 2 | 2 GB | 40 GB | ~$20-$25 | VM + volume |
| Railway | 2 | 2 GB | 40 GB | ~$15-$66 | Usage-based |
FAQ
What does Beszel Agent monitor?
Beszel Agent collects CPU usage, memory usage, disk I/O, network traffic, and temperature data from the server it runs on. It can also monitor Docker container stats. On Sliplane, network and Docker container monitoring may be limited since the agent runs inside a container rather than directly on the host.
How do I connect the agent to my Beszel hub?
You need the SSH public key from your hub. Open the hub dashboard, click "Add System", and copy the key. Then set it as the KEY environment variable in your Sliplane service and redeploy. Finally, add the agent's Sliplane domain and port in the hub's "Add System" dialog.
How do I update Beszel Agent?
Change the image tag in your service settings and redeploy. Check Docker Hub for the latest stable version.
Are there alternatives to Beszel?
For server monitoring, popular options include Grafana (paired with Prometheus for metrics collection), Uptime Kuma (focused on uptime and status page monitoring), and Netdata (real-time performance monitoring). Check out our post on 5 awesome Grafana alternatives for a broader comparison.
Can I monitor multiple servers with one Beszel hub?
Yes. Deploy a Beszel Agent on each server you want to monitor. Each agent connects back to the same hub, giving you a unified dashboard across all your infrastructure.