返回目录
开源项目文档办公类新手

RackPeek:用 WebUI 与 CLI 记录和管理家庭实验室与小型 IT 基础设施

RackPeek 是一个 WebUI + CLI 工具,用于文档化和管理家庭实验室及小规模 IT 基础设施,帮助追踪硬件、服务、网络及其相互关系,支持脚本化、可复用、开放数据格式(YAML),支持 Docker 与 Docker Compose 部署,并可用于生成 Ansible Inventory。

0 次阅读2026/09/14 发布
RackPeek:用 WebUI 与 CLI 记录和管理家庭实验室与小型 IT 基础设施 来源图片

社区作者 · zZz

它解决什么问题

RackPeek 是一个面向家庭实验室(home lab)与小型 IT 基础设施的 WebUI 与 CLI 工具,核心目标是以清晰、可脚本化、可复用的方式记录和管理硬件、服务、网络以及它们之间的关系,避免企业级 CMDB 的臃肿、专有锁定,也避免淹没在多余的元数据和流程中。项目说明中提供了演示素材(见配图 1、配图 2、配图 3),分别展示了项目横幅、CLI 演示动图与 WebUI 界面动图。

项目强调的核心价值包括:

  • 简洁(Simplicity):范围有意识地保持窄小,追求清晰与实用,避免不必要的抽象和功能蔓延。
  • 部署便捷(Ease of Deployment):降低运维复杂度,安装、升级和日常使用应尽可能直接、低摩擦。
  • 开放(Openness):使用开放、非专有的数据格式,用户完全拥有自己的数据,可自由检查、迁移或复用。
  • 社区(Community):欢迎各种经验水平的贡献者,知识分享、指导和协作是项目文化核心。
  • 隐私与安全(Privacy & Security):无遥测、无广告、无跟踪、无人为限制;运行在你自己基础设施上的东西就留在你的基础设施上。
  • 自我实践(Dogfooding):为解决团队真实存在的问题而构建,实践中无用的功能不应存在。
  • 有主见(Opinionated):针对家庭实验室和自托管环境优化,而不是企业 CMDB 或企业文档工作流。

项目提供文档入口:Overview(概览)、Installation Guide(安装指南)、Ansible Inventory Generator Guide(Ansible Inventory 生成器指南)、CLI Commands Reference(CLI 命令参考)、Versioning(版本管理)。另有贡献指南 contribution-guidelines.md、开发速查 dev-cheat-sheet.md(构建、发布、Docker、测试命令)、测试指南 testing-guidelines.md。

项目还在收集家庭实验室用户的问卷反馈,用于确定方向与功能优先级;后续功能路线图正在讨论中。

状态存储:RackPeek 以 YAML 保存状态,默认位于容器内 /app/config 目录下的 config.yaml。

— 本文由 AI 根据公开来源辅助整理,命令、版本与许可证请在使用前到原始页面复核。

安装 / 开始使用

以下步骤来自项目 README 的 Docker 部署说明。

一、准备环境

  1. 准备一台可运行 Docker 的 Linux/自托管主机。
  1. 安装 Docker(如使用 Compose 方式,还需安装 Docker Compose)。
  1. 确认 8080 端口可用(如被占用需在启动命令中改映射端口)。

二、方式一

使用命名卷(Named volume)

  1. 先创建用于持久化配置的命名卷:
命令
docker volume create rackpeek-config
  1. 启动容器:
命令
docker run -d \

--name rackpeek \ -p 8080:8080 \ -v rackpeek-config:/app/config \ aptacode/rackpeek:latest

三、方式二

使用绑定挂载(Bind mount)

  1. 在宿主机准备配置目录(例如当前目录下的 config),将其挂载到容器内 /app/config:
命令
docker run -d \

--name rackpeek \ -p 8080:8080 \ -v $(pwd)/config:/app/config \ aptacode/rackpeek:latest

四、方式三

命令
Docker Compose

在 compose 文件中配置(原文排版已整理为标准缩进): version: "3.9"

services: rackpeek: image: aptacode/rackpeek:latest container_name: rackpeek ports:

volumes:

restart: unless-stopped healthcheck: test: ["CMD", "curl", "-fsS", "http://localhost:8080/health"] interval: 30s timeout: 5s start_period: 15s retries: 3

  • "8080:8080"
  • rackpeek-config:/app/config

volumes: rackpeek-config:

五、首次运行

  1. 容器启动后,通过浏览器访问 http://localhost:8080 打开 WebUI。

config/ └── config.yaml 请确保该路径已挂载到命名卷或宿主机目录,否则容器重建后数据会丢失。

  1. 数据与状态以 YAML 形式存放在容器内 /app/config,目录结构为:

六、常见问题

  1. 8080 端口被占用:修改 -p 参数(例如 -p 9090:8080)或在 compose 中调整端口映射。
  1. 数据未持久化:检查是否挂载了 /app/config,命名卷方式需确认卷名一致。
  1. 健康检查失败:项目自带 healthcheck 使用 curl -fsS http://localhost:8080/health,需保证容器内可访问该地址并已安装 curl(健康检查命令由镜像提供)。
  1. 升级:镜像标签为 aptacode/rackpeek:latest,如需升级请拉取最新镜像后重建容器,注意事先确认 /app/config 已持久化。
  1. 更多安装细节、Ansible Inventory 生成器用法与全部 CLI 命令,参见项目文档中的 Installation Guide、Ansible Inventory Generator Guide 与 CLI Commands Reference。

来源教程配图

RackPeek demo
配图 1 · RackPeek demo查看原图
RackPeek demo
配图 2 · RackPeek demo查看原图
RackPeek demo
配图 3 · RackPeek demo查看原图

适用场景

家庭实验室(home lab)硬件与服务清点
小型 IT 基础设施的文档化与资产管理
梳理服务
网络与硬件之间的关系
生成 Ansible Inventory 以配合自动化配置管理
自托管环境的资产记录与迁移备份(YAML 开放格式)
通过 CLI 脚本化查询与维护基础设施信息