Ew4n1011 / infra

Ansible playbook for my server infrastructure, based on ansible-nas.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Infra

Available Applications license

Docker compose was causing me too many errors, so I decided to swap to ansible. This playbook is heavily inspired by the ansible-nas project. Go check it out!

What Infra does

You can configure Infra to set up any (or all!) of the below on your home or cloud 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

  • Bazarr - Companion to Radarr and Sonarr for downloading subtitles
  • Cloudflare DDNS - Automatically update Cloudflare with your IP address
  • Code Server - Powerful IDE from Microsoft accessible through the browser
  • DDNS Updater - Dynamic dns updater for several providers
  • Duplicati - for backing up your stuff
  • Glances - For seeing the state of your system via a web browser
  • Grafana - Query, visualize, alert on, and understand your data no matter where it’s stored (via stats role)
  • Guacamole - Web based remote desktop gateway, supports VNC, RDP and SSH
  • healthchecks.io - Ensure your machine is online and get notified otherwise
  • Jellyfin - The Free Software Media System
  • Jellyseerr - Open source software application for managing requests for your media library
  • Komga - a media server for your comics, mangas, BDs and magazines
  • Lidarr - Music collection manager for Usenet and BitTorrent users
  • Minecraft Server - Server edition of the popular building and exploring game
  • MyMediaForAlexa - Lets you stream your music collection to your alexa device
  • Navidrome - Modern Music Server and Streamer compatible with Subsonic/Airsonic
  • Nextcloud - A self-hosted Dropbox alternative
  • Paperless-ngx - Scan, index and archive all your physical documents
  • Portainer - For managing Docker and running custom images
  • Prowlarr - Indexer aggregator for Sonarr, Radarr, Lidarr, etc.
  • qBittorrent - BitTorrent client
  • Radarr - For organising and downloading movies
  • Route53 DDNS - Automatically update AWS Route53 with your IP address
  • Sonarr - For downloading and managing TV episodes
  • Speedtest-Tracker - Continuously track your internet speed
  • Prometheus - Time series database and monitoring system (via stats role)
  • Stats - Monitor and visualise metrics about your machine and internet connection using Grafana, Prometheus, Telegraf and more
  • Syncthing - Sync directories with another device
  • Traefik - Web proxy and SSL certificate manager
  • Vaultwarden - Lightweight Self-Hosting port of Bitwarden password manager, written in Rust
  • Virtual Desktop - A virtual desktop running on your server
  • Watchtower - Monitor your Docker containers and update them if a new version is available
  • YoutubeDL-Material - Self-hosted YouTube downloader built on Material Design

Preconfigured Application Stacks

Infra application stacks are a number of applications deployed together and preconfigured to perform a common goal.

  • Media - Mount a media server with sonarr, radarr, bazarr, jellyfin, etc.

What This Could Do

Infra can run anything that's in a Docker image, which is why Portainer is included. A server configuration can be 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.

What This Doesn't Do

Infra 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(incoming) for recommended setups.

Installation

Docs to come later

Documentation

Docs to come later

Requirements

  • Infra targets the latest Ubuntu LTS release, which is currently Ubuntu Server 22.04 LTS.
  • You can run Infra on whatever hardware you like, read the docs for more info.

Getting Help

Getting help is easy! You can:

  • Read the docs(to come)
  • Start a discussion
  • Raise an issue if you think you've found a bug

About

Ansible playbook for my server infrastructure, based on ansible-nas.

License:MIT License


Languages

Language:Jinja 93.1%Language:Shell 6.9%