· 3 min read

My HomeLab: Spec Sheet & Services


Introduction

As I have mentioned in previous posts, a HomeLab does not require thousands of dollars in rack servers or industrial hardware to be robust and highly functional. With a bit of skill, second-hand parts, and stable operating systems, we can build a great infrastructure at home.

This entry serves as a unified control panel and spec sheet for my entire lab. Here you will find the detailed hardware specs of each machine, the updated logical network diagram, and an interactive catalog with a built-in search filter to explore the services I have running in real-time.

If you want to see the step-by-step details of how I configured the parts of this network, here are the links to the full series:


Hardware Specifications

Currently, my lab is composed of two main physical nodes. Each serves a different and complementary role: the Raspberry Pi 4B acts as the node for essential services and low-power local networking, while the HP Elitedesk 705 G3 (bought on Wallapop and upgraded with extra storage) handles the services with higher read, write, and multimedia computing demands.

Raspberry Pi 4B (4GB)

Essential Services & Primary DNS


CPU Broadcom BCM2711 4 x 1.50Ghz (ARM)
RAM 4GB LPDDR4-3200
O.S. Debian 12 Bookworm (RaspberryPiOS Lite)
Storage Lexar 64GB MicroSD (OS & configurations)
Average Draw ~4W (Perfect for 24/7 uninterrupted uptime)

HP Elitedesk 705 G3

Intensive workloads & Multimedia


CPU AMD PRO A10-8770E 4 x 3.08Ghz (x86_64)
RAM 16GB DDR4-SODIMM
O.S. Debian 12 Bookworm (Stable Netinst)
Storage Kingston SSD 128GB (Operating System)
WD Blue NVMe 1TB (Movies & series)
Aliexpress NVMe 512GB (Navidrome / Music)
WD easystore 5TB (Backup Repository)
Average Draw ~15W - 25W (Excellent price-to-performance balance)

Interactive Logical Network Diagram

This logical diagram represents the connections in the lab. All incoming external traffic accesses securely through the Cloudflared Tunnel and is routed to the Nginx Proxy Manager, which filters and redirects internal requests to the corresponding node and port.

(You can click and drag to move the diagram, or use your scroll wheel/touchpad pinch gestures to zoom into complex structures)

flowchart TD %% Define Styles classDef extNode fill:#1a1a24,stroke:#8b5cf6,stroke-width:2px,color:#e9d5ff; classDef proxyNode fill:#0f172a,stroke:#38bdf8,stroke-width:2px,color:#e0f2fe; classDef rpiNode fill:#1c1917,stroke:#f43f5e,stroke-width:2px,color:#ffe4e6; classDef eliteNode fill:#172554,stroke:#3b82f6,stroke-width:2px,color:#dbeafe; classDef vpnNode fill:#1e1b4b,stroke:#ec4899,stroke-width:2px,color:#fce7f3; %% WAN subgraph WAN ["External / Internet"] direction TB internet["Public Internet"]:::extNode tunnel["Cloudflared Tunnel"]:::extNode internet --> tunnel end %% Reverse Proxy subgraph Proxy ["Reverse Proxy"] npm["Proxy Manager
(Nginx Proxy Manager)
npm.jrodriiguezg.lan"]:::proxyNode end %% Raspberry Pi 4 subgraph RPi4 ["Raspberry Pi 4 (Docker Node)"] phns1["phns1.jrodriiguezg.lan
(PiHole + Unbound / DNS 1)"]:::rpiNode wireguard["Tailscale / Wireguard
wireguard.jrodriiguezg.lan"]:::vpnNode end %% HP Elitedesk subgraph HP ["HP Elitedesk (Docker Node)"] phns2["phns2.jrodriiguezg.lan
(Secondary DNS 2)"]:::eliteNode navidrome["navidrome.jrodriiguezg.lan
(Navidrome / Streaming)"]:::eliteNode end %% Flows tunnel --> npm npm -.-> phns1 npm -.-> phns2 npm -.-> wireguard npm -.-> navidrome %% Subgraph Styles style WAN fill:none,stroke:#27272a,stroke-width:1px,color:#a1a1aa; style Proxy fill:none,stroke:#27272a,stroke-width:1px,color:#a1a1aa; style RPi4 fill:none,stroke:#f43f5e,stroke-width:1px,color:#fda4af; style HP fill:none,stroke:#3b82f6,stroke-width:1px,color:#93c5fd;

Active Catalog of Self-Hosted Services

All services in the lab run isolated using Docker containers. Below I show the list of active services, specifying the physical node where they run, their internal/external visibility status, and their corresponding technical descriptions.

Live Status Dashboard

The health, availability, and response times of all my self-hosted services are monitored in real-time using Uptime Kuma. Due to standard browser iframe security restrictions, please view the complete dashboard directly in its dedicated window.

View HomeLab Status

Comments