diff --git a/.github/ISSUE_TEMPLATE.md b/.github/ISSUE_TEMPLATE.md index 92ded7c7..17ee2665 100644 --- a/.github/ISSUE_TEMPLATE.md +++ b/.github/ISSUE_TEMPLATE.md @@ -13,8 +13,9 @@ Enter a couple of lines about the issue. - Ansible-NAS kernel (`cat /etc/lsb-release` on the Ansible-NAS box): - Ansible-NAS Python version (`python --version` on the Ansible-NAS box): - Ansible-NAS Docker version (`docker --version` on the Ansible-NAS box): -- Vagrant version, if testing (`vagrant --version`) +- Latest Docker logs (`journalctl -u docker.service` on the Ansible-NAS box): - Are you running the playbook from a remote box or the Ansible-NAS box itself? +- Vagrant version, if testing (`vagrant --version`) **Expected behavior** diff --git a/README.md b/README.md index 579fd798..e24c5f44 100644 --- a/README.md +++ b/README.md @@ -37,6 +37,7 @@ just a stock Ubuntu install, some clever Ansible config and a bunch of Docker co * [Guacamole](https://guacamole.apache.org/) - Web based remote desktop gateway, supports VNC, RDP and SSH * [Heimdall](https://heimdall.site/) - Home server dashboard * [InfluxDB](https://github.com/influxdata/influxdb) - Time series database used for stats collection +* [Jackett](https://github.com/Jackett/Jackett) - API Support for your favorite torrent trackers * [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 * [MyMediaForAlexa](https://www.mymediaalexa.com/) - Lets you stream your music collection to your alexa device diff --git a/docs/applications/jackett.md b/docs/applications/jackett.md new file mode 100644 index 00000000..216ff4d7 --- /dev/null +++ b/docs/applications/jackett.md @@ -0,0 +1,11 @@ +# jackett + +Homepage: [https://github.com/Jackett/Jackett](https://github.com/Jackett/Jackett) + +Jackett works as a proxy server: it translates queries from apps (Sonarr, Radarr, SickRage, CouchPotato, Mylar, DuckieTV, qBittorrent, Nefarious etc) into tracker-site-specific http queries, parses the html response, then sends results back to the requesting software. This allows for getting recent uploads (like RSS) and performing searches. Jackett is a single repository of maintained indexer scraping & translation logic - removing the burden from other apps. + +## Usage + +Set `jackett: true` in your `group_vars/all.yml` file. + +The jackett web interface can be found at http://ansible_nas_host_or_ip:9117. diff --git a/docs/configuration/application_ports.md b/docs/configuration/application_ports.md index 183ed6fd..0917bb30 100644 --- a/docs/configuration/application_ports.md +++ b/docs/configuration/application_ports.md @@ -15,6 +15,7 @@ By default, applications can be found on the ports listed below. | Grafana | 3000 | | | Guacamole | 8090 | | | Heimdall | 10080 | | +| Jackett | 9117 | | | MiniDLNA | 8201 | | | Miniflux | 8070 | | | MyMediaForAlexa | 52051 | | diff --git a/docs/index.md b/docs/index.md index 55662e43..22f84dc1 100644 --- a/docs/index.md +++ b/docs/index.md @@ -1,6 +1,8 @@ ![Ansible-NAS Logo](https://raw.githubusercontent.com/davestephens/ansible-nas/master/misc/ansible-nas.png "Ansible-NAS Logo") -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. Ansible-NAS was born! +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. Ansible-NAS was born! ## Features @@ -20,7 +22,9 @@ After getting burned by broken FreeNAS updates one too many times, I figured I c ## Getting Started -Head to [installation](installation.md) if you're ready to roll, or -[testing](testing.md) if you want to spin up a test VM first. If this is all -very confusing, there is also an [overview](overview.md) of the project and what -is required for complete beginners. +Head to [installation](installation.md) if you're ready to roll, or to +[testing](testing.md) if you want to spin up a test Virtual Machine first. Once +you're done, check out the [post-installation](post_installation.md) steps. + +If this is all very confusing, there is also an [overview](overview.md) of the +project and what is required for complete beginners. diff --git a/docs/post_installation.md b/docs/post_installation.md new file mode 100644 index 00000000..41e80f25 --- /dev/null +++ b/docs/post_installation.md @@ -0,0 +1,29 @@ +So you've installed Ansible-NAS. Now what? + +The first thing to do is to configure [Heimdall](https://heimdall.site/) as the +dashboard of your new NAS, because most of the applications included come with a +web interface. Heimdall lets you create "apps" for them which appear as little +icons on the screen. + +To add applications to Heimdall, you'll need the IP address of your NAS. If you +don't know it for some reason, you will have to look up using the console with +`ip a`. The entry "link/ether", usually the second one after the loopback +device, will show the address. Another alternative is to make sure +[Avahi](https://www.avahi.org/) is installed for zero-configuration networking +(mDNS). This will allow you to `ssh` into your NAS and with the extension +`.local` to your machines name, such as `ssh tardis.local`. Then you can use the +`ip a` command again. + +Next, you need the application's port, which you can look up in the [list of +ports](application_ports.md). You can test the combination of address and port +in your browser by typing them joined by a colon. For instance, for Glances on a +machine with the IPv4 address 192.168.1.2, the full address would be +`http://192.168.1.2:61208`. Once you are sure it works, use this address and +port combination when creating the Heimdall icon. + +[Glances](https://nicolargo.github.io/glances/) and +[Portainer](https://www.portainer.io/) are probably the two applications you +want to add to Heimdall first, so you can see what is happening on the NAS. +Note that Portainer will ask for your admin password. After that, it depends on +what you have installed - see the listing for individual applications for more +information. diff --git a/group_vars/all.yml.dist b/group_vars/all.yml.dist index c2a0e8b5..e15dfa71 100644 --- a/group_vars/all.yml.dist +++ b/group_vars/all.yml.dist @@ -31,6 +31,7 @@ sickrage_enabled: false couchpotato_enabled: false radarr_enabled: false get_iplayer_enabled: false +jackett_enabled: false # Music airsonic_enabled: false @@ -443,3 +444,8 @@ get_iplayer_download_directory: "{{ tv_root }}/iplayer_downloads" ### mymediaforalexa_media_directory: "{{ music_root }}" mymediaforalexa_data_directory: "{{ docker_home }}/mymediaforalexa" + +### +### jackett +### +jackett_data_directory: "{{ docker_home }}/jackett" diff --git a/nas.yml b/nas.yml index b3453021..ccb85447 100644 --- a/nas.yml +++ b/nas.yml @@ -131,7 +131,10 @@ when: (get_iplayer_enabled | default(False)) tags: get_iplayer - - import_tasks: tasks/mymediaforalexa.yml when: (mymediaforalexa_enabled | default(False)) - tags: mymediaforalexa \ No newline at end of file + tags: mymediaforalexa + + - import_tasks: tasks/jackett.yml + when: (jackett_enabled | default(False)) + tags: jackett diff --git a/tasks/jackett.yml b/tasks/jackett.yml new file mode 100644 index 00000000..892de250 --- /dev/null +++ b/tasks/jackett.yml @@ -0,0 +1,21 @@ +--- +- name: Create jackett Directories + file: + path: "{{ item }}" + state: directory + with_items: + - "{{ jackett_data_directory }}" + +- name: jackett + docker_container: + name: jackett + image: linuxserver/jackett + volumes: + - "{{ jackett_data_directory }}:/config:rw" + - "/etc/localtime:/etc/localtime:ro" + - "{{ torrents_root }}:/downloads" + ports: + - "9117:9117" + env: + TZ: "{{ ansible_nas_timezone }}" + restart_policy: unless-stopped \ No newline at end of file diff --git a/tests/test.yml b/tests/test.yml index 6a09a182..a9a8f3f2 100644 --- a/tests/test.yml +++ b/tests/test.yml @@ -31,6 +31,7 @@ sickrage_enabled: false couchpotato_enabled: false radarr_enabled: false get_iplayer_enabled: false +jackett_enabled: false # Music airsonic_enabled: false @@ -443,3 +444,8 @@ get_iplayer_download_directory: "{{ tv_root }}/iplayer_downloads" ### mymediaforalexa_media_directory: "{{ music_root }}" mymediaforalexa_data_directory: "{{ docker_home }}/mymediaforalexa" + +### +### jackett +### +jackett_data_directory: "{{ docker_home }}/jackett"