Ansible NAS
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
- Activepieces - an open source all-in-one automation tool
- Actual - A local-first personal finance app
- Admidio - a free online membership management
- Adventure Log - Self-hostable travel tracker and trip planner.
- Airsonic - catalog and stream music
- Apcupsd - A daemon for controlling APC UPSes
- Appsmith - low-code application platform to quickly build, deploy, and manage effective software
- Aria2 - a lightweight multi-protocol & multi-source, cross platform download utility operated in command-line
- 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
- Baserow - an open source no-code database and Airtable alternative
- Bazarr - companion to Radarr and Sonarr for downloading subtitles
- Beets - media library management system for obsessive music geeks
- Blaze - File sharing progressive web app
- Blocky - Fast and lightweight DNS proxy as ad-blocker
- Booksonic - The selfhosted audiobook server
- Budibase - Low code platform for building business apps and workflows in minutes
- Calibre - Calibre is a powerful and easy to use e-book manager.
- Calibre-web - Provides a clean interface for browsing, reading and downloading eBooks using an existing Calibre database.
- Casdoor - An open-source UI-first Identity and Access Management (IAM) / Single-Sign-On (SSO) platform.
- Changedetection.io - Free open source website change detection, monitor and notification service
- Chatpad - Not just another ChatGPT user-interface!
- Chatwoot - Open-source live-chat, email support, omni-channel desk
- Claper - The ultimate tool to interact with your audience
- Code Server - Powerful IDE from Microsoft accessible through the browser
- CommaFeed - Google Reader inspired self-hosted RSS reader
- 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!
- DbGate - Database manager for MySQL, PostgreSQL, SQL Server, MongoDB, SQLite and others
- DDNS Updater - dynamic dns updater for serveral providers
- Deluge - A lightweight, Free Software, cross-platform BitTorrent client.
- Directus - An instant REST+GraphQL API and intuitive no-code data collaboration app for any SQL database.
- Dockge - A fancy, easy-to-use and reactive self-hosted docker compose.yaml stack-oriented manager
- DokuWiki - A simple to use and highly versatile Open Source wiki software that doesn't require a database.
- Domain Watchdog - DNS domain monitoring tool
- Dozzle - Realtime log viewer for docker containers
- 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
- Dufs - distinctive utility file server
- Duplicati - for backing up your stuff
- Emby - Media streaming and management
- ebusd - daemon for communication with eBUS heating systems
- ESPHome - ESP8266/ESP32 programming and management for home automation
- EspoCRM - Open Source CRM Application
- Evershop - NodeJS E-commerce Platform
- 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
- FlareSolverr - FlareSolverr is a proxy server to bypass Cloudflare and DDoS-GUARD protection
- Flarum - Self-hosted startpage for your server
- Flatnotes - Self-hosted, database-less note taking web app
- Formbricks - An Open Source Survey Platform
- FormIO - SA Form and Data Management Platform for Progressive Web Applications
- 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
- Fusion - A lightweight, self-hosted friendly RSS aggregator and reader
- 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
- Ghostfolio - Open Source Wealth Management Software
- Gitea - Simple self-hosted GitHub clone
- GitLab - Self-hosted GitHub clone of the highest order
- Glance - A self-hosted dashboard that puts all your feeds in one place
- Glances - for seeing the state of your system via a web browser
- Glpi - Free Asset and IT Management Software package
- 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
- Grist - Grist is the evolution of spreadsheets.
- Grocy - web-based self-hosted groceries & household management solution for your home
- Guacamole - Web based remote desktop gateway, supports VNC, RDP and SSH
- HA Fusion - A modern, easy-to-use and performant custom Home Assistant dashboard
- healthchecks.io - Ensure your NAS is online and get notified otherwise
- Heimdall - Home server dashboard
- Heyform - an open-source form builder that allows anyone to create engaging conversational forms
- Hi.Events - Self-hosted event management and ticket selling platform
- Hoarder - A self-hostable bookmark-everything app (links, notes and images)
- Homarr - Customizable browser's home page
- Home Assistant - Open source home automation
- Homebridge - Emulate the iOS HomeKit API
- Homepage - Highly customizable application dashboard with integrations for over 100 services.
- Hoppscotch - Open source API development ecosystem - (open-source alternative to Postman, Insomnia)
- Huginn - Create agents that monitor and act on your behalf. Your agents are standing by!
- Huly Platform - All-in-One Project Management Platform (alternative to Linear, Jira, Slack, Notion, Motion)
- Huntly - Self-hosted information management tool
- ICantBelieveItsNotValetudo - companion service for Valetudo that renders ValetudoMap map data to raster graphics.
- Immich - Self-hosted photo and video backup solution directly from your mobile phone.
- Input - A privacy-focused, no-code, open-source form builder.
- Influxdb - Time series database used for stats collection
- Invidious - An open source alternative front-end to YouTube
- iSpy Agent DVR - iSpy - Agent DVR is a video surveillance software
- 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
- Leantime - strategic project management system for non-project managers
- Libreddit - Private front-end for Reddit
- Librephotos - self-hosted open source photo
- Librespeed - Self-hosted Speedtest for HTML5 and more
- LibreTranslate - Free and Open Source Machine Translation API
- Librum Server - A clean and powerful way to read and manage your e-books on any device
- Lidarr - Music collection manager for Usenet and BitTorrent users
- LidaTube - App for finding missing Lidarr albums via yt-dlp
- Light LDAP - Light LDAP implementation
- Linkding - Self-hosted bookmark service
- Linkstack - the ultimate solution for creating a personalized & professional profile page
- Linkwarden - Open-source collaborative bookmark manager to collect, organize and archive webpages
- Listmonk - High performance, self-hosted, newsletter and mailing list manager
- Littlelink - Self-hosted alternative to linktree
- LiveHelperChat - live support for your website
- Loki - Loki is a horizontally scalable, highly available, multi-tenant log aggregation system inspired by Prometheus.
- Lowcoder - The Open Source Retool, Tooljet and Appsmith Alternative.
- LubeLogger - LubeLogger is a web-based vehicle maintenance and fuel mileage tracker.
- Mainsail - popular web interface for managing and controlling 3D printers with Klipper
- Maker Management Platform - management of a variety of digital assets related to 3d printing, manufacturing, laser engraving and such.
- Mantium - dashboard for tracking mangas from multiple source sites, like Mangadex and ComicK.
- Mattermost - open source platform for secure collaboration across the entire software development lifecycle
- MariaDB - one of the most popular open source relational databases
- Maybe - The OS for your personal finances
- Mealie - A self-hosted recipe manager and meal planner
- Memos - An open-source memo hub with knowledge management and social networking
- Metabase - business intelligence and analytics
- Metube - Self-hosted YouTube downloader (web UI for youtube-dl / yt-dlp)
- Minecraft Java Server - Java server edition of the popular building and exploring game
- Minecraft Bedrock Server - Bedrock 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
- Minio - MinIO is a high-performance, S3 compatible object store
- Miniserve - a CLI tool to serve files and dirs over HTTP
- Mosquitto - An open source MQTT broker
- Mumble - Open source, low latency, high quality voice chat
- 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
- n.eko - A self hosted virtual browser that runs in docker and uses WebRTC.
- 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
- NocoDB - Open Source Airtable Alternative
- Nomad - A simple and flexible scheduler and software orchestrator
- Notifo - Multi channel notification service for collaboration tools, e-commerce, news service and more.
- NZBget - The most efficient usenet downloader
- Nzbhydra2 - Usenet meta search
- Obsidian - Obsidian is the private and flexible writing app
- Octoprint - Control and monitor your 3D printer
- OliveTin - safe and simple access to predefined shell commands
- Ombi - web application that automatically gives your users the ability to request content
- Openbooks - Search and Download eBooks
- openHAB - A vendor and technology agnostic open source automation software for your home
- openLDAP - An open source implementation of the Lightweight Directory Access Protocol
- Open-resume - A powerful open-source resume builder and resume parser
- Open-WebUI - User-friendly WebUI for LLMs (Formerly Ollama WebUI)
- Organizr - ORGANIZR aims to be your one stop shop for your Servers Frontend.
- Outline - The fastest knowledge base for growing teams.
- Overleaf - A web-based collaborative LaTeX editor
- 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
- Pinchflat - Your next YouTube media manager
- Piwigo - Photo Gallery Software
- Plex - Plex Media Server
- Pocket-ID - A simple OIDC provider
- Portainer - for managing Docker and running custom images
- Pretix - Ticketing software that cares about your event—all the way.
- Prometheus - Time series database and monitoring system (via stats role).
- Promtail - Promtail is an agent which ships the contents of local logs to a private Grafana Loki instance
- 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
- Rallly - an open-source scheduling and collaboration tool
- Readeck - a simple web application that lets you save the precious readable content of web pages you like and want to keep forever.
- Releasebell - Starred GitHub repositories notifications
- Restic - A modern backup program
- Richy - Application that helps you to manage your investing portfolio
- Romm - A game library manager focused on retro gaming
- Route53 DDNS - Automatically update AWS Route53 with your IP address
- RSS-Bridge - The RSS feed for websites missing it
- RSSHub - An open source, easy to use, and extensible RSS feed generator.
- Ryot - A self hosted platform for tracking various facets of your life - media, fitness etc.
- Sabnzbd - A powerful usenet downloader that FreeNAS provides
- Seafile - High performance file syncing and sharing
- SearxNG - Free internet metasearch engine
- Scribble.rs - A skribbl.io alternative
- Servas - A self-hosted bookmark management tool
- Shaarli - Personal, minimalist, super-fast, database free, bookmarking service
- Shiori - Simple bookmark manager built with Go
- Sickchill - for managing TV episodes
- Silverbullet - Note-taking application optimized for people with a hacker mindset
- Simplelogin - Receive and send emails anonymously
- SiYuan - A privacy-first, self-hosted, fully open source personal knowledge management software
- 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
- Squirrel Servers Manager - A user friendly, UI/UX focus server & configuration management tool.
- Stats - Monitor and visualise metrics about your NAS and internet connection using Grafana, Prometheus, Telegraf and more.
- Stalwart Mail - A scalable, secure and robust open-source mail server software designed for the 21st century.
- Standard Notes - An end-to-end encrypted notes app
- Stirling-PDF - locally hosted web application that allows you to perform various operations on PDF files
- SuiteCRM - Open source CRM for the world
- Syncthing - sync directories with another device
- Tautulli - Monitor Your Plex Media Server
- The Lounge - Web based always-on IRC client
- Threadfin - M3U Proxy for Plex DVR and Emby/Jellyfin Live TV. Based on xTeVe.
- TiddlyWiki - A unique non-linear notebook/wiki for capturing, organizing, and sharing complex information
- TimeMachine - Samba-based mac backup server
- ToolJet - Low-code platform for building business applications
- Traefik - Web proxy and SSL certificate manager
- Transmission - BitTorrent client (with OpenVPN if you have a supported VPN provider)
- TriliumNext Notes - 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
- Twenty CMS - The #1 Open-Source CRM
- Ubooquity - Book and comic server
- Unifi Network Application - powerful, enterprise wireless software engine
- Uppy - The next open source file uploader for web browsers
- uTorrent - The best torrent downloading app for beginners
- Valheim Server - Valheim dedicated gameserver manager.
- Vaultwarden - Self-Hosting port of password manager
- Virtual Desktop - A virtual desktop running on your NAS.
- Wallabag - Save and classify articles. Read them later.
- Wallos - Open-Source Personal Subscription Tracker.
- Wanderer - A self-hosted trail database.
- 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
Preconfigured Application Stacks
Ansible-NAS application stacks are a number of applications deployed together and preconfigured to perform a common goal.
- Logging - application logging capture and search service based on Grafana Loki.
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 :coffee:
Thanks
The awesome dudes at JetBrains for supplying core contributors with JetBrains Open Source licenses!
All of the awesome contributors to Ansible-NAS!