Docker 一键部署 Beszel:新手也能搞定的多台 VPS 统一监控方案

厌倦了监控多台 VPS 时手动开窗口、重启就得重连的麻烦?离开设备就束手无策?别担心,新手也能轻松搞定!本文揭秘如何用 Docker 一键部署 Beszel,实现轻量级服务器统一监控。告别实时性焦虑吧——Beszel 追求低资源占用,提供简洁可视化面板,集中展示磁盘、CPU、内存等关键指标。部署过程超简单:只需复制几条 Docker 命令,在一台 VPS 搭面板,其他每台添加 Agent 容器。几分钟内,所有服务器状态尽收眼底,无论用电脑、手机还是平板,随时查看健康状态。告别手动操作,拥抱高效管理,立即阅读解锁详细步骤!

新手也能上手的服务器监控方案:Docker 一键部署 Beszel

Beszel网站项目介绍

 

目前我手里有几台 VPS,希望能在同一个页面集中查看这些服务器的运行情况,比如磁盘占用、内存使用率、CPU 负载等。

一开始,我用的是一种比较“原始”的方式:
通过 Termius 同时开四个窗口,每个窗口连一台 VPS,然后手动运行 htop,靠这种方法来观察各台服务器的实时状态。

这种方法有个明显优点:实时性确实很强,CPU 和内存的波动几乎可以立刻反映出来。但它的问题也同样明显。

通过 Termius 同时打开多个窗口,分别连接不同 VPS 并运行 htop 查看服务器实时状态的操作示意图。

使用 Termius 多窗口 + htop 查看多台 VPS 的实时运行状态

首先,这种方式极不方便
每次重启电脑都得重新连上服务器,再手动敲 htop。就算通过配置让它登录后自动启动,整体体验依然称不上友好。

其次,还有个更致命的限制:
只能在特定的一台电脑上查看
离开这台设备,或者临时换用手机、平板,就没法随时掌握 VPS 的运行情况。

基于这些痛点,我开始考虑换一种方案:
在尽量不拖累服务器性能的前提下,把所有 VPS 的运行状态统一展示在一个网页上,这样无论人在哪、身边是什么设备,都能直接打开页面查看。

至于“实时程度”,我并不强求到秒级。
秒级刷新的确更“酷”,但也意味着更高的资源消耗,而且要对网络稳定性和多机通信提出更高要求。

所以我的权衡是:

优先考虑低资源占用,其次是可视化展示,实时性可以适当放宽。
就算有十秒左右的延迟,对我来说完全能接受。

在这个前提下,其实现有方案不少,比如哪吒监控、Komari 等,它们通常能做到非常高的刷新频率,但同时也会占用更多系统资源,适合对实时性极度敏感的场景。

而 Beszel 走的是另一条路。
它定位为轻量级服务器监控:不追秒级刷新,而是用更低的资源占用换来一个简洁直观的状态总览页面,更适合“平时看看整体健康状况”的需求。

所以,这里更多是选择取向的问题,而不是谁更“高级”:

  • 如果你极度看重实时数据,可以选更偏“重型”的监控方案;
  • 如果你更在意轻量、低占用、部署简单,那 Beszel 会是很合适的选择。

在真正动手之前,我对 Beszel 多少有些顾虑:
只要涉及跨多台 VPS 统一监控,基本就意味着每台机器都要部署 Agent 程序,然后做一些连接配置,一听就不太像“简单方案”。

但实测下来发现,它的搭建过程比想象中顺滑很多。
核心步骤就是:在每台 VPS 上装好 Docker,然后跑几条容器命令。
面板和 Agent 都支持容器部署,对已经习惯 Docker 的人来说几乎是“复制粘贴式”操作,这种思路和部署 PanCheck、AdGuard Home 等 Docker 化服务是类似的,都是通过 docker-compose 或 docker run 快速拉起来,然后在浏览器中做可视化管理。[1][2][3]

下面就具体分享一下,我是 如何用 Docker 搭建 Beszel 这套轻量级服务器监控系统 的。


Docker 一键部署 Beszel(面板端)

在正式操作之前,先理清目标,避免后面步骤容易混淆。

部署目标说明

我们要实现的目标是:

在一台 VPS 上部署 Beszel 面板,用来统一监控其它多台 VPS 的运行状态。

也就是说:

  • 只需要 一台服务器 负责承载并展示监控页面(面板端);
  • 每一台 VPS(包括这台面板机)都需要运行一个 Agent 容器,用来采集数据并上报。

默认环境说明

下面的操作以一个比较常见、也比较容易复现的环境为例:

  • 一共 3 台 VPS
  • 系统为 Ubuntu 20.04 / 22.04 / 24.04
  • 拥有 root 权限,或者可以使用 sudo
  • 系统中已经安装 Docker

