语法
命令
命令参考
add
添加一个新的 Lager Box 配置。
--name(必填)- 要分配给该 Box 的名称--ip(必填)- 该 Box 的 IP 地址--user(必填)- 该 Box 的 SSH 用户名(您登录时使用的账户)--version- Lager Box 的版本/分支(例如 staging、main)--yes- 不提示直接确认
--user 是必填的。它以前默认为 lagerdata,但由于大多数 Box
使用不同的登录账户,该默认值已被移除,以确保 SSH、更新和 lager ssh
始终记录到正确的用户。add-all
自动添加在您 Tailscale 网络上找到的全部 Lager Box。
--yes- 不提示直接确认
- 运行
tailscale status发现设备 - 筛选名称长度为 5-8 个字符的设备
- 把名称转为大写
- 跳过 IP 相同、已经存在的 Box
- 把新的 Box 添加到您的配置中
delete
删除一个 Box 配置。
edit
编辑已有的 Box 配置。
--name(必填)- 要编辑的 Box 名称--ip- 新的 IP 地址--user- 新的 SSH 用户名--version- 新的 Lager Box 版本/分支--new-name- 重命名该 Box--yes- 不提示直接确认
list
列出全部已配置的 Box,并显示实时的版本状态。不带子命令运行 lager boxes
时也是这个行为。
/lock 和 /status),以显示实时的版本、状态和锁信息。
输出:
locked by 列才会出现。来自分支或提交的版本会在括号中显示 ref,例如 0.47.0 (main)。使用发布标签的 Box 只显示版本号。
lager hello 会打印含提交的完整 ref。
状态颜色:
如果某台 Box 在
locked by 列中显示 root,该命令会打印一条警告。这种锁通常来自 Docker 容器内部。下次请用 lager boxes lock --user 指明用户。
delete-all
删除全部 Box 配置。
export
把 Box 配置导出为 JSON 文件。
--output/-o- 输出文件路径(不指定时打印到 stdout)
import
从 JSON 文件导入 Box 配置。
FILE- 要导入的 JSON 文件路径--merge- 与已有的 Box 合并(默认为替换)--yes- 不提示直接确认
lock
锁定一台 Box,阻止其他用户使用它。完整说明请参阅
Box 锁定。
--box(必填)- 要锁定的 Box 名称--user- 以该用户名加锁。在 Docker 容器内部请使用它,否则用户会是root
unlock
解锁一台 Box,让其他用户可以使用它。完整说明请参阅
Box 锁定。
--box(必填)- 要解锁的 Box 名称--force- 即使是别人加的锁也强制解锁
配置的存放位置
boxes 系列命令把 Box 配置写入您主目录中的~/.lager。如果设置了 LAGER_CONFIG_FILE_DIR,则改为写入该目录下的 .lager。
Box 配置位于 BOXES 键之下:
- 简单形式:只有一个 IP 地址字符串
- 完整形式:含 ip、user 和 version 字段的对象
.lager 文件合并。离当前目录最近的文件优先。
校验
boxes 系列命令会执行以下校验:- 重复检测:阻止添加名称或 IP 相同的 Box
- IP 校验:校验 IP 地址格式
- 确认:编辑操作会显示修改前后的状态
示例
说明
- Box 名称必须唯一
- IP 地址必须唯一(不允许重复 IP)
lager boxes add必须提供--user。add-all保存的条目不带用户,之后的命令会使用lagerdata- 导入时请用
--merge保留已有的 Box lager boxes list需要每台 Box 在端口 9000 上响应,才能显示它的版本和锁状态

