2017-08-28 15:37:57 +00:00
# Ansible NAS
2018-12-26 11:52:46 +00:00
2021-02-11 10:18:00 +00:00
[![CI ](https://github.com/davestephens/ansible-nas/workflows/CI/badge.svg )](https://github.com/davestephens/ansible-nas/actions?query=workflow%3ACI) [![Gitter chat ](https://img.shields.io/gitter/room/ansible-nas/chat.svg?logo=gitter&style=flat-square )](https://gitter.im/Ansible-NAS/Chat) [![license ](https://img.shields.io/github/license/DAVFoundation/api_doc.svg?style=flat-square )](https://github.com/davestephens/ansible-nas/blob/master/LICENSE) [![Ko-fi ](https://img.shields.io/static/v1.svg?label=ko-fi&message=Buy%20Me%20A%20Coffee&color=orange&style=flat-square&logo=buy-me-a-coffee )](https://ko-fi.com/davestephens)
2018-12-01 13:14:51 +00:00
2019-04-02 11:29:48 +00:00
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.
2017-08-28 15:31:54 +00:00
2022-05-28 17:23:12 +00:00
## 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.
2018-04-08 22:29:25 +00:00
2020-01-06 00:11:53 +00:00
### Available Applications
2018-04-08 22:29:25 +00:00
2019-01-03 15:13:34 +00:00
* [Airsonic ](https://airsonic.github.io/ ) - catalog and stream music
2019-09-25 19:07:13 +00:00
* [Bazarr ](https://github.com/morpheus65535/bazarr ) - companion to Radarr and Sonarr for downloading subtitles
2019-04-10 13:08:06 +00:00
* [Bitwarden_rs ](https://github.com/dani-garcia/bitwarden_rs ) - Self-Hosting port of password manager
2021-09-30 03:15:13 +00:00
* [Booksonic ](https://booksonic.org/ ) - The selfhosted audiobook server
2020-04-26 01:26:20 +00:00
* [Calibre-web ](https://github.com/janeczku/calibre-web ) - Provides a clean interface for browsing, reading and downloading eBooks using an existing Calibre database.
2019-10-05 10:53:49 +00:00
* [Cloud Commander ](https://cloudcmd.io/ ) - A dual panel file manager with integrated web console and text editor
2019-05-26 09:07:57 +00:00
* [Cloudflare DDNS ](https://hub.docker.com/r/joshuaavalon/cloudflare-ddns/ ) - automatically update Cloudflare with your IP address
2018-12-31 00:24:18 +00:00
* [CouchPotato ](https://couchpota.to/ ) - for downloading and managing movies
2021-01-28 08:16:54 +00:00
* [Deluge ](https://dev.deluge-torrent.org/ ) - A lightweight, Free Software, cross-platform BitTorrent client.
Add Dashy
Dashy is an open source, highly customizable, easy to use, privacy-respecting dashboard app.
It's packed full of useful features, to help you build your perfect dashboard. Including status checks, keyboard shortcuts, dynamic widgets, auto-fetched favicon icons and font-awesome support, built-in authentication, tons of themes, an interactive config editor, many display layouts plus loads more.
All the code is free and open source, and everything is thoroughly documented, you can get support with any questions on GitHub.
2022-05-24 22:44:22 +00:00
* [Dashy ](https://dashy.to/ ) - A self-hosted startpage for your server. Easy to use visual editor, status checking, widgets, themes and tons more!
2021-02-28 17:29:08 +00:00
* [DokuWiki ](https://www.dokuwiki.org/ ) - A simple to use and highly versatile Open Source wiki software that doesn't require a database.
2021-09-02 16:33:11 +00:00
* [Duplicacy ](https://duplicacy.com/ ) - A web UI for the Duplicacy cloud backup program, which provides lock-free deduplication backups to multiple providers
2018-12-31 00:24:18 +00:00
* [Duplicati ](https://www.duplicati.com/ ) - for backing up your stuff
* [Emby ](https://emby.media/ ) - Media streaming and management
2022-04-15 21:13:22 +00:00
* [ESPHome ](https://esphome.io/ ) - ESP8266/ESP32 programming and management for home automation
2019-05-26 09:07:57 +00:00
* [Firefly III ](https://firefly-iii.org/ ) - Free and open source personal finance manager
Add Fresh RSS
FreshRSS is a self-hosted RSS feed aggregator like Leed or Kriss Feed.
It is lightweight, easy to work with, powerful, and customizable.
It is a multi-user application with an anonymous reading mode. It supports custom tags. There is an API for (mobile) clients, and a Command-Line Interface.
Thanks to the WebSub standard (formerly PubSubHubbub), FreshRSS is able to receive instant push notifications from compatible sources, such as Mastodon, Friendica, WordPress, Blogger, FeedBurner, etc.
FreshRSS natively supports basic Web scraping, based on XPath, for Web sites not providing any RSS / Atom feed.
Finally, it supports extensions for further tuning.
2022-05-24 22:45:27 +00:00
* [Fresh RSS ](https://freshrss.org/ ) - Self-hosted RSS feed aggregator like Leed or Kriss Feed
2019-03-01 20:59:43 +00:00
* [get_iplayer ](https://github.com/get-iplayer/get_iplayer ) - download programmes from BBC iplayer
2020-06-25 14:39:50 +00:00
* [Gitea ](https://gitea.io/en-us/ ) - Simple self-hosted GitHub clone
* [GitLab ](https://about.gitlab.com/features/ ) - Self-hosted GitHub clone of the highest order
2018-12-31 00:24:18 +00:00
* [Glances ](https://nicolargo.github.io/glances/ ) - for seeing the state of your system via a web browser
2021-02-23 21:47:13 +00:00
* [Gotify ](https://gotify.net/ ) Self-hosted server for sending push notifications
2018-12-31 00:24:18 +00:00
* [Grafana ](https://github.com/grafana/grafana ) - Dashboarding tool
* [Guacamole ](https://guacamole.apache.org/ ) - Web based remote desktop gateway, supports VNC, RDP and SSH
* [Heimdall ](https://heimdall.site/ ) - Home server dashboard
2019-07-23 20:07:40 +00:00
* [Home Assistant ](https://www.home-assistant.io ) - Open source home automation
2018-12-31 00:24:18 +00:00
* [InfluxDB ](https://github.com/influxdata/influxdb ) - Time series database used for stats collection
2019-03-25 15:15:12 +00:00
* [Jackett ](https://github.com/Jackett/Jackett ) - API Support for your favorite torrent trackers
2019-08-27 12:58:00 +00:00
* [Jellyfin ](https://jellyfin.github.io ) - The Free Software Media System
2019-10-19 22:53:50 +00:00
* [Joomla ](https://www.joomla.org/ ) - Open source content management system
2021-12-27 23:50:05 +00:00
* [Komga ](https://komga.org/ ) - a media server for your comics, mangas, BDs and magazines
2020-05-17 11:17:25 +00:00
* [Krusader ](https://krusader.org/ ) - Twin panel file management for your desktop
2019-10-16 17:58:37 +00:00
* [Lidarr ](https://github.com/lidarr/Lidarr ) - Music collection manager for Usenet and BitTorrent users
2022-02-27 19:45:22 +00:00
* [Mealie ](https://hay-kot.github.io/mealie/ ) - A self-hosted recipe manager and meal planner
2020-05-08 06:11:54 +00:00
* [MiniDLNA ](https://sourceforge.net/projects/minidlna/ ) - simple media server which is fully compliant with DLNA/UPnP-AV clients
2018-12-31 00:24:18 +00:00
* [Miniflux ](https://miniflux.app/ ) - An RSS news reader
2019-05-01 12:23:11 +00:00
* [Mosquitto ](https://mosquitto.org ) - An open source MQTT broker
2020-05-02 22:59:33 +00:00
* [Mylar ](https://github.com/evilhero/mylar ) - An automated Comic Book downloader (cbr/cbz) for use with SABnzbd, NZBGet and torrents
2019-03-01 23:05:33 +00:00
* [MyMediaForAlexa ](https://www.mymediaalexa.com/ ) - Lets you stream your music collection to your alexa device
2021-03-06 15:33:07 +00:00
* [n8n ](https://n8n.io/ ) - Nodemation, a node based workflow and automation service like IFTTT.
2022-05-24 22:35:02 +00:00
* [navidrome ](https://www.navidrome.org/ ) - Modern Music Server and Streamer compatible with Subsonic/Airsonic
2020-05-03 00:19:34 +00:00
* [netboot.xyz ](https://netboot.xyz/ ) - a PXE boot server
2018-12-31 00:24:18 +00:00
* [Netdata ](https://my-netdata.io/ ) - An extremely comprehensive system monitoring solution
* [Nextcloud ](https://nextcloud.com/ ) - A self-hosted Dropbox alternative
2019-06-02 20:15:34 +00:00
* [NZBget ](https://nzbget.net/ ) - The most efficient usenet downloader
2019-11-21 03:28:11 +00:00
* [Ombi ](https://ombi.io/ ) - web application that automatically gives your users the ability to request content
2020-04-25 04:08:10 +00:00
* [Organizr ](https://organizr.app/ ) - ORGANIZR aims to be your one stop shop for your Servers Frontend.
2019-08-13 13:07:33 +00:00
* [openHAB ](https://www.openhab.org/ ) - A vendor and technology agnostic open source automation software for your home
2022-01-08 21:51:58 +00:00
* [Paperless_ng ](https://github.com/jonaswinkler/paperless-ng ) - Scan, index and archive all your physical documents
2021-08-17 23:13:25 +00:00
* [Piwigo ](https://piwigo.org/ ) - Photo Gallery Software
2018-12-31 00:24:18 +00:00
* [Plex ](https://www.plex.tv/ ) - Plex Media Server
* [Portainer ](https://portainer.io/ ) - for managing Docker and running custom images
2021-08-21 00:24:45 +00:00
* [Prowlarr ](https://github.com/Prowlarr/Prowlarr ) - Indexer aggregator for Sonarr, Radarr, Lidarr, etc.
2019-05-06 21:04:04 +00:00
* [pyLoad ](https://pyload.net/ ) - A download manager with a friendly web-interface
2020-04-22 04:52:08 +00:00
* [PyTivo ](http://pytivo.org ) - An HMO and GoBack server for TiVos.
2018-12-31 00:24:18 +00:00
* [Radarr ](https://radarr.video/ ) - for organising and downloading movies
2022-05-24 22:47:39 +00:00
* [RSS-Bridge ](https://rss-bridge.github.io/rss-bridge/ ) - The RSS feed for websites missing it
2020-01-30 14:47:37 +00:00
* [Sabnzbd ](https://sabnzbd.org/ ) - A powerful usenet downloader that FreeNAS provides
* [Serposcope ](https://serposcope.serphacker.com/en/ ) - tracker to monitor website ranking
2019-04-15 15:38:08 +00:00
* [Sickchill ](https://sickchill.github.io/ ) - for managing TV episodes
2018-12-31 00:24:18 +00:00
* [Sonarr ](https://sonarr.tv/ ) - for downloading and managing TV episodes
2020-05-04 17:31:44 +00:00
* [Speedtest-Tracker ](https://github.com/henrywhitaker3/Speedtest-Tracker ) - Continuously track your internet speed
2021-01-22 21:27:17 +00:00
* [Syncthing ](https://syncthing.net/ ) - sync directories with another device
2018-12-31 00:24:18 +00:00
* [Tautulli ](http://tautulli.com/ ) - Monitor Your Plex Media Server
* [Telegraf ](https://github.com/influxdata/telegraf ) - Metrics collection agent
2019-04-12 22:31:27 +00:00
* [The Lounge ](https://thelounge.chat ) - Web based always-on IRC client
2019-10-20 21:52:52 +00:00
* [TimeMachine ](https://github.com/awlx/samba-timemachine ) - Samba-based mac backup server
2018-12-31 00:24:18 +00:00
* [Traefik ](https://traefik.io/ ) - Web proxy and SSL certificate manager
* [Transmission ](https://transmissionbt.com/ ) - BitTorrent client (with OpenVPN if you have a supported VPN provider)
2019-11-19 18:13:15 +00:00
* [Ubooquity ](http://vaemendis.net/ubooquity/ ) - Book and comic server
2020-04-23 05:42:39 +00:00
* [uTorrent ](https://www.utorrent.com/ ) - The best torrent downloading app for beginners
2020-01-25 12:17:08 +00:00
* [Virtual Desktop ](https://github.com/RattyDAVE/docker-ubuntu-xrdp-mate-custom ) - A virtual desktop running on your NAS.
2019-06-12 19:48:18 +00:00
* [Wallabag ](https://wallabag.org/ ) - Save and classify articles. Read them later.
2018-12-31 00:24:18 +00:00
* [Watchtower ](https://github.com/v2tec/watchtower ) - Monitor your Docker containers and update them if a new version is available
2020-05-17 11:17:25 +00:00
* [YouTubeDL-Material ](https://github.com/Tzahi12345/YoutubeDL-Material ) - Self-hosted YouTube downloader built on Material Design
2018-12-31 00:24:18 +00:00
* [ZNC ](https://wiki.znc.in/ZNC ) - IRC bouncer to stay connected to favourite IRC networks and channels
2018-04-08 22:29:25 +00:00
2018-04-09 12:22:21 +00:00
## What This Could Do
2019-04-02 11:29:48 +00:00
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.
2018-04-09 12:22:21 +00:00
2019-04-02 11:29:48 +00:00
That said, if specific functionality you want isn't included and you think
others could benefit, add it and raise a PR!
2018-04-09 12:22:21 +00:00
2017-08-28 15:31:54 +00:00
## What This Doesn't Do
2018-09-23 19:20:10 +00:00
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
2019-05-26 09:07:57 +00:00
gained by automating it. Check out the [docs ](https://davestephens.github.io/ansible-nas ) for recommended setups.
2017-08-28 15:31:54 +00:00
2020-01-07 22:23:21 +00:00
## Installation
2018-04-08 22:29:25 +00:00
2020-01-07 22:23:21 +00:00
See [Installation ](https://davestephens.github.io/ansible-nas/installation/ ).
2019-07-03 23:22:20 +00:00
2020-01-06 00:11:53 +00:00
## Upgrading
2018-04-08 22:29:25 +00:00
2020-01-06 00:11:53 +00:00
**The way Ansible-NAS configuration is structured has changed!** See [Upgrading ](https://davestephens.github.io/ansible-nas/upgrading/ ) for more information. See the **Getting Help** section if you get stuck.
2019-07-03 23:22:20 +00:00
2018-12-26 11:52:46 +00:00
## Documentation
2019-04-02 11:29:48 +00:00
You can read the docs [here ](https://davestephens.github.io/ansible-nas ). PRs
for more documentation always welcome!
2017-08-28 15:31:54 +00:00
## Migrating from FreeNAS
Assuming that your Ubuntu system disk is separate from your storage (it should be!):
2018-12-31 00:24:18 +00:00
1. Ensure you have a working backup of your data.
2. Check that the working backup you think you have actually works.
3. SSH to the server and run `zpool list` to determine available ZFS pools.
4. `zpool import <pool_name>` against each of the pools you want to attach.
5. `chown -R root:root /mnt/<pool_name>` to fix the ownership of the data.
6. Follow the Quick Start instructions above.
2018-04-08 22:29:25 +00:00
2019-04-15 13:01:48 +00:00
## Requirements
2018-12-26 11:52:46 +00:00
2019-04-15 15:46:26 +00:00
* Ansible NAS targets the latest Ubuntu LTS release, which is currently Ubuntu
2021-01-15 09:26:13 +00:00
Server 20.04 LTS.
2019-04-15 15:46:26 +00:00
* You can run Ansible-NAS on whatever you like, read the docs for more info. I
use an HP Microserver.
2017-08-28 15:31:54 +00:00
2018-12-01 13:14:51 +00:00
## Getting Help
Getting help is easy! You can:
2018-04-08 22:29:41 +00:00
2018-12-31 00:24:18 +00:00
* Read the [docs ](https://davestephens.github.io/ansible-nas )
2021-01-29 00:37:33 +00:00
* Start a [discussion ](https://github.com/davestephens/ansible-nas/discussions )
* Raise an [issue ](https://github.com/davestephens/ansible-nas/issues ) if you think you've found a bug
2018-12-31 00:24:18 +00:00
* Chat on [Gitter ](https://gitter.im/Ansible-NAS/Chat )
2017-08-28 15:31:54 +00:00
## Contributing
2018-04-08 22:29:25 +00:00
2020-01-05 09:14:42 +00:00
Contributions are always welcome! Please read [CONTRIBUTING.md ](CONTRIBUTING.md ) first.
2018-12-08 22:51:38 +00:00
2019-06-30 14:23:43 +00:00
## Support
If you've enjoyed Ansible-NAS as much as I do working on it, please consider [buying me a coffee ](https://ko-fi.com/davestephens ) :coffee:
2019-08-30 09:21:07 +00:00
## Thanks
2022-05-28 17:23:12 +00:00
The awesome dudes at [JetBrains ](https://www.jetbrains.com/?from=Ansible-NAS ) for supplying core contributors with JetBrains Open Source licenses!
All of the awesome contributors to Ansible-NAS: ![All of the awesome contributors to Ansible-NAS ](https://contrib.rocks/image?repo=davestephens/ansible-nas )