UNPKG

@installdoc/ansible-gas-station

Version:

An Ansible playbook that provisions your network with software from GitHub Awesome lists, developed with disaster recovery in mind ⛽🔥🤤

295 lines (287 loc) 12.3 kB
--- # This is the domain that will be used for all services (e.g. if you access sonarr.home/, you will # be redirected to https://sonarr.home.megabyte.space) base_domain: megabyte.space # This is the subdomain used for services that are intended to be used byother people on your intranet home_subdomain: home # This is the subdomain used for services that are intended to be used by you (the tech guru) lab_subdomain: lab # FQDN of the apt-cacher-ng endpoint apt_cacher_endpoint: 'apt.{{ lab_subdomain }}.{{ base_domain }}' # FQDN of the Healthchecks endpoint (see: https://github.com/healthchecks/healthchecks) healthcheck_endpoint: 'health.{{ base_domain }}' # The theme to inject into the head of certain web apps (note: search for theme_url in this file and # check out https://github.com/gilbN/theme.park) theme_park_theme: aquamarine hosts: adminer: hosts: 'adminer adminer.{{ lab_subdomain }} adminer.{{ lab_subdomain }}.{{ base_domain }}' ip_address: '{{ main_ip_address }}' regexp: '# Adminer' alertmanager: hosts: 'alertmanager alertmanager.{{ lab_subdomain }} alertmanager.{{ lab_subdomain }}.{{ base_domain }}' ip_address: '{{ main_ip_address }}' regexp: '# AlertManager' apt: authelia: false hosts: 'apt aptcacher apt.{{ lab_subdomain }} apt.{{ lab_subdomain }}.{{ base_domain }}' ip_address: '{{ proxy_ip_address }}' regexp: '# AptCacherNG' authelia: # Hosted on controller because authelia can not reside on same machine as double proxy for some reason authelia: false default_server: true hosts: 'auth authelia auth.{{ base_domain }}' ip_address: '{{ controller_ip_address }}' regexp: '# Authelia' awx: hosts: 'awx awx.{{ lab_subdomain }} awx.{{ lab_subdomain }}.{{ base_domain }}' ip_address: '{{ main_ip_address }}' regexp: '# AWX' bazarr: hosts: 'bazarr bazarr.{{ home_subdomain }} bazarr.{{ home_subdomain }}.{{ base_domain }}' ip_address: '{{ home_ip_address }}' regexp: '# Bazarr' theme_url: 'https://gilbn.github.io/theme.park/CSS/themes/bazarr/{{ theme_park_theme }}.css' cockpit: hosts: 'cockpit cockpit.{{ lab_subdomain }} cockpit.{{ lab_subdomain }}.{{ base_domain }}' ip_address: '{{ main_ip_address }}' proxy_file: proxy-ws.conf regexp: '# Cockpit' transport: https code: hosts: 'code code.{{ lab_subdomain }} code.{{ lab_subdomain }}.{{ base_domain }}' ip_address: '{{ main_ip_address }}' proxy_file: proxy-ws.conf regexp: '# CodeServer' consul: hosts: 'consul consul.{{ lab_subdomain }} consul.{{ lab_subdomain }}.{{ base_domain }}' ip_address: '{{ main_ip_address }}' regexp: '# Consul' cups: hosts: 'cups cups.{{ home_subdomain }} printers printers.{{ home_subdomain }} printers.{{ home_subdomain }}.{{ base_domain }}' ip_address: '{{ home_ip_address }}' proxy_file: proxy-cups.conf regexp: '# CUPS' transport: https elastic: authelia: false hosts: 'elastic elastic.{{ lab_subdomain }} elastic.{{ lab_subdomain }}.{{ base_domain }}' ip_address: '{{ main_ip_address }}' regexp: '# ElasticSearch' transport: https grafana: hosts: 'grafana grafana.{{ lab_subdomain }} grafana.{{ lab_subdomain }}.{{ base_domain }}' ip_address: '{{ main_ip_address }}' regexp: '# Grafana' theme_url: 'https://gilbn.github.io/theme.park/CSS/themes/grafana/{{ theme_park_theme }}.css' healthchecks: dns_record: health dns_zone: '{{ base_domain }}' hosts: 'healthchecks health.{{ lab_subdomain }} health.{{ base_domain }}' ip_address: '{{ status_ip_address }}' regexp: '# Healthchecks' heimdall: hosts: 'heimdall heimdall.{{ home_subdomain }} home.{{ base_domain }}' ip_address: '{{ home_ip_address }}' regexp: '# Heimdall' homer: hosts: 'homer homer.{{ lab_subdomain }} {{ lab_subdomain }}.{{ base_domain }}' ip_address: '{{ main_ip_address }}' regexp: '# HomerLab' jackett: hosts: 'jackett jackett.{{ home_subdomain }} jackett.{{ home_subdomain }}.{{ base_domain }}' ip_address: '{{ home_ip_address }}' regexp: '# Jackett' theme_url: 'https://gilbn.github.io/theme.park/CSS/themes/jackett/{{ theme_park_theme }}.css' kibana: authelia: false hosts: 'kibana kibana.{{ lab_subdomain }} kibana.{{ lab_subdomain }}.{{ base_domain }}' ip_address: '{{ main_ip_address }}' regexp: '# Kibana' transport: https kodi: hosts: 'kodi kodi.{{ base_domain }}' ip_address: '{{ home_ip_address }}' regexp: '# Kodi' malaptop: cockpit: true hostname: MALaptop hosts: 'laptop laptop.{{ lab_subdomain }} laptop.{{ lab_subdomain }}.{{ base_domain }}' ip_address: '{{ laptop_ip_address }}' regexp: '# Laptop' librespeed: hosts: 'speedtest speedtest.{{ lab_subdomain }} speedtest.{{ base_domain }}' ip_address: '{{ main_ip_address }}' regexp: '# LibreSpeed' theme_url: 'https://gilbn.github.io/theme.park/CSS/themes/html5speedtest/{{ theme_park_theme }}.css' lidarr: hosts: 'lidarr lidarr.{{ home_subdomain }} lidarr.{{ home_subdomain }}.{{ base_domain }}' ip_address: '{{ home_ip_address }}' regexp: '# Lidarr' theme_url: 'https://gilbn.github.io/theme.park/CSS/themes/lidarr/{{ theme_park_theme }}.css' maas: firewall: true hosts: 'maas maas.{{ lab_subdomain }} maas.{{ lab_subdomain }}.{{ base_domain }}' ip_address: '{{ main_ip_address }}' regexp: '# MAAS' musicbrainz: hosts: 'musicbrainz musicbrainz.{{ home_subdomain }} musicbrainz.{{ home_subdomain }}.{{ base_domain }}' ip_address: '{{ home_ip_address }}' regexp: '# MusicBrainz' netboot: hosts: 'netboot netboot.{{ lab_subdomain }} netboot.{{ lab_subdomain }}.{{ base_domain }}' ip_address: '{{ netboot_ip_address }}' regexp: '# NetbootXYZ' netbootassets: hosts: 'netbootassets netbootassets.{{ lab_subdomain }} netbootassets.{{ lab_subdomain }}.{{ base_domain }}' ip_address: '{{ netboot_ip_address }}' regexp: '# Assets4XYZ' nextcloud: authelia: false hosts: 'nextcloud cloud.{{ base_domain }}' ip_address: '{{ home_ip_address }}' regexp: '# NextCloud' npm: authelia: false hosts: 'npm npm.{{ lab_subdomain }} npm.{{ lab_subdomain }}.{{ base_domain }}' ip_address: '{{ main_ip_address }}' regexp: '# Verdaccio' nuc: cockpit: true hostname: NUC hosts: 'nuc nuc.{{ lab_subdomain }} nuc.{{ lab_subdomain }}.{{ base_domain }}' ip_address: '{{ main_ip_address }}' regexp: '# NUC' nzbget: hosts: 'nzbget nzbget.{{ home_subdomain }} nzbget.{{ home_subdomain }}.{{ base_domain }}' ip_address: '{{ home_ip_address }}' regexp: '# NZBGet' theme_url: 'https://gilbn.github.io/theme.park/CSS/themes/nzbget/{{ theme_park_theme }}.css' ombi: hosts: 'ombi ombi.{{ home_subdomain }} ombi.{{ home_subdomain }}.{{ base_domain }}' ip_address: '{{ home_ip_address }}' regexp: '# Ombi' theme_url: 'https://gilbn.github.io/theme.park/CSS/themes/ombi/{{ theme_park_theme }}.css' organizr: hosts: 'organizr organizr.{{ home_subdomain }} organizr.{{ home_subdomain }}.{{ base_domain }}' ip_address: '{{ home_ip_address }}' regexp: '# Organizr' theme_url: 'https://gilbn.github.io/theme.park/CSS/themes/organizr/{{ theme_park_theme }}.css' pfsense: hosts: 'pfsense pfsense.{{ lab_subdomain }} pfsense.{{ lab_subdomain }}.{{ base_domain }}' ip_address: 10.0.0.1 regexp: '# pfSense' pihole: hostname: PiHole hosts: 'pihole pi.hole dns.{{ home_subdomain }} pihole.{{ home_subdomain }}.{{ base_domain }}' ip_address: 192.168.35.24 regexp: '# PiHole' theme_url: 'https://gilbn.github.io/theme.park/CSS/themes/pi-hole/{{ theme_park_theme }}.css' transport: https plex: hosts: 'plex plex.{{ base_domain }}' ip_address: '{{ home_ip_address }}' regexp: '# Plex' transport: https theme_url: 'https://gilbn.github.io/theme.park/CSS/themes/plex/{{ theme_park_theme }}.css' portainer: hosts: 'portainer portainer.{{ lab_subdomain }} portainer.{{ lab_subdomain }}.{{ base_domain }}' ip_address: '{{ main_ip_address }}' regexp: '# Portainer' theme_url: 'https://gilbn.github.io/theme.park/CSS/themes/portainer/{{ theme_park_theme }}.css' prometheus: hosts: 'prometheus prometheus.{{ lab_subdomain }} prometheus.{{ lab_subdomain }}.{{ base_domain }}' ip_address: '{{ main_ip_address }}' regexp: '# Prometheus' radarr: hosts: 'radarr radarr.{{ home_subdomain }} radarr.{{ home_subdomain }}.{{ base_domain }}' ip_address: '{{ home_ip_address }}' regexp: '# Radarr' theme_url: 'https://gilbn.github.io/theme.park/CSS/themes/radarr/{{ theme_park_theme }}.css' raspi: cockpit: true hostname: Raspi hosts: 'raspi raspi.{{ lab_subdomain }} raspi.{{ lab_subdomain }}.{{ base_domain }}' ip_address: '{{ controller_ip_address }}' regexp: '# RaspiHelper' raspiboot: cockpit: true hostname: RaspiBoot hosts: 'raspiboot raspiboot.{{ lab_subdomain }} raspiboot.{{ lab_subdomain }}.{{ base_domain }}' ip_address: '{{ netboot_ip_address }}' regexp: '# RaspiBoot' raspiproxy: cockpit: true hostname: RaspiProxy hosts: 'raspiproxy raspiproxy.{{ lab_subdomain }} raspiproxy.{{ lab_subdomain }}.{{ base_domain }}' ip_address: '{{ proxy_ip_address }}' regexp: '# RaspiProxy' seconion: hosts: 'seconion seconion.{{ lab_subdomain }} seconion.{{ lab_subdomain }}.{{ base_domain }}' ip_address: 10.14.44.14 regexp: '# Security Onion' sonarr: hosts: 'sonarr sonarr.{{ home_subdomain }} sonarr.{{ home_subdomain }}.{{ base_domain }}' ip_address: '{{ home_ip_address }}' regexp: '# Sonarr' theme_url: 'https://gilbn.github.io/theme.park/CSS/themes/sonarr/{{ theme_park_theme }}.css' stackedit: hosts: 'stackedit stackedit.{{ lab_subdomain }} stackedit.{{ base_domain }}' ip_address: '{{ main_ip_address }}' regexp: '# StackEdit' statping: authelia: false dns_record: status dns_zone: '{{ base_domain }}' hosts: 'statping status.{{ lab_subdomain }} status.{{ base_domain }}' ip_address: '{{ status_ip_address }}' regexp: '# StatPing' statuscheck: cockpit: true dns_record: statuscheck dns_zone: '{{ base_domain }}' hostname: StatusCheck hosts: 'statuscheck statuscheck.{{ lab_subdomain }} statuscheck.{{ base_domain }}' ip_address: '{{ status_ip_address }}' regexp: '# StatusCheck' tautulli: hosts: 'tautulli tautulli.{{ home_subdomain }} tautulli.{{ home_subdomain }}.{{ base_domain }}' ip_address: '{{ home_ip_address }}' regexp: '# Tautulli' theme_url: 'https://gilbn.github.io/theme.park/CSS/themes/tautulli/{{ theme_park_theme }}.css' thelounge: hosts: 'chat lounge chat.{{ lab_subdomain }} lounge.{{ lab_subdomain }} chat.{{ base_domain }}' ip_address: '{{ main_ip_address }}' regexp: '# The Lounge' theme_url: 'https://gilbn.github.io/theme.park/CSS/themes/thelounge/{{ theme_park_theme }}.css' transmission: hosts: 'transmission transmission.{{ home_subdomain }} transmission.{{ home_subdomain }}.{{ base_domain }}' ip_address: '{{ home_ip_address }}' regexp: '# Transmission' theme_url: 'https://gilbn.github.io/theme.park/CSS/themes/transmission/{{ theme_park_theme }}.css' unifihome: authelia: false hosts: 'unifihome unifi.{{ home_subdomain }} unifi.{{ home_subdomain }}.{{ base_domain }}' ip_address: '{{ main_ip_address }}' regexp: '# UniFi Home' transport: https unifilab: authelia: false hosts: 'unifilab unifi.{{ lab_subdomain }} unifi.{{ lab_subdomain }}.{{ base_domain }}' ip_address: '{{ controller_ip_address }}' regexp: '# UniFi Lab' transport: https vault: hosts: 'vault vault.{{ lab_subdomain }} vault.{{ lab_subdomain }}.{{ base_domain }}' ip_address: '{{ main_ip_address }}' regexp: '# Vault' workstation: cockpit: true hostname: Workstation hosts: 'workstation workstation.{{ lab_subdomain }} workstation.{{ lab_subdomain }}.{{ base_domain }} work.{{ lab_subdomain }}.{{ base_domain }}' ip_address: '{{ home_ip_address }}' regexp: '# Workstation' rc1918_networks: - 10.0.0.0/8 - 172.16.0.0/12 - 192.168.0.0/16