懒得折腾。但还是部署了,因为足够简单、轻量。

安装 Beszel 服务端
找一台 Linux 机器安装 Beszel 服务
mkdir -p /opt/service/beszel/ && cd /opt/service/beszel/
编辑
vim /opt/service/beszel/docker-compose.yml
配置内容
配置通常可以直接使用,不用管配置中的 <令牌> 和 <密钥> 值,稍后启动服务后,通过 Console 页面可以获取到 Agent 的 KEY 和 Token
services:
beszel:
image: henrygd/beszel:latest
container_name: beszel
restart: unless-stopped
ports:
- 8090:8090
volumes:
- ./beszel_data:/beszel_data
- ./beszel_socket:/beszel_socket
beszel-agent:
image: henrygd/beszel-agent:latest
container_name: beszel-agent
restart: unless-stopped
network_mode: host
volumes:
- ./beszel_agent_data:/var/lib/beszel-agent
- ./beszel_socket:/beszel_socket
- /var/run/docker.sock:/var/run/docker.sock:ro
environment:
LISTEN: /beszel_socket/beszel.sock
HUB_URL: http://localhost:8090
TOKEN: "<令牌>"
KEY: "<密钥>"
启动
docker compose up -d
稍等下请求本地端口
$ curl -I http://localhost:8090
预期打印
HTTP/1.1 200 OK
Content-Type: text/html; charset=utf-8
Vary: Origin
X-Content-Type-Options: nosniff
X-Frame-Options: SAMEORIGIN
X-Xss-Protection: 1; mode=block
Date: Wed, 07 Jan 2026 10:03:22 GMT
Content-Length: 761
安装 Caddy 代理
以往一直使用 Nginx,这还是第一次使用 Caddy,为了 Auto HTTPS 特性。
安装文档:https://caddyserver.com/docs/install
编辑配置文件
vim /etc/caddy/Caddyfile
# 格式化
caddy fmt --overwrite /etc/caddy/Caddyfile
配置内容
beszel.yasking.org {
reverse_proxy 127.0.0.1:8090
}
校验
sudo caddy validate --config /etc/caddy/Caddyfile
# 重载
sudo systemctl reload caddy
# 查看状态
sudo systemctl status caddy
将域名地址指向服务器 IP,给 DNS 解析生效留点儿时间
而后在服务器上请求验证
curl -I -L --header "Host: beszel.yasking.org" http://localhost
预期输出
HTTP/1.1 308 Permanent Redirect
Connection: close
Location: https://beszel.yasking.org/
Server: Caddy
Date: Wed, 07 Jan 2026 10:09:33 GMT
HTTP/2 200
alt-svc: h3=":443"; ma=2592000
content-type: text/html; charset=utf-8
date: Wed, 07 Jan 2026 10:09:33 GMT
vary: Origin
via: 1.1 Caddy
x-content-type-options: nosniff
x-frame-options: SAMEORIGIN
x-xss-protection: 1; mode=block
content-length: 761
此时部署完成,可以访问:https://beszel.yasking.org/
添加 Agent
你要监控哪个服务器,就在哪个机器上安装 Agent
添加本机
在部署 Beszel 服务的时候已经同时启动了 Beszel Agent,只是最初的 YAML 配置中 TOKEN 和 KEY 没有设置。
在 Console 上点击「添加客户端」,填入机器名称、主机填写
名称:(自定义名称)
主机:/beszel_socket/beszel.sock(不要修改)

保存后重启服务
$ docker compose up -d
添加其它服务器
也还是点击「添加客户端」
名称:(自定义名称)
主机:11.22.33.44(要监控指标的服务器 IP)
复制 Compose 文件或者 Docker run 命令到要监控指标的服务器上执行。

Beszel 效果
页面美观,部署简单、Golang 开发的也足够轻量。
首页

详情

移动端兼容良好

另外还支持 Webhook 推送告警信息,我暂时不需要就没继续设置了。