Whether you’ve just built a brand-new DIY NAS or wiped the OS for a clean slate, follow this streamlined post-install playbook. Every step links to an in-depth guide on saurabthakur.com so you can drill down whenever you need more detail. Happy homelabbing! 🛠️
📌 Quick Navigation
- Install & Update OMV
- Create
/srv/personalMount Point - (Re-)Install Docker & Portainer
- Restore or Seed Your Docker Data
- Automate Smart Backups
- Hardening & Quality-of-Life Tweaks
- Remote & Secure Access
1️⃣ Step 1: Install & Update OMV
Getting your base OS installed cleanly and securely is critical.
- Flash the OS: Write the latest OMV ISO to a USB stick.
- Install to SSD: Install OMV on a dedicated SSD.
Warning: Never install the OS on your data HDD!
- Secure the Admin: Change the default
admin/openmediavaultpassword immediately after your first login. - Update System: Pull the newest security patches by running the following command in your terminal:
apt update && apt upgrade -y
➡️ Full walk-through: Build a NAS from Scratch — Step-by-Step Guide
2️⃣ Step 2: Create the /srv/personal Mount Point
Your future backups, media, and Docker bind-mounts all need a reliable home. They will live inside /srv/personal.
- Follow the
fstabmethod to ensure your mount is persistent across reboots.
Tip: Making your mount point persistent avoids broken Docker paths if the system restarts unexpectedly.
➡️ Details & troubleshooting: Create a Mount Point for /srv/personal
3️⃣ Step 3: (Re-)Install Docker & Portainer
Once the storage is ready, it’s time to set up your container environment.
- Install Docker: Use the official
curlinstallation script to fetch Docker. - Install Portainer: Spin up Portainer for easy, point-and-click container management.
➡️ Copy-paste commands: Automated Docker Restore — Step 1 & 2
4️⃣ Step 4: Restore or Seed Your Docker Data
If this is a rebuild, you’ll want to get your previous setup running again smoothly.
- Extract Archives: Untar your latest archive files.
- Rsync Data: Use
rsyncto sync yourvolumes,containers,network,swarm, and config folders back into/var/lib/docker/. - Database Restores: Import SQL dumps for apps like Nextcloud and Immich to bring their databases back online without data loss.
➡️ One-by-one restore steps: Automated Docker Restore on OMV
5️⃣ Step 5: Automate Smart Backups
Never skip backups! Automating them ensures you never lose critical data.
- Deploy Scripts: Drop the provided
docker_backup.shanddocker_compress.shscripts into/usr/local/bin/. - Enable Systemd Timers: Configure a
systemdtimer so every night’s snapshot automatically lands in/srv/personal/docker-backupsand is gzipped todocker-archives. - Include Databases: Make sure the dumps of your Nextcloud and Immich DBs are included in the backup routine!
Tip: Always verify your automated backups periodically to ensure they are being generated correctly.
➡️ Full automation guide: Automated Docker Backup for OMV
6️⃣ Step 6: Hardening & Quality-of-Life Tweaks
Make your NAS a joy to use on a daily basis with these security and maintenance improvements:
- 🔑 SSH Keys & Wake-on-LAN: Ditch passwords completely and learn how to power up your NAS remotely. Guide: Set up SSH Keys & WoL
- 📦 Weekly Auto-Updates: Automate your Docker and Portainer updates, and optionally schedule a daily shutdown for energy savings. Guide: Auto-Update Docker & Portainer
- 📲 Telegram Push Alerts: Secure your bot token inside a
.envfile and get real-time execution notifications from your backup scripts. Guide: Secure Telegram Notifications
7️⃣ Step 7: Remote & Secure Access
Access your files anywhere without opening vulnerable ports.
- The Strategy: Combine a Cloudflare Tunnel with DDNS.
- The Result: No port-forwarding, HTTPS enforced everywhere, and your very own custom subdomain.
➡️ End-to-end instructions: Securely Access Your NAS via Domain & Cloudflare
🎉 You’re Done!
Reboot once for luck, verify your services in Portainer, and enjoy a rock-solid OMV NAS that’s backed up, updated, and reachable from anywhere.
Got questions? Drop them under any linked guide above — each post has a comment section, and the author is quick to help! 💬
