mirror of
https://github.com/davestephens/ansible-nas
synced 2025-01-12 03:38:41 +00:00
plexpy -> tautulli
This commit is contained in:
parent
32888a7038
commit
b3da0bd6f9
5 changed files with 55 additions and 37 deletions
12
README.md
12
README.md
|
@ -1,6 +1,6 @@
|
||||||
# Ansible NAS
|
# Ansible NAS
|
||||||
|
|
||||||
After getting burned by broken FreeNAS updates one too many times, I figured I could do a much better job myself using
|
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.
|
just a stock Ubuntu install, some clever Ansible config and a bunch of docker containers.
|
||||||
|
|
||||||
|
|
||||||
|
@ -24,7 +24,7 @@ just a stock Ubuntu install, some clever Ansible config and a bunch of docker co
|
||||||
- [InfluxDB](https://github.com/influxdata/influxdb) - Time series database used for stats collection
|
- [InfluxDB](https://github.com/influxdata/influxdb) - Time series database used for stats collection
|
||||||
- [Nextcloud](https://nextcloud.com/) - A self-hosted Dropbox alternative
|
- [Nextcloud](https://nextcloud.com/) - A self-hosted Dropbox alternative
|
||||||
- [Plex](https://www.plex.tv/) Plex Media Server
|
- [Plex](https://www.plex.tv/) Plex Media Server
|
||||||
- [Plexpy](http://tautulli.com/) Monitor Your Plex Media Server
|
- [Tautulli](http://tautulli.com/) Monitor Your Plex Media Server
|
||||||
- [Portainer](https://portainer.io/) for managing Docker and running custom images
|
- [Portainer](https://portainer.io/) for managing Docker and running custom images
|
||||||
- [Radarr](https://radarr.video/) for organising and downloading movies
|
- [Radarr](https://radarr.video/) for organising and downloading movies
|
||||||
- [Sickrage](https://sickrage.github.io/) for managing TV episodes
|
- [Sickrage](https://sickrage.github.io/) for managing TV episodes
|
||||||
|
@ -43,8 +43,8 @@ That said, if specific functionality you want isn't included and you think other
|
||||||
|
|
||||||
## What This Doesn't Do
|
## What This Doesn't Do
|
||||||
|
|
||||||
Ansible NAS doesn't set up your disk partitions, primarily because getting it wrong can be incredibly destructive.
|
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
|
That aside, configuring partitions is usually a one-time (or very infrequent) event, so there's not much to be
|
||||||
gained by automating it.
|
gained by automating it.
|
||||||
|
|
||||||
|
|
||||||
|
@ -59,9 +59,9 @@ Ansible NAS should work on any recent Ubuntu box. Development is done on Ubuntu
|
||||||
1. Enable the Ubuntu Universe repository: `sudo add-apt-repository universe`
|
1. Enable the Ubuntu Universe repository: `sudo add-apt-repository universe`
|
||||||
2. Install Ansible: `sudo apt install ansible`
|
2. Install Ansible: `sudo apt install ansible`
|
||||||
3. `git clone https://github.com/davestephens/ansible-nas.git && cd ansible-nas`
|
3. `git clone https://github.com/davestephens/ansible-nas.git && cd ansible-nas`
|
||||||
4. Copy `group_vars/all.yml.dist` to `group_vars/all.yml`.
|
4. Copy `group_vars/all.yml.dist` to `group_vars/all.yml`.
|
||||||
5. Open up `group_vars/all.yml` and follow the instructions there for configuring your Ansible NAS.
|
5. Open up `group_vars/all.yml` and follow the instructions there for configuring your Ansible NAS.
|
||||||
6. If you plan to use Transmission with OpenVPN, also copy `group_vars/vpn_credentials.yml.dist` to
|
6. If you plan to use Transmission with OpenVPN, also copy `group_vars/vpn_credentials.yml.dist` to
|
||||||
`group_vars/vpn_credentials.yml` and fill in your settings.
|
`group_vars/vpn_credentials.yml` and fill in your settings.
|
||||||
7. Modify `inventory` and update it with the hostname of your NAS box, or use `localhost ansible_connection=local` if you want to run the playbook on the same box you want to use as your ansible-nas.
|
7. Modify `inventory` and update it with the hostname of your NAS box, or use `localhost ansible_connection=local` if you want to run the playbook on the same box you want to use as your ansible-nas.
|
||||||
8. Install the dependent roles: `ansible-galaxy install -r requirements.yml` (you might need sudo to install Ansible roles)
|
8. Install the dependent roles: `ansible-galaxy install -r requirements.yml` (you might need sudo to install Ansible roles)
|
||||||
|
|
|
@ -11,7 +11,7 @@ transmission_enabled: false
|
||||||
|
|
||||||
# Plex
|
# Plex
|
||||||
plex_enabled: false
|
plex_enabled: false
|
||||||
plexpy_enabled: false
|
tautulli_enabled: false
|
||||||
|
|
||||||
|
|
||||||
# Media Sourcing
|
# Media Sourcing
|
||||||
|
@ -138,6 +138,24 @@ transmission_group_id: 0
|
||||||
transmission_local_network: "192.168.1.0/24"
|
transmission_local_network: "192.168.1.0/24"
|
||||||
|
|
||||||
|
|
||||||
|
###
|
||||||
|
### Plex
|
||||||
|
###
|
||||||
|
plex_config_directory: "{{ docker_home }}/plex/config"
|
||||||
|
plex_movies_directory: "{{ movies_root }}"
|
||||||
|
plex_tv_directory: "{{ tv_root }}"
|
||||||
|
plex_user_id: 0
|
||||||
|
plex_group_id: 0
|
||||||
|
|
||||||
|
|
||||||
|
###
|
||||||
|
### Tautulli
|
||||||
|
###
|
||||||
|
tautulli_config_directory: "{{ docker_home }}/tautulli/config"
|
||||||
|
tautulli_user_id: 0
|
||||||
|
tautulli_group_id: 0
|
||||||
|
|
||||||
|
|
||||||
###
|
###
|
||||||
### Duplicati
|
### Duplicati
|
||||||
###
|
###
|
||||||
|
@ -206,7 +224,7 @@ znc_group_id: 0
|
||||||
|
|
||||||
|
|
||||||
###
|
###
|
||||||
### Stats
|
### Stats
|
||||||
###
|
###
|
||||||
telegraf_data_directory: "{{ docker_home }}/telegraf"
|
telegraf_data_directory: "{{ docker_home }}/telegraf"
|
||||||
influxdb_data_directory: "{{ docker_home }}/influxdb"
|
influxdb_data_directory: "{{ docker_home }}/influxdb"
|
||||||
|
|
14
nas.yml
14
nas.yml
|
@ -13,9 +13,9 @@
|
||||||
when: plex_enabled == true
|
when: plex_enabled == true
|
||||||
tags: plex
|
tags: plex
|
||||||
|
|
||||||
- import_tasks: tasks/plexpy.yml
|
- import_tasks: tasks/tautulli.yml
|
||||||
when: plexpy_enabled == true
|
when: tautulli_enabled == true
|
||||||
tags: plexpy
|
tags: tautulli
|
||||||
|
|
||||||
- import_tasks: tasks/transmission.yml
|
- import_tasks: tasks/transmission.yml
|
||||||
when: transmission_enabled == true
|
when: transmission_enabled == true
|
||||||
|
@ -60,7 +60,7 @@
|
||||||
- import_tasks: tasks/stats.yml
|
- import_tasks: tasks/stats.yml
|
||||||
when: stats_enabled == true
|
when: stats_enabled == true
|
||||||
tags: stats
|
tags: stats
|
||||||
|
|
||||||
roles:
|
roles:
|
||||||
- bertvv.samba
|
- bertvv.samba
|
||||||
- geerlingguy.docker
|
- geerlingguy.docker
|
||||||
|
|
|
@ -1,22 +0,0 @@
|
||||||
- name: Create Plexpy Directories
|
|
||||||
file:
|
|
||||||
path: "{{ item }}"
|
|
||||||
state: directory
|
|
||||||
# mode: 0755
|
|
||||||
with_items:
|
|
||||||
- "{{ plexpy_config_directory }}"
|
|
||||||
|
|
||||||
- name: plexpy Docker Container
|
|
||||||
docker_container:
|
|
||||||
name: plexpy
|
|
||||||
image: linuxserver/plexpy
|
|
||||||
pull: true
|
|
||||||
volumes:
|
|
||||||
- "{{ plexpy_config_directory }}:/config:rw"
|
|
||||||
- "/etc/timezone:/etc/timezone:ro"
|
|
||||||
network_mode: "host"
|
|
||||||
env:
|
|
||||||
PUID: "{{ plexpy_user_id }}"
|
|
||||||
PGID: "{{ plexpy_group_id }}"
|
|
||||||
restart_policy: unless-stopped
|
|
||||||
memory: 1g
|
|
22
tasks/tautulli.yml
Normal file
22
tasks/tautulli.yml
Normal file
|
@ -0,0 +1,22 @@
|
||||||
|
- name: Create Tautulli Directories
|
||||||
|
file:
|
||||||
|
path: "{{ item }}"
|
||||||
|
state: directory
|
||||||
|
# mode: 0755
|
||||||
|
with_items:
|
||||||
|
- "{{ tautulli_config_directory }}"
|
||||||
|
|
||||||
|
- name: Tautulli Docker Container
|
||||||
|
docker_container:
|
||||||
|
name: tautulli
|
||||||
|
image: linuxserver/tautulli
|
||||||
|
pull: true
|
||||||
|
volumes:
|
||||||
|
- "{{ tautulli_config_directory }}:/config:rw"
|
||||||
|
- "/etc/timezone:/etc/timezone:ro"
|
||||||
|
network_mode: "host"
|
||||||
|
env:
|
||||||
|
PUID: "{{ tautulli_user_id }}"
|
||||||
|
PGID: "{{ tautulli_group_id }}"
|
||||||
|
restart_policy: unless-stopped
|
||||||
|
memory: 1g
|
Loading…
Reference in a new issue