@bull-board/cli (英语)
运行 牛板 仪表板对着Redis的例子, 没有应用连接它.
npx @bull-board/cli -r redis://localhost:6379
打开了 http://127.0.0.1:3000 每条公牛和公牛MQ队列的仪表板 bull 键前缀.

当你到达这个
- 工人住在一个不编辑的Repo或容器中,您想在不给应用程序添加路径的情况下观看工作移动,然后必须记住删除.
- 你的制片人不是节点 BullMQ有一个正式的Python软件包,并从其他语言被写入到原始协议之上. 这些团队没有软件可以嵌入仪表板.
- 你想看看一个排队 通过一个隧道, 没有部署任何东西.
- 你正在评估公牛板 宁可自己排队 也不愿先用电线连接整合.
这不是在您自己的服务器上安装适配器的替换 : 没有自动登录, 没有框架级的认证可以继承, 每个选项都必须在命令行上传递, 一个 env var, 或者一个配置文件而不是代码 .
选项
Usage:
bull-board [options]
npx @bull-board/cli [options]
Options:
-r, --redis <url> Redis connection URL [redis://localhost:6379]
--sentinel <list> Comma separated sentinel host:port list, port [26379]
--sentinel-name <n> Redis master group name, required with --sentinel
--sentinel-password <pass>
Password for the sentinel nodes themselves
--redis-username <name>
Username for the Redis nodes behind the sentinels
--redis-password <pass>
Password for the Redis nodes behind the sentinels
--redis-db <n> Database to select behind the sentinels
-p, --port <port> Port to listen on [3000]
--host <address> Interface to bind [127.0.0.1]
--prefix <list> Comma separated key prefixes [bull]
--queues <list> Use these queue names instead of discovering
--scan-interval <s> Seconds between rescans, 0 to scan once [10]
--base-path <path> Serve the dashboard under a path prefix
--read-only Disable every destructive action
--user <name> Basic auth user (requires --password)
--password <pass> Basic auth password (requires --user)
--board-title <s> Dashboard title
--history Record and serve long-retention metrics history
--history-retention-days <n>
Days of history to keep [90]
--config <file> Path to a config file
--browser <command> Command to open the browser with [$BROWSER]
--no-open Do not open a browser
--no-retry Exit if Redis is unreachable instead of retrying
-h, --help Show this help
-v, --version Show the version
每面旗帜也有环境变量等同(BULL_BOARD_REDIS_URL, (中文(简体) ), BULL_BOARD_PORT, (中文(简体) ), BULL_BOARD_READ_ONLY,等等)和a bull-board.config.{mjs,js,cjs,json} 用于任何与命令行不符的文件。 旗帜胜过环境变量,它胜过配置文件,它胜过内置默认值.
如果Redis在CLI启动时无法被接通,它仍然打开:它服务于一个诊断页面,解释原因(它拨打的URL,基础错误,以及可能的原因),持续每3秒重试一次,并在Redis回答时自动切换到真正的仪表板,不需要重启. 这只覆盖启动,不过:一旦仪表板是活的,即使雷迪斯后来走了,它仍然保持活的. 诊断页面不复出;API请求停止返回,直到再能到达Redis,Ctrl-C仍然有效. 过 --no-retry 用于旧行为 : 立即打印出错并退出 1, 而不打开端口, 这是脚本或CI检查退出代码需要的 .
// bull-board.config.js
module.exports = {
redis: 'redis://localhost:6379',
prefix: ['bull', 'tenant-a'],
uiConfig: {
boardTitle: 'Ops Dashboard',
},
queues: {
'payment-webhooks': { readOnlyMode: true },
},
};
红色哨兵
--sentinel 通过 Redis Sentinel 而不是直接连接到一个实例,用于主地址没有固定的部署 :
npx @bull-board/cli --sentinel s1.internal:26379,s2.internal:26379 --sentinel-name mymaster
每个条目可选取一个端口,默认为26379. --sentinel-name 是来自您的 sentinel 配置的主组名称,需要. --sentinel 财务报告和审定财务报表 --redis 两者是相互排斥的,通过两者都是一个错误,而不是一个沉默的偏好.
ioredis通过列出的哨兵解决了当前主机,并自行跟踪故障,因此整个仪表盘随即移动:队列读取,公牛订阅者,以及 --history 记录所有连接.
以哨卡模式获得的证书来自它们自己的旗帜,因为没有URL可以携带. --redis-username, (中文(简体) ), --redis-password 财务报告和审定财务报表 --redis-db 适用于哨兵背后的 Redis 节点,同时 --sentinel-password 认证到哨站节点本身,它们通常有不同的密码. 在Redis URL同时通过其中任何一个都是错误的,因为ioredis会拿走URL自己的证书而忽略它们.
对于任何超出此范围的东西,包括TLS到哨点,配置文件的 redis 密钥接受完整 ioredis 选项对象 并经过未受侵犯的地方:
// bull-board.config.js
module.exports = {
redis: {
sentinels: [
{ host: 's1.internal', port: 26379 },
{ host: 's2.internal', port: 26379 },
],
name: 'mymaster',
sentinelPassword: process.env.SENTINEL_PASSWORD,
enableTLSForSentinelMode: true,
},
};
历史衡量标准
--history 开启原本需要的长期保留指标 @bull-board/metrics 连接到你自己的应用程序:
npx @bull-board/cli -r redis://localhost:6379 --history
每个队列图会得到一个60m / 7d / 30d / 90d 范围选择器,一个跨队列的Metrics历史页会出现在侧边栏. CLI 进程自行录制, 复制吞吐量, 等待时间, 运行时间和排队年龄为 Redis 一分钟一次 bull-board:metrics: 命名空间,永远不要超过牛或牛MQ的钥匙。 记录在发现之后, 因此在下个勾选时, 在重新扫描之间出现的队列会被取出 .
--history-retention-days 设置窗口,默认为90天。 每一级保留、快照间隔和 latency: false 在配置文件下方 history 键. --read-only 保存读取并停止写作,用于只显示另一个进程记录的板.
完成和失败的历史出自BullMQ自己的公尺缓冲器,所以除非你的工人是用它建造的 metrics: { maxDataPoints: MetricsTime.ONE_WEEK }; 当没有发现队列时, CLI 在启动时警告 。 懒惰和排队年龄 不需要你的工人。 见 历史衡量方法 用于存储大小和图表显示的内容.
夹克
docker run --rm -p 127.0.0.1:3000:3000 \
-e BULL_BOARD_USER=admin -e BULL_BOARD_PASSWORD=secret \
ghcr.io/felixmosh/bull-board --redis redis://host.docker.internal:6379
ghcr.io/felixmosh/bull-board 是这个包作为一个图像,为 amd64 和 arm64 搭建在每一个发行版上,并用精确的版本,主版本,以及 latest进入点是CLI, 所以旗帜和 BULL_BOARD_* 变量和上面一样有效。 图像决定给你的唯一东西 BULL_BOARD_HOST=0.0.0.0 财务报告和审定财务报表 BULL_BOARD_OPEN=false,两个默认在容器中是没有道理的,你可以同时推翻两者. 与 Docker 运行 覆盖 Confose 、 标记并挂起配置文件 .
发现只读出Redis,所以这里没有找到由PostgreSQL支持的BullMQ v6队列;在您自己的应用程序中为这些队列使用服务器适配器. --prefix 也不使用通配符,请明确列出所需的前缀.
见 CLI 指南 用于全旗和环境变量参考和基本验证.