feat: add Jellyfin service deployment and configuration
Some checks failed
Python Lint Check / check-python (push) Waiting to run
Ansible Lint Check / check-ansible (push) Failing after 15s
Nix Format Check / check-format (push) Has been cancelled

This commit is contained in:
Menno van Leeuwen 2025-03-13 13:33:06 +01:00
parent 1222ce8752
commit 6c5180d2a5
Signed by: vleeuwenmenno
SSH Key Fingerprint: SHA256:OJFmjANpakwD3F2Rsws4GLtbdz1TJ5tkQF0RZmF0TRE
4 changed files with 70 additions and 0 deletions

View File

@ -37,6 +37,8 @@
enabled: true
- name: plex
enabled: true
- name: jellyfin
enabled: true
when:
- datapool_check is defined
- datapool_check.rc is defined

View File

@ -11,4 +11,9 @@ hoarder.mvl.sh {
git.vleeuwen.me git.mvl.sh {
reverse_proxy gitea:3000
tls {{ caddy_email }}
}
jellyfin.vleeuwen.me jellyfin.mvl.sh {
reverse_proxy jellyfin:8096
tls {{ caddy_email }}
}

View File

@ -0,0 +1,30 @@
services:
jellyfin:
image: lscr.io/linuxserver/jellyfin:latest
container_name: jellyfin
environment:
- PUID=1000
- PGID=100
- TZ=Europe/Amsterdam
- JELLYFIN_PublishedServerUrl=https://jellyfin.vleeuwen.me
volumes:
- {{jellyfin_data_dir}}/jellyfin-config:/config
- /mnt/object_storage/movies:/movies
- /mnt/object_storage/tvshows:/tvshows
- /mnt/object_storage/music:/music
ports:
- 8096:8096
- 8920:8920
- 7359:7359/udp
- 1901:1900/udp
restart: unless-stopped
group_add:
- "992"
- "44"
networks:
- caddy_network
networks:
caddy_network:
external: true
name: caddy_default

View File

@ -0,0 +1,33 @@
---
- name: Deploy Jellyfin service
block:
- name: Set Jellyfin directories
ansible.builtin.set_fact:
jellyfin_data_dir: "/mnt/services/jellyfin"
jellyfin_service_dir: "{{ ansible_env.HOME }}/services/jellyfin"
- name: Create Jellyfin directories
ansible.builtin.file:
path: "{{ jellyfin_dir }}"
state: directory
mode: "0755"
loop:
- "{{ jellyfin_data_dir }}"
- "{{ jellyfin_service_dir }}"
loop_control:
loop_var: jellyfin_dir
- name: Deploy Jellyfin docker-compose.yml
ansible.builtin.template:
src: docker-compose.yml.j2
dest: "{{ jellyfin_service_dir }}/docker-compose.yml"
mode: "0644"
register: jellyfin_compose
- name: Stop Jellyfin service
ansible.builtin.command: docker compose -f "{{ jellyfin_service_dir }}/docker-compose.yml" down --remove-orphans
when: jellyfin_compose.changed
- name: Start Jellyfin service
ansible.builtin.command: docker compose -f "{{ jellyfin_service_dir }}/docker-compose.yml" up -d
when: jellyfin_compose.changed