Нет описания

Tim Jones f1ab91b989 Merge pull request #90 from Timmoth/cli-build-pipeline 1 месяц назад
.github 84c28e5ebc Updated build pipeline 1 месяц назад
.idea 1154a08e04 Added blazor wasm demo 1 месяц назад
.run 6de3c52626 Refactored project 1 месяц назад
RackPeek 6de3c52626 Refactored project 1 месяц назад
RackPeek.Domain 6de3c52626 Refactored project 1 месяц назад
RackPeek.Web 84c28e5ebc Updated build pipeline 1 месяц назад
RackPeek.Web.Viewer f1d0198417 Include config dir in wwwroot 1 месяц назад
Shared.Rcl 84c28e5ebc Updated build pipeline 1 месяц назад
Tests 6de3c52626 Refactored project 1 месяц назад
vhs 6de3c52626 Refactored project 1 месяц назад
.DS_Store 6de3c52626 Refactored project 1 месяц назад
.dockerignore 8515ffa681 Added resource cards 1 месяц назад
.gitignore f1d0198417 Include config dir in wwwroot 1 месяц назад
CommandIndex.md a618d639ac Updated readme 1 месяц назад
Commands.md dbae0785d6 Merge branch 'blazor-wasm-demo' of https://github.com/Timmoth/RackPeek into blazor-wasm-demo 1 месяц назад
LICENSE 600d2707cc Initial commit 2 месяцев назад
README.md c5e5c42769 Extracted static ResourceCollection 1 месяц назад
RackPeek.sln 1154a08e04 Added blazor wasm demo 1 месяц назад
generate_commands_markdown.sh c55e5f6da5 added descriptions to command index 2 месяцев назад
notes.md 84c28e5ebc Updated build pipeline 1 месяц назад
servers.yaml 29997eebf2 Added command markdown script 2 месяцев назад

README.md

RackPeek

RackPeek is a lightweight, opinionated CLI tool for documenting and managing home lab and small-scale IT infrastructure.

It helps you track hardware, services, networks, and their relationships in a clear, scriptable, and reusable way without enterprise bloat or proprietary lock-in.

RackPeek is open source and community-driven. Code, docs, ideas, bug reports, and real-world usage feedback are all massively appreciated. If you run a home lab, you belong here.

Join our Discord

Live Demo

Philosophy

RackPeek treats infrastructure documentation as living reference data rather than static paperwork.

You should be able to document your environment as you build it, explore relationships between systems, and quickly understand how everything fits together, without drowning in unnecessary metadata or process.

RackPeek is not a CMDB replacement. It’s a clean framework for understanding and maintaining your lab.

RackPeek demo RackPeek demo

Running RackPeek with Docker


# Named volume
docker volume create rackpeek-config
docker run -d \
  --name rackpeek \
  -p 8080:8080 \
  -v rackpeek-config:/app/config \
  aptacode/rackpeek:latest

# Bind mount
docker run -d \
  --name rackpeek \
  -p 8080:8080 \
  -v $(pwd)/config:/app/config \
  aptacode/rackpeek:latest

# Note - RackPeek stores its state in YAML
config/
└── config.yaml

Core Values

Simplicity
RackPeek focuses on clarity and usefulness. Its scope is intentionally kept narrow to avoid unnecessary abstraction and feature creep.

Ease of Deployment
The tool exists to reduce operational complexity. Installation, upgrades, and day-to-day usage should be straightforward and low-friction.

Openness
RackPeek uses open, non-proprietary data formats. You fully own your data and should be free to easily inspect, migrate, or reuse it however you choose.

Community
Contributors of all experience levels are welcome. Knowledge sharing, mentorship, and collaboration are core to the project’s culture.

Privacy & Security
No telemetry, no ads, no tracking, and no artificial restrictions. What runs on your infrastructure stays on your infrastructure.

Dogfooding
RackPeek is built to solve real problems we actively have. If a feature isn’t useful in practice, it doesn’t belong.

Opinionated
The project is optimized for home labs and self-hosted environments, not enterprise CMDBs or corporate documentation workflows.

Release Status

[x] Ideation
[~] Development
[ ] Alpha Release
[ ] Beta Release
[ ] v1.0.0 Release

