Español

What is Jellyfin?

Jellyfin is an open-source media server that allows you to organize and stream local video and audio files to client devices (Smart TVs, smartphones, web browsers, etc.). Unlike proprietary options like Plex, it is completely free and requires no subscriptions to unlock features.

Key Features:

  • Playback persistence: Saves video progress and synchronizes status across devices.
  • Metadata management: Automatically downloads covers, synopses, and data from providers like IMDb or TMDb.
  • Cross-platform: Official clients are available for most operating systems and Smart TVs.

ℹ️ For user management or advanced transcoding configurations, please refer to the official Jellyfin documentation..

Installation:

Open your docker-compose file and paste the following:

  # Jellyfin
  jellyfin:
    image: jellyfin/jellyfin:latest
    container_name: jellyfin
    user: 1000:1000
    network_mode: "host"
    restart: unless-stopped
    volumes:
      - /your-docker-folder/jellyfin/config:/config
      - /your-docker-folder/jellyfin/cache:/cache
      - /mnt/external/Media:/media
    environment:
      - JELLYFIN_PublishedServerUrl=http://SERVER_IP

Cosas a cambiar:

In volumes: we need to provide at least 3 important paths. Point to the directory where your container will be installed, and inside that folder, create the respective config and cache folders, which will handle volume persistence. In JELLYFIN_PublishedServerUrl= write http:// followed by your server’s IP. This will allow you to access Jellyfin via the web.

How to use it

Once the service is up and running (docker compose up -d), you can access the administration and playback interface:

  • Vía web: Enter http://SERVER_IP:8096 into your browser.
  • Client apps: In your Smart TV or mobile device app, enter the same URL to connect to the server.

If you are using Tailscale as we saw earlier, you can access it from outside your local network by replacing the local IP with the IP assigned to your server in Tailscale.