Merge branch 'youtubedl-material-add' of https://github.com/bcurran3/ansible-nas into bcurran3-youtubedl-material-add

* 'youtubedl-material-add' of https://github.com/bcurran3/ansible-nas:
  fix subscriptions variable use
  fix spelling error
  change default dl location
  youtubedl-material add
  youtubedl-material add
  youtubedl-material add
  youtubedl-material add
  youtubedl-material add
  youtubedl-material add
  youtubedl-material add
This commit is contained in:
David Stephens 2020-05-10 14:25:33 +01:00
commit 7082f97dab
7 changed files with 73 additions and 0 deletions

View file

@ -84,6 +84,7 @@ Ansible config and a bunch of Docker containers.
* [Virtual Desktop](https://github.com/RattyDAVE/docker-ubuntu-xrdp-mate-custom) - A virtual desktop running on your NAS. * [Virtual Desktop](https://github.com/RattyDAVE/docker-ubuntu-xrdp-mate-custom) - A virtual desktop running on your NAS.
* [Wallabag](https://wallabag.org/) - Save and classify articles. Read them later. * [Wallabag](https://wallabag.org/) - Save and classify articles. Read them later.
* [Watchtower](https://github.com/v2tec/watchtower) - Monitor your Docker containers and update them if a new version is available * [Watchtower](https://github.com/v2tec/watchtower) - Monitor your Docker containers and update them if a new version is available
* [YouTubeDL-Material](https://ytdl-org.github.io/youtube-dl) - Self-hosted YouTube downloader built on Material Design
* [ZNC](https://wiki.znc.in/ZNC) - IRC bouncer to stay connected to favourite IRC networks and channels * [ZNC](https://wiki.znc.in/ZNC) - IRC bouncer to stay connected to favourite IRC networks and channels
## What This Could Do ## What This Could Do

View file

@ -0,0 +1,18 @@
# YouTubeDL-Material
Homepage: [https://ytdl-org.github.io/youtube-dl/](https://ytdl-org.github.io/youtube-dl/)
Docker Container: [https://github.com/Tzahi12345/YoutubeDL-Material](https://github.com/Tzahi12345/YoutubeDL-Material)
YoutubeDL-Material is a Material Design frontend for youtube-dl. It's coded using Angular 9 for the frontend, and Node.js on the backend.
## Usage
Set `youtubedlmaterial_enabled: true` in your `inventories/<your_inventory>/nas.yml` file.
The YouTubeDL-Material web interface can be found at http://ansible_nas_host_or_ip:8998.
## Specific Configuration
A YouTube directory will be created in your configured downloads spot. YouTubeDL-Material downloads will be placed there.
You can change the download location via `inventories/<your_inventory>/nas.yml` file.

View file

@ -63,4 +63,5 @@ By default, applications can be found on the ports listed below.
| Ubooquity | 2202 | | | Ubooquity | 2202 | |
| Ubooquity | 2203 | Admin | | Ubooquity | 2203 | Admin |
| Wallabag | 7780 | | | Wallabag | 7780 | |
| YouTubeDL-Mater | 8998 | HTTP |
| ZNC | 6677 | | | ZNC | 6677 | |

View file

@ -38,6 +38,7 @@ emby_enabled: false
bazarr_enabled: false bazarr_enabled: false
ombi_enabled: false ombi_enabled: false
lidarr_enabled: false lidarr_enabled: false
youtubedlmaterial_enabled: false
# Music # Music
airsonic_enabled: false airsonic_enabled: false
@ -521,6 +522,16 @@ lidarr_user_id: "0"
lidarr_group_id: "0" lidarr_group_id: "0"
lidarr_port: "8686" lidarr_port: "8686"
###
### YouTubeDL-Material
###
youtubedlmaterial_available_externally: "false"
youtubedlmaterial_data_directory: "{{ docker_home }}/youtubedlmaterial"
youtubedlmaterial_dl_audio_directory: "{{ downloads_root }}/complete/youtube/audio"
youtubedlmaterial_dl_video_directory: "{{ downloads_root }}/complete/youtube/video"
youtubedlmaterial_dl_subscriptions_directory: "{{ downloads_root }}/complete/youtube/subscriptions"
youtubedlmaterial_port_http: "8998"
### ###
### Couchpotato ### Couchpotato
### ###

View file

@ -224,6 +224,10 @@
when: (lidarr_enabled | default(False)) when: (lidarr_enabled | default(False))
tags: lidarr tags: lidarr
- import_tasks: tasks/youtubedlmaterial.yml
when: (youtubedlmaterial_enabled | default(False))
tags: youtubedlmaterial
- import_tasks: tasks/serposcope.yml - import_tasks: tasks/serposcope.yml
when: (serposcope_enabled | default(False)) when: (serposcope_enabled | default(False))
tags: serposcope tags: serposcope

View file

@ -0,0 +1,37 @@
---
- name: YouTubeDL-Material Directory
file:
path: "{{ item }}"
state: directory
with_items:
- "{{ youtubedlmaterial_data_directory }}/appdata"
- "{{ youtubedlmaterial_data_directory }}/audio"
- "{{ youtubedlmaterial_data_directory }}/video"
- "{{ youtubedlmaterial_data_directory }}/subscriptions"
- "{{ youtubedlmaterial_dl_audio_directory }}"
- "{{ youtubedlmaterial_dl_video_directory }}"
- "{{ youtubedlmaterial_dl_subscriptions_directory }}"
- name: YouTubeDL-Material Docker Container
docker_container:
name: youtubedlmaterial
image: tzahi12345/youtubedl-material:latest
pull: true
volumes:
- "{{ youtubedlmaterial_data_directory }}/appdata:/app/appdata:rw"
- "{{ youtubedlmaterial_dl_audio_directory }}:/app/audio:rw"
- "{{ youtubedlmaterial_dl_video_directory }}:/app/video:rw"
- "{{ youtubedlmaterial_dl_subscriptions_directory }}:/app/subscriptions:rw"
ports:
- "{{ youtubedlmaterial_port_http }}:17442"
env:
ALLOW_CONFIG_MUTATIONS: "true"
TZ: "{{ ansible_nas_timezone }}"
restart_policy: always
labels:
traefik.backend: "youtubedlmaterial"
traefik.frontend.rule: "Host:youtubedlmaterial.{{ ansible_nas_domain }}"
traefik.enable: "{{ youtubedlmaterial_available_externally }}"
traefik.port: "17442"
memory: 1g

View file

@ -220,4 +220,5 @@ onDemand = false # create certificate when container is created
"transmission-openvpn.{{ ansible_nas_domain }}", "transmission-openvpn.{{ ansible_nas_domain }}",
"ubooquity.{{ ansible_nas_domain }}", "ubooquity.{{ ansible_nas_domain }}",
"wallabag.{{ ansible_nas_domain }}", "wallabag.{{ ansible_nas_domain }}",
"youtubedlmaterial.{{ ansible_nas_domain }}",
"znc.{{ ansible_nas_domain }}"] "znc.{{ ansible_nas_domain }}"]