This contains the descriptions and scripts relating to my homelab setup.
The goal of this project is to gain hands-on experience with Linux systems, networking, remote administration, and service orchestration by building and maintaining a real, continuously running server.
- Centralized NAS
- Shared printer access
- Practice remote administration (SSH)
- Prepare for containerization (Docker / Kubernetes)
- Understand real-world system failures and recovery
- Learning Linux systems and networking
- CPU: Intel Core i3-4130 (2C/4T) @ 3.40 GHz
- GPU: NVIDIA GeForce GTX 1060 6GB
- RAM: 16 GB DDR3
- Storage:
- 4 TB HDD (Primary)
- 500 GB HDD (Secondary)
- Ubuntu Server (LTS)
All services currently run on a single physical host.
- Samba-based NAS
- CUPS + HPLIP enabled network-wide printer access
- Tailscale for remote access
- Pi-Hole server set up for network-wide ad blocking
- Docker
- kubernetes (k3s)
- JellyFin for streaming movies and shows
- NextCloud for having a personal cloud
- Graphana for metrics and montioring
- Static LAN IP configured : 192.168.29.x
- Remote access via WireGuard VPN (using tailscale)
This is an evolving project. The services are added incrementally, with an emphasis on stability, documentation, and understanding the underlying systems.
Any suggestion on services or strategies to improve the server are welcome :)