Files
homelab-optimized/docs/getting-started/beginner-homelab-guide.md
Gitea Mirror Bot 5b8d0afef7
Some checks failed
Documentation / Build Docusaurus (push) Failing after 5m16s
Documentation / Deploy to GitHub Pages (push) Has been skipped
Sanitized mirror from private repository - 2026-03-26 10:25:55 UTC
2026-03-26 10:25:55 +00:00

14 KiB

🏠 Complete Beginner's Guide to Building Your Own Homelab

🟢 Beginner Guide - No Prior Experience Required

This guide is designed for colleagues, friends, or anyone who wants to build their own homelab but has little to no experience with servers, networking, or self-hosting. We'll start from the absolute basics and build up to a fully functional homelab.

🤔 What is a Homelab?

Simple Definition

A homelab is like having your own personal cloud at home. Instead of relying on Google Drive, Netflix, or other online services, you run your own versions on your own hardware that you control completely.

Real-World Examples

  • Instead of Google Photos: Run Immich to store and organize your photos
  • Instead of Netflix: Run Plex to stream your own movie collection
  • Instead of Google Drive: Run Nextcloud for file storage and sharing
  • Instead of LastPass: Run Vaultwarden for password management
  • Instead of Gmail: Run your own email server (advanced)

Why Build a Homelab?

  • Privacy: Your data stays on your hardware
  • Learning: Gain valuable IT skills
  • Cost: No monthly subscription fees
  • Control: Customize everything to your needs
  • Fun: It's genuinely enjoyable to build and maintain

💰 Budget Planning

Starter Budget: $500-800

Perfect for beginners who want to try homelabbing:

  • NAS: Synology DS220+ (~$300)
  • Drives: 2x 4TB WD Red (~$200)
  • Network: Basic router upgrade (~$100-200)
  • Accessories: Cables, UPS (~$100)

Intermediate Budget: $1,500-2,500

For those ready to commit to a serious homelab:

  • NAS: Synology DS723+ or DS920+ (~$500-600)
  • Drives: 4x 8TB drives (~$800)
  • Network: 10GbE switch and cards (~$300)
  • Compute: Intel NUC or mini PC (~$400-600)
  • UPS: Proper backup power (~$200)

Advanced Budget: $3,000-5,000+

For enthusiasts who want enterprise-level features:

  • NAS: Synology DS1823xs+ (~$1,200)
  • Drives: 8x 16TB enterprise drives (~$2,000)
  • Network: Full 10GbE infrastructure (~$500)
  • Compute: Multiple servers/workstations (~$1,000+)
  • Rack: Server rack and professional equipment (~$500)

🛒 Shopping List for Beginners

Essential Hardware (Start Here)

1. Network Attached Storage (NAS)

Recommended: Synology DS220+ or DS723+

Why Synology?

  • Beginner-friendly web interface
  • Excellent documentation and community
  • Reliable hardware with good warranty
  • Easy software installation (Package Center)

What to Look For:

  • At least 2 drive bays (for redundancy)
  • Gigabit Ethernet (minimum)
  • ARM or x86 processor (x86 preferred for Docker)
  • Expandable RAM (if possible)

2. Hard Drives

Recommended: WD Red or Seagate IronWolf (NAS-specific drives)

Beginner Setup:

  • 2x 4TB drives in RAID 1 (mirrored) = 4TB usable space
  • 2x 8TB drives in RAID 1 (mirrored) = 8TB usable space

Why NAS Drives?

  • Designed for 24/7 operation
  • Better vibration resistance
  • Longer warranty (3-5 years)
  • Optimized for RAID configurations

3. Network Equipment

Router: TP-Link Archer AX73 or similar WiFi 6 router Switch: TP-Link TL-SG108 (8-port Gigabit switch) Cables: Cat6 Ethernet cables

4. Power Protection

UPS: APC Back-UPS 1500VA

  • Protects against power outages
  • Allows graceful shutdown
  • Prevents data corruption

5. Mini PC for Additional Services

Options:

  • Intel NUC (compact, efficient)
  • Beelink Mini PC (budget-friendly)
  • Raspberry Pi 4 (very budget-friendly)

Use Cases:

  • Home Assistant (smart home automation)
  • Pi-hole (network-wide ad blocking)
  • Additional Docker containers

6. Cables and Accessories

  • HDMI cable (for initial setup)
  • USB drive (for OS installation)
  • Cable management (velcro ties, cable clips)
  • Labels (for organization)

📋 Step-by-Step Setup Guide

Phase 1: Planning and Preparation (Day 1)

Step 1: Choose Your Location

# Ideal homelab location checklist:
☐ Good ventilation (equipment generates heat)
☐ Stable power supply
☐ Ethernet connection to router
☐ Away from high-traffic areas (noise)
☐ Accessible for maintenance
☐ Secure from pets/children

Step 2: Network Planning

# Basic network setup:
Internet → Modem → Router → Switch → NAS/Devices

