بدون توضیح

Tim Jones 9092bac7be Merge pull request #330 from eliware/fix/318-windows-safe-screenshot-names 1 روز پیش
.devcontainer 4f7a130d50 feat: Add devcontainer (#231) 6 ماه پیش
.github 70b495f9ee v1.4.0 touch up 4 ماه پیش
RackPeek b98ea416b0 Bump version to 2.1.0 1 روز پیش
RackPeek.Domain b98ea416b0 Bump version to 2.1.0 1 روز پیش
RackPeek.Web 002574939e Merge pull request #327 from Timmoth/bugfix/304-docs-reverse-proxy 1 روز پیش
RackPeek.Web.Viewer 940fd4a474 Fix docs page behind a reverse proxy (#304) 1 روز پیش
Shared.Rcl bc3cda4b30 Add E2E coverage for tag, label and connections pages 1 روز پیش
Tests 0be51e6e07 Compare resource names case-insensitively on delete and rename (#328) 1 روز پیش
Tests.E2e bc3cda4b30 Add E2E coverage for tag, label and connections pages 1 روز پیش
assets 11e5ac1fa4 Added readme banner 7 ماه پیش
docs 4328c888fe Regenerate CLI docs with 'rpk other' command tree 2 روز پیش
schemas edb1b51c6c Sync published JSON schemas with runtime behavior (#310, #311) 1 روز پیش
vhs 6acc554424 fix: use Windows-safe screenshot filenames 1 روز پیش
.dockerignore 8515ffa681 Added resource cards 7 ماه پیش
.editorconfig 1229629519 Added editor config / linter / formatter rules / ssh / hosts exporters (#237) 6 ماه پیش
.gitignore 48761546ca Ignore ide / local files 7 ماه پیش
AGENTS.md 9316f05bd5 Fix ResourceCollectionMerger for Other; audit consistency across features and docs 1 روز پیش
Directory.Build.props 1229629519 Added editor config / linter / formatter rules / ssh / hosts exporters (#237) 6 ماه پیش
LICENSE 600d2707cc Initial commit 8 ماه پیش
README.md 1c3febba5a Merge pull request #317 from eliware/docs/210-fix-docker-bind-mount-permissions 1 روز پیش
RackPeek.sln 2f2671241f Added E2E webui tests 7 ماه پیش
generate-docs.sh 70b495f9ee v1.4.0 touch up 4 ماه پیش
justfile a969532903 Updated justfile to use locally build CLI version for easy testing 7 ماه پیش

README.md

RackPeek demo

Version Status Join our Discord Live Demo Docker Hub

RackPeek is a webui & 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 or drowning in unnecessary metadata or process.

The roadmap for the next wave of features is actively being discussed, please make your voice heard!

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
mkdir -p config
sudo chown 1654:1654 config
docker run -d \
  --name rackpeek \
  -p 8080:8080 \
  -v $(pwd)/config:/app/config:Z \
  aptacode/rackpeek:latest

# RackPeek runs as UID/GID 1654:1654 inside the container, so a bind-mounted
# host directory must be writable by that user. The :Z suffix is needed on
# SELinux-enabled systems such as Fedora, RHEL, and CentOS; it can be omitted
# on systems without SELinux.

# To verify the container user:
docker exec rackpeek id

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

Or Docker compose

version: "3.9"

services:
  rackpeek:
    image: aptacode/rackpeek:latest
    container_name: rackpeek
    ports:
      - "8080:8080"
    volumes:
      - rackpeek-config:/app/config
    restart: unless-stopped
    healthcheck:
      test: ["CMD", "curl", "-fsS", "http://localhost:8080/health"]
      interval: 30s
      timeout: 5s
      start_period: 15s
      retries: 3

volumes:
  rackpeek-config:

Docs

Questionnaire

We’re gathering feedback from homelabbers to validate direction and prioritize features.
Answer whichever questions stand out to you, your input directly shapes the project.

User Questionnaire

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.

Development Docs