Command Tree

  • rpk
    • summary - Show a summarized report of all resources in the system
    • servers - Manage servers and their components
    • summary - Show a summarized hardware report for all servers
    • add - Add a new server to the inventory
    • get - List all servers or retrieve a specific server by name
    • describe - Display detailed information about a specific server
    • set - Update properties of an existing server
    • del - Delete a server from the inventory
    • tree - Display the dependency tree of a server
    • cpu - Manage CPUs attached to a server
      • add - Add a CPU to a specific server
      • set - Update configuration of a server CPU
      • del - Remove a CPU from a server
    • drive - Manage drives attached to a server
      • add - Add a storage drive to a server
      • set - Update properties of a server drive
      • del - Remove a drive from a server
    • gpu - Manage GPUs attached to a server
      • add - Add a GPU to a server
      • set - Update properties of a server GPU
      • del - Remove a GPU from a server
    • nic - Manage network interface cards (NICs) for a server
      • add - Add a NIC to a server
      • set - Update properties of a server NIC
      • del - Remove a NIC from a server
    • switches - Manage network switches
    • summary - Show a hardware report for all switches
    • add - Add a new network switch to the inventory
    • list - List all switches in the system
    • get - Retrieve details of a specific switch by name
    • describe - Show detailed information about a switch
    • set - Update properties of a switch
    • del - Delete a switch from the inventory
    • port - Manage ports on a network switch
      • add - Add a port to a switch
      • set - Update a switch port
      • del - Remove a port from a switch
    • routers - Manage network routers
    • summary - Show a hardware report for all routers
    • add - Add a new network router to the inventory
    • list - List all routers in the system
    • get - Retrieve details of a specific router by name
    • describe - Show detailed information about a router
    • set - Update properties of a router
    • del - Delete a router from the inventory
    • port - Manage ports on a router
      • add - Add a port to a router
      • set - Update a router port
      • del - Remove a port from a router
    • firewalls - Manage firewalls
    • summary - Show a hardware report for all firewalls
    • add - Add a new firewall to the inventory
    • list - List all firewalls in the system
    • get - Retrieve details of a specific firewall by name
    • describe - Show detailed information about a firewall
    • set - Update properties of a firewall
    • del - Delete a firewall from the inventory
    • port - Manage ports on a firewall
      • add - Add a port to a firewall
      • set - Update a firewall port
      • del - Remove a port from a firewall
    • systems - Manage systems and their dependencies
    • summary - Show a summary report for all systems
    • add - Add a new system to the inventory
    • list - List all systems
    • get - Retrieve a system by name
    • describe - Display detailed information about a system
    • set - Update properties of a system
    • del - Delete a system from the inventory
    • tree - Display the dependency tree for a system
    • accesspoints - Manage access points
    • summary - Show a hardware report for all access points
    • add - Add a new access point
    • list - List all access points
    • get - Retrieve an access point by name
    • describe - Show detailed information about an access point
    • set - Update properties of an access point
    • del - Delete an access point
    • ups - Manage UPS units
    • summary - Show a hardware report for all UPS units
    • add - Add a new UPS unit
    • list - List all UPS units
    • get - Retrieve a UPS unit by name
    • describe - Show detailed information about a UPS unit
    • set - Update properties of a UPS unit
    • del - Delete a UPS unit
    • desktops - Manage desktop computers and their components
    • add - Add a new desktop
    • list - List all desktops
    • get - Retrieve a desktop by name
    • describe - Show detailed information about a desktop
    • set - Update properties of a desktop
    • del - Delete a desktop from the inventory
    • summary - Show a summarized hardware report for all desktops
    • tree - Display the dependency tree for a desktop
    • cpu - Manage CPUs attached to desktops
      • add - Add a CPU to a desktop
      • set - Update a desktop CPU
      • del - Remove a CPU from a desktop
    • drive - Manage storage drives attached to desktops
      • add - Add a drive to a desktop
      • set - Update a desktop drive
      • del - Remove a drive from a desktop
    • gpu - Manage GPUs attached to desktops
      • add - Add a GPU to a desktop
      • set - Update a desktop GPU
      • del - Remove a GPU from a desktop
    • nic - Manage network interface cards (NICs) for desktops
      • add - Add a NIC to a desktop
      • set - Update a desktop NIC
      • del - Remove a NIC from a desktop
    • Laptops - Manage Laptop computers and their components
    • add - Add a new Laptop
    • list - List all Laptops
    • get - Retrieve a Laptop by name
    • describe - Show detailed information about a Laptop
    • del - Delete a Laptop from the inventory
    • summary - Show a summarized hardware report for all Laptops
    • tree - Display the dependency tree for a Laptop
    • cpu - Manage CPUs attached to Laptops
      • add - Add a CPU to a Laptop
      • set - Update a Laptop CPU
      • del - Remove a CPU from a Laptop
    • drive - Manage storage drives attached to Laptops
      • add - Add a drive to a Laptop
      • set - Update a Laptop drive
      • del - Remove a drive from a Laptop
    • gpu - Manage GPUs attached to Laptops
      • add - Add a GPU to a Laptop
      • set - Update a Laptop GPU
      • del - Remove a GPU from a Laptop
    • services - Manage services and their configurations
    • summary - Show a summary report for all services
    • add - Add a new service
    • list - List all services
    • get - Retrieve a service by name
    • describe - Show detailed information about a service
    • set - Update properties of a service
    • del - Delete a service
    • subnets - List subnets associated with a service, optionally filtered by CIDR