如果尚未安装 Docker,可以先通过官方脚本完成一键安装:

curl -fsSL https://get.docker.com | sh

(这类通过 Docker 部署自建服务的方式,在部署其他项目如 PanCheck、AdGuard Home 时也同样常见,方便快速迁移与管理。[1][2])

Beszel 的整体结构

先看一下 Beszel 的基本架构,有个整体印象会更容易理解后面的配置。

Beszel 采用的是 1 个面板 + N 个 Agent 的结构:

VPS-A(面板服务器)
├─ Beszel Dashboard(Web 页面)
├─ Beszel Agent
│
VPS-B
└─ Beszel Agent

VPS-C
└─ Beszel Agent

可以简单理解为:

  • Dashboard(面板)
    • 即你在浏览器中访问到的 Web 页面
    • 整个集群只需要部署一套 Dashboard
  • Agent
    • 运行在每一台被监控 VPS 上,用来采集这台机器的系统状态并上报
    • 包括面板所在的这台 VPS 自身也需要部署一个 Agent

选择一台 VPS 作为面板服务器

面板服务器理论上可以随便选一台,只要能正常对外提供 Web 访问即可,对配置没有特别苛刻的要求。

为了方便说明,下面统一假设:

  • 面板服务器:VPS-1
  • 被监控服务器:VPS-1 / VPS-2 / VPS-3

接下来的面板部署步骤,都在 VPS-1 上完成

第一步:创建 Beszel 项目目录

我习惯把所有 Docker 项目统一放在 /opt 下,便于集中管理。
你也可以根据自己的喜好选择其它路径。

mkdir -p /opt/beszel
cd /opt/beszel

第二步:新建 Docker Compose 文件

在当前目录下创建 docker-compose.yml 文件:

nano docker-compose.yml

然后将以下内容完整粘贴进去:

services:
  beszel:
    image: henrygd/beszel
    container_name: beszel
    restart: unless-stopped
    ports:
      - "8090:8090"
    volumes:
      - ./data:/beszel_data

保存文件:

  • Ctrl + O → 回车保存
  • Ctrl + X 退出编辑器

第三步:启动 Beszel 面板

/opt/beszel 目录中执行:

docker compose up -d

如果终端没有报错,说明容器已成功拉起。

你可以通过下面的命令再确认一下运行状态:

docker ps

看到 beszel 容器显示为 Up 状态即可。

通过执行 docker ps 命令确认 beszel 容器处于 Up 运行状态的终端界面示意图。

使用 docker ps 确认 beszel 容器正常运行(Up 状态)

第四步:访问面板页面

在浏览器中访问:

http://VPS-1的IP:8090

如果页面能够正常打开,并显示出 Beszel 的初始界面,说明:

Beszel 面板已经部署完成

到这里,面板端的部署工作就结束了,可以开始准备 Agent 端。

在浏览器中访问 beszel 面板页面,查看服务运行状态的界面示意图。

通过浏览器访问 beszel 面板页面

接下来要做的,就是在每一台 VPS 上部署 Beszel Agent,然后把它们添加到面板中,统一进行监控。
Agent 的部署步骤相比面板甚至更简单,基本就是复制一条命令执行即可。


在各台 VPS 上部署 Beszel Agent

面板部署完成后,下一步的任务就很清晰了:
在每一台需要纳入监控的 VPS 上运行 Beszel Agent。

有一点需要特别注意:

面板服务器本身同样需要部署一个 Agent。

也就是说,如果你一共 3 台 VPS,那么最终会有:

  • 1 个 Beszel Dashboard(面板)
  • 3 个 Beszel Agent(每台 VPS 各一个)

Agent 的作用是什么?

一句话概括:

  • Agent 负责采集本机的运行状态
    • CPU 使用率
    • 内存占用
    • 磁盘空间
    • 网络流量等
  • 然后将采集到的数据上报给面板,用于可视化展示

Agent 本身设计得比较轻量级,运行时常驻,但日常资源占用不高,适合部署在配置较小的 VPS 上。


第一步:在面板中创建 Agent 信息

在登录服务器运行命令之前,先在 Beszel 面板里完成 Agent 信息的创建,方便后面一键复制命令。

操作步骤:

  • 打开 Beszel 面板 http://VPS-1的IP:8090
  • 点击界面中的 Add System / Add Agent / 添加客户端(名称会随版本或语言略有差异)
  • 在部署方式里选择 Docker

完成这一步后,Beszel 会自动为你生成一段完整的 docker run 命令,其中会包含一个类似 KEY=xxxxx 的参数,用于身份校验。

Docker 一键部署 Beszel:新手也能搞定的多台 VPS 统一监控方案

在面板中复制用于部署 Agent 的 docker run 命令文本的操作界面示意图。

