Skip to content

Build a full-featured home server or NAS replacement with an Ubuntu box and this playbook.

License

Notifications You must be signed in to change notification settings

nextgenthemes/ansible-nas

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Ansible NAS

CI Integration Gitter chat license Ko-fi

After getting burned by broken FreeNAS updates one too many times, I figured I could do a much better job myself using just a stock Ubuntu install, some clever Ansible config and a bunch of Docker containers.

What Ansible-NAS Does

You can configure Ansible-NAS to set up any (or all!) of the applications listed below on your home server.

If you have a spare domain name you can configure applications to be accessible externally to your home LAN too; they'll be configured with a sensible hostname and DNS gets updated accordingly if your home IP address changes.

Available Applications Roles

  • Airsonic - catalog and stream music
  • Authelia - The Single Sign-On Multi-Factor portal for web apps
  • Authentik - an open-source Identity Provider focused on flexibility and versatility
  • Barcode Buddy - Barcode system for Grocy
  • Bazarr - companion to Radarr and Sonarr for downloading subtitles
  • Beets - media library management system for obsessive music geeks
  • Booksonic - The selfhosted audiobook server
  • Calibre-web - Provides a clean interface for browsing, reading and downloading eBooks using an existing Calibre database.
  • Changedetection.io - Free open source website change detection, monitor and notification service
  • Chatpad - Not just another ChatGPT user-interface!
  • Claper - The ultimate tool to interact with your audience
  • Code Server - Powerful IDE from Microsoft accessible through the browser
  • Cloud Commander - A dual panel file manager with integrated web console and text editor
  • Cloudflare DDNS - automatically update Cloudflare with your IP address
  • CouchPotato - for downloading and managing movies
  • Dashy - A self-hosted startpage for your server. Easy to use visual editor, status checking, widgets, themes and tons more!
  • Deluge - A lightweight, Free Software, cross-platform BitTorrent client.
  • DokuWiki - A simple to use and highly versatile Open Source wiki software that doesn't require a database.
  • Drone CI - A self-service Continuous Integration platform for busy development teams.
  • Duplicacy - A web UI for the Duplicacy cloud backup program, which provides lock-free deduplication backups to multiple providers
  • Duplicati - for backing up your stuff
  • Emby - Media streaming and management
  • ESPHome - ESP8266/ESP32 programming and management for home automation
  • Excalidraw - Virtual whiteboard for sketching hand-drawn like diagrams
  • Firefly III - Free and open source personal finance manager
  • Flame - Flarum is a delightfully simple discussion platform for your website
  • Flarum - Self-hosted startpage for your server
  • Flatnotes - Self-hosted, database-less note taking web app
  • Fresh RSS - Self-hosted RSS feed aggregator like Leed or Kriss Feed
  • Frigate - Frigate is an open source NVR built around real-time AI object detection
  • Gaps - Find the missing movies in your Plex Server
  • get_iplayer - download programmes from BBC iplayer
  • Ghost - Turn your audience into a business. Publishing, memberships, subscriptions and newsletters
  • Gitea - Simple self-hosted GitHub clone
  • GitLab - Self-hosted GitHub clone of the highest order
  • Glances - for seeing the state of your system via a web browser
  • Gotify - Self-hosted server for sending push notifications
  • Grafana - Query, visualize, alert on, and understand your data no matter where it’s stored (via stats role).
  • Graylog - Free and open source log management
  • Grocy - web-based self-hosted groceries & household management solution for your home
  • Guacamole - Web based remote desktop gateway, supports VNC, RDP and SSH
  • healthchecks.io - Ensure your NAS is online and get notified otherwise
  • Heimdall - Home server dashboard
  • Home Assistant - Open source home automation
  • Homebridge - Emulate the iOS HomeKit API
  • Huginn - Create agents that monitor and act on your behalf. Your agents are standing by!
  • Huntly - Self-hosted information management tool
  • Immich - Self-hosted photo and video backup solution directly from your mobile phone.
  • Influxdb - Time series database used for stats collection
  • Jackett - API Support for your favorite torrent trackers
  • Jellyfin - The Free Software Media System
  • Joomla - Open source content management system
  • Kavita - Kavita is a rocket fueled self-hosted digital library which supports a vast array of file formats
  • Keycloak - Open Source Identity and Access Management
  • Komga - a media server for your comics, mangas, BDs and magazines
  • Krusader - Twin panel file management for your desktop
  • LazyLibrarian - LazyLibrarian is a program to follow authors and grab metadata for all your digital reading needs
  • Libreddit - Private front-end for Reddit
  • Librephotos - self-hosted open source photo
  • Librespeed - Self-hosted Speedtest for HTML5 and more
  • Lidarr - Music collection manager for Usenet and BitTorrent users
  • Listmonk - High performance, self-hosted, newsletter and mailing list manager
  • Littlelink - Self-hosted alternative to linktree
  • Loki - multi-tenant log aggregation system (via stats role).
  • Mattermost - open source platform for secure collaboration across the entire software development lifecycle
  • MariaDB - one of the most popular open source relational databases
  • Mealie - A self-hosted recipe manager and meal planner
  • Memos - An open-source memo hub with knowledge management and social networking
  • Minecraft Server - Server edition of the popular building and exploring game
  • Minetest Server - An open source voxel game engine server
  • MiniDLNA - simple media server which is fully compliant with DLNA/UPnP-AV clients
  • Miniflux - An RSS news reader
  • Mosquitto - An open source MQTT broker
  • Moviematch - MovieMatch for Plex
  • Mylar - An automated Comic Book downloader (cbr/cbz) for use with SABnzbd, NZBGet and torrents
  • MyMediaForAlexa - Lets you stream your music collection to your alexa device
  • MySql - The world's most popular open source database
  • n8n - Nodemation, a node based workflow and automation service like IFTTT.
  • navidrome - Modern Music Server and Streamer compatible with Subsonic/Airsonic
  • netboot.xyz - a PXE boot server
  • Netbox - The premiere source of truth powering network automation
  • Netdata - An extremely comprehensive system monitoring solution
  • Nextcloud - A self-hosted Dropbox alternative
  • Node-RED - A programming tool for wiring together hardware devices, APIs and online services
  • Nomad - A simple and flexible scheduler and software orchestrator
  • NZBget - The most efficient usenet downloader
  • Nzbhydra2 - Usenet meta search
  • Octoprint - Control and monitor your 3D printer
  • Ombi - web application that automatically gives your users the ability to request content
  • openHAB - A vendor and technology agnostic open source automation software for your home
  • openLDAP - An open source implementation of the Lightweight Directory Access Protocol
  • Organizr - ORGANIZR aims to be your one stop shop for your Servers Frontend.
  • overseerr - open source software application for managing requests for your media library
  • Paperless_ng - Scan, index and archive all your physical documents
  • Photofield - Experimental fast photo viewer
  • Photoprism - An AI-Powered Photos App for the Decentralized Web
  • PhotoStructure - Your new home for all your photos & videos
  • PhpMyAdmin - a tool intended to handle the administration of MySQL over the Web
  • Piwigo - Photo Gallery Software
  • Plex - Plex Media Server
  • Portainer - for managing Docker and running custom images
  • Prometheus - Time series database and monitoring system (via stats role).
  • Prowlarr - Indexer aggregator for Sonarr, Radarr, Lidarr, etc.
  • pyLoad - A download manager with a friendly web-interface
  • PyTivo - An HMO and GoBack server for TiVos.
  • Radarr - for organising and downloading movies
  • Releasebell - Starred GitHub repositories notifications
  • Restic - A modern backup program
  • Route53 DDNS - Automatically update AWS Route53 with your IP address
  • RSS-Bridge - The RSS feed for websites missing it
  • Sabnzbd - A powerful usenet downloader that FreeNAS provides
  • Seafile - High performance file syncing and sharing
  • SearxNG - Free internet metasearch engine
  • Shaarli - Personal, minimalist, super-fast, database free, bookmarking service
  • Sickchill - for managing TV episodes
  • Snipe-IT - A free open source IT asset/license management system
  • Sonarr - for downloading and managing TV episodes
  • Speedtest-Tracker - Continuously track your internet speed
  • Stats - Monitor and visualise metrics about your NAS and internet connection using Grafana, Prometheus, Telegraf and more.
  • Syncthing - sync directories with another device
  • Tautulli - Monitor Your Plex Media Server
  • The Lounge - Web based always-on IRC client
  • TiddlyWiki - A unique non-linear notebook/wiki for capturing, organizing, and sharing complex information
  • TimeMachine - Samba-based mac backup server
  • Traefik - Web proxy and SSL certificate manager
  • Transmission - BitTorrent client (with OpenVPN if you have a supported VPN provider)
  • Trilium - Hierarchical note taking application with focus on building large personal knowledge bases
  • Tt-rss - free and open source web-based news feed (RSS/Atom) reader and aggregator
  • Ubooquity - Book and comic server
  • uTorrent - The best torrent downloading app for beginners
  • Vaultwarden - Self-Hosting port of password manager
  • Virtual Desktop - A virtual desktop running on your NAS.
  • Wallabag - Save and classify articles. Read them later.
  • Watchtower - Monitor your Docker containers and update them if a new version is available
  • Webtrees - On-line collaborative genealogy application
  • Wger - Free, open source web application that manages your exercises, workouts and nutrition
  • Whats-Up-Docker - Docker container update notifier
  • Whoogle - A self-hosted, ad-free, privacy-respecting metasearch engine
  • Wireshark - the world’s foremost and widely-used network protocol analyzer.
  • Wishthis - simple, intuitive and modern wishlist platform
  • Woodpecker-CI - a simple CI engine with great extensibility, forked from Drone.
  • YouTubeDL-Material - Self-hosted YouTube downloader built on Material Design
  • ZNC - IRC bouncer to stay connected to favourite IRC networks and channels