# IP Address planning:
Router: 192.168.1.1
NAS: 192.168.1.100
Mini PC: 192.168.1.101
Your computer: 192.168.1.50 (example)

Step 3: Create Accounts

# Create these accounts before starting:
☐ Synology account (for NAS setup)
☐ Docker Hub account (for containers)
☐ Tailscale account (for VPN access)
☐ Domain registrar account (optional, for external access)

Phase 2: Hardware Setup (Day 1-2)

Step 1: NAS Assembly

# Synology NAS setup:
1. Unbox NAS and drives carefully
2. Install drives in drive bays (follow manual)
3. Connect power adapter (don't power on yet)
4. Connect Ethernet cable to router
5. Power on NAS (listen for beep sequence)

Step 2: Initial Network Setup

# Find your NAS on the network:
1. Download Synology Assistant from synology.com
2. Run Synology Assistant to find your NAS
3. Or browse to http://find.synology.com
4. Click on your NAS to begin setup

Step 3: DSM Installation

# DiskStation Manager (DSM) setup:
1. Download latest DSM for your model
2. Upload .pat file during setup wizard
3. Create admin account (use strong password!)
4. Set up storage pool (choose SHR for beginners)
5. Create Volume 1 with Btrfs file system

Phase 3: Basic Configuration (Day 2-3)

Step 1: Essential Settings

# Control Panel configurations:
1. Network → Set static IP address
2. Regional Options → Set timezone
3. Notification → Configure email alerts
4. Security → Enable 2FA, disable default accounts
5. File Services → Enable SMB, disable unnecessary services

Step 2: Create Shared Folders

# Essential shared folders:
☐ homes (user directories)
☐ media (movies, TV shows, music)
☐ documents (important files)
☐ photos (photo library)
☐ backups (backup storage)
☐ docker (container data)

Step 3: User Management

# Create users:
1. Control Panel → User & Group
2. Create user accounts for family members
3. Set appropriate permissions for shared folders
4. Enable home folders for each user

Phase 4: First Applications (Day 3-4)

Step 1: Install Docker

# Docker installation:
1. Package Center → Search "Docker"
2. Install Docker package
3. Open Docker app
4. Familiarize yourself with the interface

Step 2: Install Plex Media Server

# Plex setup (easiest first application):
1. Package Center → Search "Plex Media Server"
2. Install Plex Media Server
3. Open Plex and create account
4. Add media libraries:
   - Movies: /volume1/media/movies
   - TV Shows: /volume1/media/tv
   - Music: /volume1/media/music
5. Upload some media files to test

Step 3: Install File Station and Photo Station

# Built-in Synology apps:
1. File Station: Web-based file manager
2. Moments or Synology Photos: Photo management
3. Audio Station: Music streaming
4. Video Station: Video streaming (alternative to Plex)

Phase 5: Advanced Services (Day 4-7)

Step 1: Password Manager (Vaultwarden)

# Deploy Vaultwarden via Docker:
1. Docker → Registry → Search "vaultwarden/server"
2. Download image
3. Create container with these settings:
   - Port: 8080:80
   - Volume: /volume1/docker/vaultwarden:/data
   - Environment: DOMAIN=http://your-nas-ip:8080
4. Access via http://your-nas-ip:8080
5. Create first user account

Step 2: Ad Blocking (Pi-hole)

# Pi-hole setup:
1. Docker → Registry → Search "pihole/pihole"
2. Create container with network mode: host
3. Set environment variables:
   - WEBPASSWORD="REDACTED_PASSWORD"
   - TZ=your-timezone
4. Configure router to use NAS IP as DNS server
5. Access web interface at http://your-nas-ip/admin

Step 3: Monitoring (Uptime Kuma)

# Service monitoring:
1. Docker → Registry → Search "louislam/uptime-kuma"
2. Create container:
   - Port: 3001:3001
   - Volume: /volume1/docker/uptime-kuma:/app/data
3. Access via http://your-nas-ip:3001
4. Add monitors for your services
5. Configure notifications (email, Discord, etc.)

🔧 Common Beginner Mistakes (And How to Avoid Them)

1. Not Planning Storage Properly

Mistake: Buying drives that are too small or not NAS-rated Solution: Always buy NAS-specific drives (WD Red, Seagate IronWolf) Tip: Start with 2x drives in RAID 1, expand later

2. Ignoring Backups

Mistake: Thinking RAID is a backup (it's not!) Solution: Follow 3-2-1 backup rule:

  • 3 copies of important data
  • 2 different storage types
  • 1 offsite backup

3. Poor Network Planning

Mistake: Not setting static IP addresses Solution: Use DHCP reservations or static IPs for all servers

4. Security Oversights

Mistake: Using default passwords, no 2FA Solution:

  • Change ALL default passwords
  • Enable 2FA everywhere possible
  • Use a password manager
  • Keep software updated

5. REDACTED_APP_PASSWORD Initially

Mistake: Trying to set up everything at once Solution: Start simple, add services gradually


📚 Learning Resources for Beginners

YouTube Channels

  • SpaceInvaderOne: Excellent Docker tutorials
  • TechnoTim: Homelab and self-hosting guides
  • NetworkChuck: Networking and IT fundamentals
  • Lawrence Systems: Business IT and homelab content
  • Craft Computing: Hardware reviews and tutorials

Websites and Forums

  • r/homelab: Reddit community with great advice
  • r/synology: Synology-specific help and tips
  • Synology Community: Official forums
  • Self-Hosted Podcast: Great for staying current
  • Awesome-Selfhosted: Comprehensive list of applications

Documentation

  • Synology Knowledge Base: Official documentation
  • Docker Documentation: Learn REDACTED_APP_PASSWORD
  • LinuxServer.io: Pre-built Docker images with great docs

🛡️ Security Best Practices for Beginners

Network Security

# Essential security steps:
☐ Change default router password
☐ Disable WPS on router
☐ Enable WPA3 WiFi security
☐ Disable unnecessary router services
☐ Set up guest WiFi network
☐ Enable router firewall

NAS Security

# Synology security checklist:
☐ Change admin password (use password manager)
☐ Enable 2FA for admin account
☐ Disable default accounts (guest, etc.)
☐ Enable auto-block for failed logins
☐ Keep DSM updated
☐ Enable firewall
☐ Disable unnecessary services
☐ Use HTTPS for web access

Application Security

# Docker container security:
☐ Only use trusted images
☐ Keep containers updated
☐ Use non-root users when possible
☐ Limit container permissions
☐ Use secrets for passwords
☐ Enable container logging

🔄 Maintenance Schedule for Beginners

Daily (Automated)

  • System health checks
  • Backup verification
  • Security updates
  • Service monitoring

Weekly (5 minutes)

☐ Check system notifications
☐ Review service status
☐ Check available storage space
☐ Review security logs

Monthly (30 minutes)

☐ Update all applications
☐ Review backup integrity
☐ Check hardware health (SMART status)
☐ Clean up old files and logs
☐ Review user access permissions

Quarterly (2 hours)

☐ Full system backup
☐ Test disaster recovery procedures
☐ Review and update documentation
☐ Plan capacity upgrades
☐ Security audit and password changes

🚀 Next Steps After Basic Setup

Intermediate Projects

  1. Home Automation: Set up Home Assistant
  2. Media Automation: Configure Sonarr/Radarr for automatic downloads
  3. Remote Access: Set up VPN (Tailscale or WireGuard)
  4. Monitoring: Advanced monitoring with Grafana/Prometheus
  5. Backup Automation: Automated offsite backups

Advanced Projects

  1. Kubernetes: Container orchestration
  2. CI/CD Pipeline: GitLab or Jenkins
  3. Network Segmentation: VLANs and advanced networking
  4. High Availability: Clustering and failover
  5. Custom Applications: Develop your own services

💡 Tips for Success

Start Small

  • Begin with one or two services
  • Master the basics before adding complexity
  • Document everything you do

Join the Community

  • Ask questions on Reddit r/homelab
  • Share your setup and get feedback
  • Help others when you can

Be Patient

  • Learning takes time
  • Expect things to break (it's part of learning)
  • Keep backups of working configurations

Have Fun

  • Experiment with new services
  • Customize to your needs
  • Enjoy the learning process

🆘 Getting Help

When Things Go Wrong

  1. Check the logs: Most problems are logged somewhere
  2. Search the error: Google/Reddit search exact error messages
  3. Ask for help: Include relevant details (hardware, software versions, error messages)
  4. Document the solution: Help others and your future self

Where to Get Help

  • Reddit: r/homelab, r/synology, r/selfhosted
  • Discord: Various homelab Discord servers
  • Forums: Synology Community, LinuxServer.io forums
  • Documentation: Always check official docs first

🎯 Your First 30 Days

Week 1: Foundation

  • Set up NAS and basic storage
  • Install first application (Plex)
  • Configure basic security
  • Create backup strategy

Week 2: Core Services

  • Add password manager (Vaultwarden)
  • Set up network-wide ad blocking (Pi-hole)
  • Configure monitoring (Uptime Kuma)
  • Implement proper backup routine

Week 3: Expansion

  • Add file synchronization (Syncthing)
  • Set up photo management (Immich)
  • Configure remote access (Tailscale)
  • Optimize performance

Week 4: Mastery

  • Document your setup
  • Plan next additions
  • Help others in community
  • Celebrate your success!

🎉 Congratulations! You're now ready to start your homelab journey. Remember, everyone started as a beginner, and the homelab community is incredibly helpful and welcoming. Don't be afraid to ask questions, make mistakes, and most importantly, have fun learning!

📞 Need Help? Feel free to reach out to the homelab community or reference the comprehensive documentation in this repository for more advanced configurations and troubleshooting.