复制用于部署 Agent 的 docker run 命令

👉 这段命令非常关键,后续每台 VPS 部署 Agent 都要用到。


第二步:在 VPS 上运行 Agent 容器

接下来,分别登录你需要监控的各台 VPS(比如 VPS-2、VPS-3)。

第一次部署的时候,建议最稳妥的方式就是:
直接复制面板上生成的 docker run 命令,粘贴到 VPS 上执行(记得提前在该 VPS 安装好 Docker 环境)。

在 VPS 服务器上执行 docker run 命令,启动 Agent 容器的终端操作界面示意图。

在 VPS 上运行 Agent 容器

如果你想提前了解一下命令结构,大致会是下面这种形式:

docker run -d \
  --name beszel-agent \
  --restart unless-stopped \
  -v /:/host:ro \
  -p 45876:45876 \
  -e KEY="这里填写面板生成的 KEY" \
  henrygd/beszel-agent

其中几个关键参数可以简单解释一下:

  • -v /:/host:ro
    将宿主机系统目录以只读方式挂载到容器中,让 Agent 能够读取到系统各项指标信息
  • -p 45876:45876
    指定 Agent 对外暴露的端口,面板后续就是通过这个端口去拉取监控数据的
  • -e KEY="..."
    用于和面板进行身份校验的密钥
    如果缺少这个 KEY,Agent 容器虽然可能能启动,但无法成功注册到面板

第三步:确认 Agent 是否正常运行

命令执行完后,可以用下面的命令查看容器状态:

docker ps

如果输出中能看到类似:

beszel-agent Up ...

就说明 Agent 容器已经正常跑起来了。

通过执行 docker ps 命令确认容器是否处于正常运行状态的终端界面示意图。

使用 docker ps 确认容器是否正常运行


第四步:在面板中添加这台 VPS

Agent 启动成功后,回到 Beszel 面板页面。

  • 再次点击 Add System
  • 填写必要信息:
    • Name:自定义显示名称,例如 VPS-2
    • AddressVPS-2 的 IP:45876(即你在 docker run 命令里映射的端口)
  • 确认并保存

如果设置无误,稍等几秒钟,这台 VPS 就会出现在面板列表中,并开始展示各项运行指标。

在 beszel 面板中添加一台新的 VPS 节点,用于接入并开始监控的操作界面示意图。

在面板中添加这台 VPS


重复以上步骤

接下来按同样的方式操作:

  • VPS-1 上也部署一个 Agent(面板机同样需要被监控)
  • VPS-2VPS-3 分别部署 Agent
  • 在面板中依次添加对应的节点信息

完成后,你就能看到:

所有 VPS 的运行情况,都整齐地集中展示在同一个 Dashboard 页面中。

在监控面板中集中展示所有 VPS 运行状态,包括 CPU、内存、磁盘等信息的总览页面示意图。

所有 VPS 的运行情况集中显示在同一个页面中


注意事项

刚部署完成、开始使用 Beszel 时,你可能会留意到:

  • CPU / 内存等指标并不是“每秒一跳”;
  • 页面上的数据可能会有几秒到十几秒的延迟。

这并不是系统异常,而是 Beszel 的产品设计取向:
它更注重 整体状态和趋势变化,而不是对瞬时波动进行毫秒级捕捉。这种思路与一些通过 Docker 进行周期性检测或监控的工具类似,借由适当降低实时性来换取更低的资源消耗和更好的系统稳定性。[1][3]

如果你的核心需求是:

  • 在一个页面上集中查看多台 VPS 的健康状态;
  • 部署成本尽量低;
  • 服务器性能损耗尽量小;

那么用 Docker 一键搭建 Beszel,会是一个既简单又实用的选择。

原创文章,作者:kp51,如若转载,请注明出处:https://www.kepu51.com/instant-messaging/464.html

(0)
上一篇 2025年12月30日 11:38
下一篇 2026年1月8日 00:12

