E0861: Migrando Plex de instalación nativa a Docker
Un movimiento más fácil de lo que esperaba.
A raiz del comentario de un oyente en Mastodon, me animé a intentar la migración de mi servidor de contenidos Plex desde la instalación nativa en Synology a Docker. Un movimiento al que le tenía mucho miedo, pero que ha acabado siendo bastante fácil de hacer.
Docker Compose utilizado:
plex:
image: linuxserver/plex:latest
container_name: Plex
hostname: Plex
network_mode: host
restart: unless-stopped
security_opt:
- no-new-privileges:true
environment:
- PUID=XXXX #usuario plex
- PGID=XXXX
- UMASK=022
- VERSION=docker
- TZ=Europe/Madrid
- PLEX_CLAIM= #Código claim, sólo para la primera vez (ir a plex.tv/claim)
volumes:
- /volume1/docker/plex:/config:rw
- /volume1/docker/plex/transcode:/transcode:rw
- /volume1/Multimedia:/volume1/Multimedia
devices:
- /dev/dri:/dev/dri #Driver para el transcoding HW
healthcheck:
test: wget --no-verbose --tries=1 --spider http://<IP de Plex>:32400/web
Pasos a seguir:
- Configurar en el Compose el mismo usuario que estamos usando para ejecutar Plex nativo.
- Configurar en el Compose exactamente las mismas rutas que antes para los archivos multimedia:
- Plex en Docker tiene que ver las mismas rutas que veía el nativo.
- Esto hace que no se desconfiguren las carpetas de las bibliotecas.
- Si tenemos un NAS que permite transcoding por HW:
- Añadir el "device" correspondiente y darle permisos 777.
- Programar un script para que se le den estos permisos cada vez que arranca el NAS porque no es un cambio persistente: "sudo chmod 777 /dev/dri /dev/dri/card0 /dev/dri/renderD128"
- Levantar el contenedor Plex como si quisiésemos levantar un Plex nuevo de cero:
- Realizar la breve configuración inicial.
- Esto hará que Plex cree las carpetas que necesita en su directorio de Docker.
- Migrar los metadatos de Plex nativo a Docker:
- Parar el nuevo contenedor Docker.
- Parar la instalación nativa de Plex (se puede hacer desde el centro de paquetes de Synology).
- Borrar completamente la carpeta 'Plex Media Server' que se encuentra dentro de:
/volume1/docker/plex/Library/Application Support
- Copiar la carpeta 'Plex Media Server' de la instalación nativa a la de Docker. Es decir:
- De
/volume1/PlexMediaServer/AppData
- A
/volume1/docker/plex/Library/Application Support
- Es mejor copiar que cortar porque si hay algún problema, siempre podemos volver atrás rápidamente.
- Serán varios gigas de metadatos, así que le llevará un buen rato.
- De
- Arrancar de nuevo el contenedor de Plex y ya estaría todo funcionando de nuevo.
- Verificar que no haya ningún problema de permisos y que los archivos se reproduzcan correctamente. Probar también la transcodificación por HW.
- Tras un par de días verificando que todo funciona correctamente, ya podremos:
- Desinstalar Plex nativo desde el centro de paquetes de Synology.
- Eliminar la carpeta compartida
/volume1/PlexMediaServer
del NAS.