What This Could Do

Ansible-NAS can run anything that's in a Docker image, which is why Portainer is included. A NAS configuration is a pretty personal thing based on what you download, what media you view, how many photos you take...so it's difficult to please everyone.

That said, if specific functionality you want isn't included and you think others could benefit, add it and raise a PR!

What This Doesn't Do

Ansible NAS doesn't set up your disk partitions, primarily because getting it wrong can be incredibly destructive. That aside, configuring partitions is usually a one-time (or very infrequent) event, so there's not much to be gained by automating it. Check out the docs for recommended setups.

Installation

See Installation.

Documentation

You can read the docs here. PRs for more documentation always welcome!

Migrating from FreeNAS

Read the migrating from FreeNAS docs.

Requirements

  • Ansible NAS targets the latest Ubuntu LTS release, which is currently Ubuntu Server 22.04 LTS.
  • You can run Ansible-NAS on whatever hardware you like, read the docs for more info. I use an HP Microserver.

Getting Help

Getting help is easy! You can:

Contributing

Contributions are always welcome! Please read CONTRIBUTING.md first.

Support

If you've enjoyed Ansible-NAS as much as I do working on it, please consider buying me a coffee

Thanks

The awesome dudes at JetBrains for supplying core contributors with JetBrains Open Source licenses!

All of the awesome contributors to Ansible-NAS!

About

Build a full-featured home server or NAS replacement with an Ubuntu box and this playbook.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Jinja 90.3%
  • Shell 4.9%
  • JavaScript 3.2%
  • Other 1.6%