相关推荐

  • Cloudflare 免费域名邮箱,支持 Catch-all 无限别名收件

    Cloudflare 提供免费的域名邮箱服务,支持 Catch-all 功能,可实现无限别名收件。该服务无需 VPS 或复杂配置,仅需托管域名至 Cloudflare 即可使用。但需注意,此服务仅支持收件,发件需依赖第三方平台(如 Gmail 或 Resend)。适合用作临时邮箱,保护隐私或注册小号。 Cloudflare 域名邮箱与 Poste.io 和 …

    2025年6月8日 网络资讯
  • 2026 年 ColoCrossing 深度体验:从流量、价格到适用场景全解析

    1. 引言 在 VPS 市场中,月流量往往是一个容易被忽视却至关重要的参数。许多用户在选购服务器时只关注 CPU 核心数和内存大小,却在实际部署视频站点、文件分发节点或反向代理集群后才发现——流量配额远远不够用,要么被限速,要么被收取高额超额费用。对于那些每月需要传输数十 TB 数据的场景来说,找到一家既能提供充裕带宽配额、又不至于让钱包大出血的服务商,一直…

    2026年2月11日
  • DigitalOcean VPS 评测 2026:开发者首选云平台、完善API与丰富文档实测,值得入手吗?

    你是否在为选择一台开发者友好的VPS而反复纠结?既想要完善的API接口,又担心文档不够详细;既希望有丰富的社区支持,又不想为学习成本而头疼。这种在选VPS时的纠结实在太常见了。当你需要频繁部署和测试应用时,完善的文档和社区支持往往比硬件配置更重要,因为一个再强大的服务器,如果文档不完善、社区不活跃,你在遇到问题时可能会花费大量时间在查找资料和解决问题上。更让…

    2026年2月1日
  • VPS CPU 性能怎么测?sysbench+Steal Time 实战完整教程

    如何测试 VPS 的 CPU 性能?新手也能看懂 如果你刚买了台 VPS,看着商家写的配置:4 核 CPU、高性能处理器,听起来很不错,但实际用起来网站加载慢、应用响应卡顿,甚至 SSH 都要转圈半天,这时候就要怀疑一个问题:这台 VPS 的 CPU 性能到底靠不靠谱,是不是被严重超售了? VPS 和自己的电脑不一样,你看不见硬件,也摸不到真实配置,但我们可…

    2026年1月8日
  • IEPL 与 IPLC 专线:技术特性与场景应用深度解析

    引言 在全球化企业网络架构中,国际专线已成为跨国数据传输的核心基础设施。IEPL(International Ethernet Private Line)与IPLC(International Private Leased Circuit)作为两类主流专线技术,常因概念混淆导致企业选型困难。本文将从技术原理、性能指标、应用场景等多个维度进行系统性对比,为企业…

    2025年12月1日
  • VMISS VPS 评测:多机房高性价比方案,建站与代理用户的实用之选

    1. 引言 在 VPS 市场中,用户往往面临一个两难的选择:要么选择大厂品牌,价格高得离谱;要么选择便宜方案,担心稳定性与售后。如果你正在寻找一个兼具多地区节点、合理定价、靠谱售后的 VPS 方案,VMISS 凭借其多机房布局、KVM 虚拟化、SSD 存储与入门级亲民价格,在国内外建站、代理与开发者社区中获得了不少关注。本篇评测将从商家背景、套餐配置、机房选…

    6天前
  • Serv00免费邮局:搭建个人域名邮箱,支持SMTP和Catch-all功能

    摘要:本文介绍了如何在Serv00免费虚拟主机上搭建自己的域名邮箱,包括添加域名、设置邮箱账号、配置DKIM和Catch-all功能,以及进行域名解析和邮件测试的详细步骤。 关键要点列表: Serv00支持免费搭建域名邮箱,并提供SMTP和Catch-all功能,适合正常建站和邮局使用。 设置邮箱需在后台添加域名和邮箱账号,并配置DKIM以提高发信成功率,避…

    2025年6月4日 网络资讯
  • Claw免费容器部署caddy,实现免输端口号访问家里web网站

    Claw cloud(俗称小阿里云)老早推出了个叫 claw run 的免费容器服务 🎉,就是免费部署 Docker 容器,每个月送5美元且自带免费10G 流量。免费版支持 http/https/wss 访问,正好可以做个 301 重定向服务,这样访问家里 web 就不用记住烦人的端口号了! 关于 301 免输端口号访问家里 web 这个去年4月写过一期,相…

    2025年6月15日 网络资讯
  • 如何修改 Google 账号邮箱?Gmail 地址更换最新教程与规则详解

    如何修改 Google 账号 / Gmail 邮箱地址?Google 账号更换邮箱地址详解 相信有不少人对自己的谷歌账号名称并不满意。很多账号都是早年随手注册的,当时并没有太在意,觉得名字只是个标识,随便填一个就好。可随着使用时间越来越长,账号逐渐成为日常工具,用来处理邮件、网盘、照片备份、YouTube、甚至各种第三方网站登录,反而会希望它有一个自己熟悉、…

    2026年1月8日
  • Windows10/11 永久停止系统更新(关闭自动更新)的方法

    摘要: 本文介绍了通过修改Windows注册表永久关闭系统自动更新的方法,适用于Windows 10和11系统。通过设置暂停更新的天数(最长100年),用户可以避免强制更新带来的问题,同时仍可手动检查更新。 关键要点列表: 通过修改注册表路径 计算机HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsUpdateUXSetti…

    2025年6月4日 网络资讯