DevOps & InfrastructureCase study

Self-Hosted Infrastructure Lab - DevOps & Infrastructure Case Study

Personal self-hosting lab covering Docker, reverse proxy routing, observability, DNS/TLS automation, and private remote access.

Role

Designed, deployed, and operated a personal infrastructure lab.

Deliverables

  • • Segmented Docker architecture
  • • Reverse proxy with Nginx Proxy Manager
  • • Prometheus / Grafana / cAdvisor / Node Exporter observability stack
  • • HTTPS via Let’s Encrypt and DNS challenge
  • • Secure private access through Tailscale VPN

Results

  • • Cleaner and more observable infrastructure setup
  • • Simpler maintenance through consistent DNS/TLS workflows
  • • Stronger hands-on understanding of network security and operations

Global architecture

Overview

I built this home lab to grow practical infrastructure skills around service exposure, observability, private access, DNS, and TLS. The goal was not just to run containers, but to create a coherent, maintainable, and production-like environment at a smaller scale. All public material is sanitized to avoid exposing sensitive infrastructure details.

Context

I wanted a serious base to host personal services while keeping a strong standard around architecture clarity, monitoring, and security. This project also acts as a strong learning vehicle for capabilities that are directly useful on full-stack work with DevOps responsibilities.

What I built

  • Containerized multiple services with Docker.
  • Segmented networks to reduce unnecessary inter-service exposure.
  • A single controlled entry point with Nginx Proxy Manager.
  • Infrastructure and container monitoring through Prometheus, Grafana, cAdvisor, and Node Exporter.
  • Service availability tracking with Uptime Kuma.
  • DNS/TLS workflows using Cloudflare, OVH, and Let’s Encrypt.
  • Private administration access through Tailscale VPN.

Security & Reliability

The most important part of the project was avoiding unnecessary public exposure. I designed the setup around encrypted access, wildcard certificates, segmented Docker networking, and private-only administrative access. This helped me work on reliability and security as first-class concerns, not as late additions.

Observability

Observability is one of the strongest outputs of this project. Prometheus collects system and container metrics, Grafana centralizes dashboards, and Uptime Kuma adds a simple operational view over availability. That stack makes troubleshooting faster and maintenance more structured.

Grafana dashboard (sanitized) Prometheus targets (sanitized) Uptime Kuma status (sanitized)

Results & Progression

  • I strengthened my Docker usage beyond local development workflows.
  • I applied cleaner infrastructure architecture thinking in a real operating setup.
  • I progressed on network security, continuous operations, and observability.
  • This project is now one of the strongest proofs of growth on delivery, operations, and reliability.

What this project demonstrates

This lab shows that I can reason about a system as a whole: architecture, exposure, monitoring, security, and operations. It complements my full-stack profile by proving I can also prepare and control the technical environment around a product.

Highlights

Recent Projects

Recently completed work with real product outcomes.