Skip to content

Commit

Permalink
add jellyseerr contianer
Browse files Browse the repository at this point in the history
  • Loading branch information
ahembree committed Nov 18, 2024
1 parent 18123f7 commit fd4d761
Show file tree
Hide file tree
Showing 7 changed files with 79 additions and 4 deletions.
11 changes: 11 additions & 0 deletions .github/extra-vars.yml
Original file line number Diff line number Diff line change
Expand Up @@ -334,5 +334,16 @@
"authentik_provider_type": "proxy",
"expose_to_public": false,
},
"jellyseerr": {
"enabled": true,
"proxy_host_rule": jellyseerr,
"directory": true,
"traefik": true,
"authentik": false,
"authentik_provider_type": proxy,
"expose_to_public": false,
"homepage": true,
"homepage_stats": false,
}
}
}
1 change: 1 addition & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -36,6 +36,7 @@ Ansible Playbook to setup an automated Home Media Server stack running on Docker
- [Prowlarr](https://github.com/Prowlarr/Prowlarr): tracker management
- [Readarr](https://github.com/Readarr/Readarr): ebook management
- [Overseerr](https://github.com/sct/overseerr): request platform
- [Jellyseerr](https://github.com/Fallenbagel/jellyseerr): request platform with Jellyfin and Emby support
- [Requestrr](https://github.com/thomst08/requestrr): chat client for requests
- [Calibre](https://github.com/linuxserver/docker-calibre): ebook management
- [Tdarr](https://github.com/HaveAGitGat/Tdarr): media transcoding
Expand Down
1 change: 1 addition & 0 deletions docs/Container Map.md
Original file line number Diff line number Diff line change
Expand Up @@ -52,5 +52,6 @@ If you choose to expose the container ports on the host (by setting `container_e
| tinyMediaManager | ☐ | `tmm` | `5900`, `4000` | `5900`, `4000` | ☑ |
| PASTA | ☐ | `pasta` | `8085` | `80` | ☑ |
| Wizarr | ☐ | `wizarr` | `5690` | `5690` | ☑ |
| Jellyseerr | ☑ | `jellyseerr` | `5056` | `5055` | ☑ |

If both Jellyfin and Emby are enabled, then Emby will be available on ports `8097` and `8921` (if ports are being exposed for both)
2 changes: 1 addition & 1 deletion hms-docker.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
become: yes
gather_facts: yes
vars:
hmsd_current_version: 1.5
hmsd_current_version: 1.5.1
hmsd_version_file: "{{ hms_docker_data_path }}/.hmsd-version"
regex: '[^A-Za-z0-9._-]'
replace: '_'
Expand Down
13 changes: 10 additions & 3 deletions roles/hmsdocker/defaults/main/container_map.yml
Original file line number Diff line number Diff line change
Expand Up @@ -78,6 +78,16 @@ hms_docker_container_map:
expose_to_public: no
homepage: yes
homepage_stats: no
jellyseerr:
enabled: no
proxy_host_rule: jellyseerr
directory: yes
traefik: yes
authentik: no
authentik_provider_type: proxy
expose_to_public: no
homepage: yes
homepage_stats: no
prowlarr:
enabled: yes
proxy_host_rule: prowlarr
Expand Down Expand Up @@ -311,6 +321,3 @@ hms_docker_container_map:
authentik: no
authentik_provider_type: proxy
expose_to_public: no



48 changes: 48 additions & 0 deletions roles/hmsdocker/templates/containers/jellyseerr.yml.j2
Original file line number Diff line number Diff line change
@@ -0,0 +1,48 @@
services:
jellyseerr:
image: fallenbagel/jellyseerr:latest
container_name: jellyseerr
restart: ${RESTART_POLICY}
logging:
options:
max-size: "12m"
max-file: "5"
driver: json-file
networks:
- proxy_net
environment:
- LOG_LEVEL=info
- PUID=${PUID}
- PGID=${PGID}
- TZ=${TIMEZONE}
{% if hmsdocker_traefik_enabled_jellyseerr or hmsdocker_homepage_enabled_jellyseerr %}
labels:
{% if hmsdocker_traefik_enabled_jellyseerr %}
- traefik.enable=true
- traefik.http.services.jellyseerr-${COMPOSE_PROJECT}.loadbalancer.server.port=5055
- traefik.http.routers.jellyseerr-${COMPOSE_PROJECT}.rule=Host(`{{ hms_docker_container_map['jellyseerr']['proxy_host_rule'] | default('jellyseerr') }}.${HMSD_DOMAIN}`)
- traefik.http.routers.jellyseerr-${COMPOSE_PROJECT}.middlewares=external-ipallowlist@file
{% if hmsdocker_authentik_enabled_jellyseerr %}
- traefik.http.routers.jellyseerr-${COMPOSE_PROJECT}.middlewares=authentik-proxy-${COMPOSE_PROJECT}-jellyseerr-midware@docker
{% endif %}
{% endif %}
{% if hmsdocker_homepage_enabled_jellyseerr %}
- homepage.group=Managers
- homepage.name=Jellyseerr
- homepage.icon=jellyseerr.png
- homepage.href=http://{{ hms_docker_container_map['jellyseerr']['proxy_host_rule'] | default('jellyseerr') }}.${HMSD_DOMAIN}
- homepage.description=Request Manager
- homepage.widget.type=jellyseerr
- homepage.widget.url=http://jellyseerr:5055
- homepage.widget.key=${JELLYSEERR_KEY:-apikeyapikeyapikey}
{% if hmsdocker_homepage_stats_enabled_jellyseerr %}
- homepage.showStats=true
{% endif %}
{% endif %}
{% endif %}
volumes:
- ${HMSD_APPS_PATH}/jellyseerr/config:/app/config
{% if hmsdocker_expose_ports_enabled_jellyseerr %}
ports:
- 5056:5055
{% endif %}
7 changes: 7 additions & 0 deletions roles/hmsdocker/vars/main.yml
Original file line number Diff line number Diff line change
Expand Up @@ -43,6 +43,7 @@ hmsdocker_container_enabled_tinymediamanager: "{{ hms_docker_container_map['tiny
hmsdocker_container_enabled_pasta: "{{ hms_docker_container_map['pasta']['enabled'] | default(False) }}"
hmsdocker_container_enabled_netdata: "{{ hms_docker_container_map['netdata']['enabled'] | default(False) }}"
hmsdocker_container_enabled_wizarr: "{{ hms_docker_container_map['wizarr']['enabled'] | default(False) }}"
hmsdocker_container_enabled_jellyseerr: "{{ hms_docker_container_map['jellyseerr']['enabled'] | default(False) }}"


# Traefik computed variables
Expand Down Expand Up @@ -78,6 +79,7 @@ hmsdocker_traefik_enabled_speedtest: "{{ hms_docker_container_map['speedtest-tra
hmsdocker_traefik_enabled_tinymediamanager: "{{ hms_docker_container_map['tinymediamanager']['traefik'] | default(False) and hmsdocker_container_enabled_traefik }}"
hmsdocker_traefik_enabled_pasta: "{{ hms_docker_container_map['pasta']['traefik'] | default(False) and hmsdocker_container_enabled_traefik }}"
hmsdocker_traefik_enabled_wizarr: "{{ hms_docker_container_map['wizarr']['traefik'] | default(False) and hmsdocker_container_enabled_traefik }}"
hmsdocker_traefik_enabled_jellyseerr: "{{ hms_docker_container_map['jellyseerr']['traefik'] | default(False) and hmsdocker_container_enabled_traefik }}"


# Public container exposure computed variables
Expand Down Expand Up @@ -112,6 +114,7 @@ hmsdocker_expose_public_enabled_speedtest: "{{ hms_docker_container_map['speedte
hmsdocker_expose_public_enabled_tinymediamanager: "{{ hms_docker_container_map['tinymediamanager']['expose_to_public'] | default(False) }}"
hmsdocker_expose_public_enabled_pasta: "{{ hms_docker_container_map['pasta']['expose_to_public'] | default(False) }}"
hmsdocker_expose_public_enabled_wizarr: "{{ hms_docker_container_map['wizarr']['expose_to_public'] | default(False) }}"
hmsdocker_expose_public_enabled_jellyseerr: "{{ hms_docker_container_map['jellyseerr']['expose_to_public'] | default(False) }}"


# Container host port mapping computed variables
Expand Down Expand Up @@ -147,6 +150,7 @@ hmsdocker_expose_ports_enabled_speedtest: "{{ True if (container_expose_ports or
hmsdocker_expose_ports_enabled_tinymediamanager: "{{ True if (container_expose_ports or not hmsdocker_container_enabled_traefik or not hmsdocker_traefik_enabled_tinymediamanager) else False }}"
hmsdocker_expose_ports_enabled_pasta: "{{ True if (container_expose_ports or not hmsdocker_container_enabled_traefik or not hmsdocker_traefik_enabled_pasta) else False }}"
hmsdocker_expose_ports_enabled_wizarr: "{{ True if (container_expose_ports or not hmsdocker_container_enabled_traefik or not hmsdocker_traefik_enabled_wizarr) else False }}"
hmsdocker_expose_ports_enabled_jellyseerr: "{{ True if (container_expose_ports or not hmsdocker_container_enabled_traefik or not hmsdocker_traefik_enabled_jellyseerr) else False }}"

# Authentik computed variables
# Controls global authentik variables
Expand Down Expand Up @@ -185,6 +189,7 @@ hmsdocker_authentik_enabled_speedtest: "{{ hms_docker_container_map['speedtest-t
hmsdocker_authentik_enabled_tinymediamanager: "{{ hms_docker_container_map['tinymediamanager']['authentik'] | default(False) and hmsdocker_authentik_enabled_globally and hms_docker_container_map['tinymediamanager']['authentik_provider_type'] == 'proxy' | default(False) }}"
hmsdocker_authentik_enabled_pasta: "{{ hms_docker_container_map['pasta']['authentik'] | default(False) and hmsdocker_authentik_enabled_globally and hms_docker_container_map['pasta']['authentik_provider_type'] == 'proxy' | default(False) }}"
hmsdocker_authentik_enabled_wizarr: "{{ hms_docker_container_map['wizarr']['authentik'] | default(False) and hmsdocker_authentik_enabled_globally and hms_docker_container_map['wizarr']['authentik_provider_type'] == 'proxy' | default(False) }}"
hmsdocker_authentik_enabled_jellyseerr: "{{ hms_docker_container_map['jellyseerr']['authentik'] | default(False) and hmsdocker_authentik_enabled_globally and hms_docker_container_map['jellyseerr']['authentik_provider_type'] == 'proxy' | default(False) }}"


# Homepage
Expand All @@ -208,6 +213,7 @@ hmsdocker_homepage_enabled_jellyfin: "{{ hmsdocker_container_enabled_homepage an
hmsdocker_homepage_enabled_emby: "{{ hmsdocker_container_enabled_homepage and hms_docker_container_map['emby']['homepage'] | default(False) }}"
hmsdocker_homepage_enabled_lidarr: "{{ hmsdocker_container_enabled_homepage and hms_docker_container_map['lidarr']['homepage'] | default(False) }}"
hmsdocker_homepage_enabled_autobrr: "{{ hmsdocker_container_enabled_homepage and hms_docker_container_map['autobrr']['homepage'] | default(False) }}"
hmsdocker_homepage_enabled_jellyseerr: "{{ hmsdocker_container_enabled_homepage and hms_docker_container_map['jellyseerr']['homepage'] | default(False) }}"

# Controls if the container should show stats (CPU, RAM, RX, TX) on Homepage
hmsdocker_homepage_stats_enabled_traefik: "{{ hmsdocker_homepage_enabled_traefik and hms_docker_container_map['traefik']['homepage_stats'] | default(False) }}"
Expand All @@ -229,6 +235,7 @@ hmsdocker_homepage_stats_enabled_jellyfin: "{{ hmsdocker_homepage_enabled_jellyf
hmsdocker_homepage_stats_enabled_emby: "{{ hmsdocker_homepage_enabled_emby and hms_docker_container_map['emby']['homepage_stats'] | default(False) }}"
hmsdocker_homepage_stats_enabled_lidarr: "{{ hmsdocker_homepage_enabled_lidarr and hms_docker_container_map['lidarr']['homepage_stats'] | default(False) }}"
hmsdocker_homepage_stats_enabled_autobrr: "{{ hmsdocker_homepage_enabled_autobrr and hms_docker_container_map['autobrr']['homepage_stats'] | default(False) }}"
hmsdocker_homepage_stats_enabled_jellyseerr: "{{ hmsdocker_homepage_enabled_jellyseerr and hms_docker_container_map['jellyseerr']['homepage_stats'] | default(False) }}"

#######################################################################

Expand Down

0 comments on commit fd4d761

Please sign in to comment.