diff --git a/README.md b/README.md index 74b780a5..954ef6e7 100644 --- a/README.md +++ b/README.md @@ -60,6 +60,7 @@ Ansible config and a bunch of Docker containers. * [MiniDlna](https://sourceforge.net/projects/minidlna/) - simple media server which is fully compliant with DLNA/UPnP-AV clients * [Miniflux](https://miniflux.app/) - An RSS news reader * [Mosquitto](https://mosquitto.org) - An open source MQTT broker +* [Mylar](https://github.com/evilhero/mylar) - An automated Comic Book downloader (cbr/cbz) for use with SABnzbd, NZBGet and torrents * [MyMediaForAlexa](https://www.mymediaalexa.com/) - Lets you stream your music collection to your alexa device * [Netdata](https://my-netdata.io/) - An extremely comprehensive system monitoring solution * [Nextcloud](https://nextcloud.com/) - A self-hosted Dropbox alternative diff --git a/docs/applications/mylar.md b/docs/applications/mylar.md new file mode 100644 index 00000000..4960a11e --- /dev/null +++ b/docs/applications/mylar.md @@ -0,0 +1,16 @@ + +# Mylar + +Homepage: [https://github.com/evilhero/mylar](https://github.com/evilhero/mylar) + +Docker Container: [https://hub.docker.com/r/linuxserver/mylar](https://hub.docker.com/r/linuxserver/mylar) + +An automated Comic Book downloader (cbr/cbz) for use with SABnzbd, NZBGet and torrents + +## Usage + +Set `mylar_enabled: true` in your `inventories//nas.yml` file. + +If you want to access Mylar externally, don't forget to set `mylar_available_externally: "true"` in your `inventories//nas.yml` file. + +The Mylar web interface can be found at http://ansible_nas_host_or_ip:5858. diff --git a/docs/configuration/application_ports.md b/docs/configuration/application_ports.md index 98e44b06..b64f3e67 100644 --- a/docs/configuration/application_ports.md +++ b/docs/configuration/application_ports.md @@ -37,6 +37,7 @@ By default, applications can be found on the ports listed below. | Miniflux | 8070 | | | Mosquitto | 1883 | MQTT | | Mosquitto | 9001 | Websocket | +| Mylar | 8585 | HTTP | | MyMediaForAlexa | 52051 | | | Netdata | 19999 | | | Nextcloud | 8080 | | diff --git a/group_vars/all.yml b/group_vars/all.yml index 25f6fbf2..5012de96 100644 --- a/group_vars/all.yml +++ b/group_vars/all.yml @@ -491,6 +491,17 @@ duplicati_available_externally: "false" duplicati_data_directory: "{{ docker_home }}/duplicati/config" duplicati_port: "8200" +### +### Mylar +### +mylar_available_externally: "false" +mylar_data_directory: "{{ docker_home }}/mylar" +mylar_comics_directory: "{{ comics_root }}" +mylar_downloads_directory: "{{ downloads_root }}" +mylar_port_http: "8585" +mylar_user_id: "0" +mylar_group_id: "0" + ### ### Sonarr ### diff --git a/nas.yml b/nas.yml index 3171837a..7ac03a24 100644 --- a/nas.yml +++ b/nas.yml @@ -80,6 +80,10 @@ when: (thelounge_enabled | default(False)) tags: thelounge + - import_tasks: tasks/mylar.yml + when: (mylar_enabled | default(False)) + tags: mylar + - import_tasks: tasks/sonarr.yml when: (sonarr_enabled | default(False)) tags: sonarr diff --git a/tasks/mylar.yml b/tasks/mylar.yml new file mode 100644 index 00000000..e4108a8e --- /dev/null +++ b/tasks/mylar.yml @@ -0,0 +1,30 @@ +--- +- name: Create Mylar Directory + file: + path: "{{ item }}" + state: directory + with_items: + - "{{ mylar_data_directory }}/config" + +- name: Mylar + docker_container: + name: mylar + image: linuxserver/mylar + pull: true + volumes: + - "{{ mylar_comics_directory }}:/comics:rw" + - "{{ mylar_downloads_directory }}:/downloads:rw" + - "{{ mylar_data_directory }}/config:/config:rw" + ports: + - "{{ mylar_port_http }}:8090" + env: + TZ: "{{ ansible_nas_timezone }}" + PUID: "{{ mylar_user_id }}" + PGID: "{{ mylar_group_id }}" + restart_policy: unless-stopped + memory: 1g + labels: + traefik.backend: "mylar" + traefik.frontend.rule: "Host:mylar.{{ ansible_nas_domain }}" + traefik.enable: "{{ mylar_available_externally }}" + traefik.port: "{{ mylar_port_http }}" diff --git a/templates/traefik/traefik.toml b/templates/traefik/traefik.toml index e20a55a2..1ac2512b 100644 --- a/templates/traefik/traefik.toml +++ b/templates/traefik/traefik.toml @@ -200,6 +200,7 @@ onDemand = false # create certificate when container is created "joomla.{{ ansible_nas_domain }}", "krusader.{{ ansible_nas_domain }}", "lidarr.{{ ansible_nas_domain }}", + "mylar.{{ ansible_nas_domain }}", "miniflux.{{ ansible_nas_domain }}", "netdata.{{ ansible_nas_domain }}", "nextcloud.{{ ansible_nas_domain }}",