Ir al contenido
Jellyfin con Podman en CachyOS

Jellyfin con Podman en CachyOS

·456 palabras·3 mins
Graplo
Autor
Graplo
Usuario de CachyOS. Le gusta el terminal y contribuye con el open source y del tema favoríto Dracula.

Jellyfin está disponible como Flatpak, pero tiene un demonio que queda corriendo en background. Con Podman podés correrlo solo cuando lo necesitás, sin servicios activos ni overhead innecesario.

Requisitos previos
#

Podman debe estar instalado. En CachyOS está en los repos oficiales:

paru -S podman

Por defecto Podman no tiene registros de búsqueda configurados. Para poder buscar y descargar imágenes de Docker Hub, agrega esta línea al inicio de /etc/containers/registries.conf:

sudo helix /etc/containers/registries.conf

Helix es el editor que uso — podés usar cualquier otro: nano, vim, gedit, etc.

unqualified-search-registries = ["docker.io"]

Sin esto, Podman no sabe dónde buscar imágenes por nombre corto y hay que usar el nombre completo del registro en cada comando.

Descargar la imagen
#

podman pull docker.io/jellyfin/jellyfin

Jellyfin tiene imagen oficial en Docker Hub mantenida por su propio equipo. El proceso descarga la imagen y la almacena localmente — no hace falta repetirlo salvo para actualizar.

Crear las carpetas de configuración
#

mkdir -p ~/.config/jellyfin ~/.cache/jellyfin

Jellyfin guarda su configuración y base de datos en ~/.config/jellyfin. El cache va en ~/.cache/jellyfin. Ambas carpetas persisten entre reinicios del contenedor.

Crear el contenedor
#

podman run -d \
  --name jellyfin \
  -p 8096:8096 \
  -v ~/.config/jellyfin:/config \
  -v ~/.cache/jellyfin:/cache \
  -v ~/Música:/media/musica \
  -v ~/Movies:/media/movies \
  docker.io/jellyfin/jellyfin

Este comando solo se ejecuta una vez. Los -v mapean carpetas del sistema al contenedor — la configuración y tu media quedan fuera del contenedor, así que si lo borras no pierdes nada.

El puerto 8096 queda mapeado al mismo puerto del host. Jellyfin es accesible en http://localhost:8096.

Uso diario
#

Una vez creado el contenedor, para arrancarlo y pararlo:

podman start jellyfin
podman stop jellyfin

Para simplificarlo con una función Fish:

function jelly
    if podman ps | grep -q jellyfin
        podman stop jellyfin
        echo "Jellyfin apagado"
    else
        podman start jellyfin
        echo "Jellyfin encendido"
    end
end

Guárdala en ~/.config/fish/functions/jelly.fish y desde cualquier terminal basta con escribir jelly para alternar el estado.

Esta función es específica para Fish shell. Si usás Bash o Zsh, el equivalente sería un alias o función con sintaxis diferente.

Actualizar Jellyfin
#

podman pull docker.io/jellyfin/jellyfin
podman stop jellyfin
podman rm jellyfin
podman run -d \
  --name jellyfin \
  -p 8096:8096 \
  -v ~/.config/jellyfin:/config \
  -v ~/.cache/jellyfin:/cache \
  -v ~/Música:/media/musica \
  -v ~/Movies:/media/movies \
  docker.io/jellyfin/jellyfin

El podman rm solo borra el contenedor, no los volúmenes. Tu configuración y media quedan intactas.

Comandos útiles
#

Para verificar que el contenedor está corriendo:

podman ps

Para ver todas las imágenes descargadas:

podman images

Para ver los logs de Jellyfin si algo falla:

podman logs jellyfin

Estos comandos son básicos en cualquier flujo de trabajo con Podman o Docker. podman ps sin argumentos muestra solo los contenedores activos — podman ps -a muestra todos, incluyendo los detenidos.