feat: add Plex service deployment and configuration
Some checks failed
Ansible Lint Check / check-ansible (push) Failing after 14s
Nix Format Check / check-format (push) Successful in 54s
Python Lint Check / check-python (push) Failing after 11s

This commit is contained in:
Menno van Leeuwen 2025-03-12 21:52:22 +01:00
parent a516d3f2d7
commit 4e3a28164d
Signed by: vleeuwenmenno
SSH Key Fingerprint: SHA256:OJFmjANpakwD3F2Rsws4GLtbdz1TJ5tkQF0RZmF0TRE
3 changed files with 84 additions and 1 deletions

View File

@ -34,7 +34,9 @@
- name: immich
enabled: true
- name: gitea
enabled: false
enabled: true
- name: plex
enabled: true
when:
- datapool_check is defined
- datapool_check.rc is defined

View File

@ -0,0 +1,48 @@
services:
plex:
image: plexinc/pms-docker:latest
container_name: plex
environment:
- PUID=1000
- PGID=100
- VERSION=docker
- PLEX_CLAIM={{ lookup('community.general.onepassword', 'muemvbrp4f2dnk2jfuy4i6jtd4', vault='j7nmhqlsjmp2r6umly5t75hzb4', field='PLEX_CLAIM') }}
volumes:
- {{plex_data_dir}}/pms_config:/config
- /tmp/plex-transcode:/transcode
- /mnt/object_storage/movies:/movies
- /mnt/object_storage/tvshows:/tvshows
- /mnt/object_storage/music:/music
restart: unless-stopped
ports:
- 32400:32400/tcp
- 3005:3005/tcp
- 8324:8324/tcp
- 32469:32469/tcp
- 32410:32410/udp
- 32412:32412/udp
- 32413:32413/udp
- 32414:32414/udp
networks:
- caddy_network
tautulli:
image: lscr.io/linuxserver/tautulli:latest
container_name: tautulli
environment:
- PUID=1000
- PGID=100
- TZ=Europe/Amsterdam
volumes:
- {{plex_data_dir}}/tautulli_config:/config
ports:
- 8181:8181
restart: unless-stopped
networks:
- caddy_network
networks:
caddy_network:
external: true
name: caddy_default

View File

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