# 101 — `jellyfin` Media server: serves the movies / TV / anime / music / audiobooks / podcasts libraries from `/mnt/library` to LAN clients. ## At a glance - **Hostname:** `jellyfin` - **IP:** `192.168.8.206` - **Privilege:** **unprivileged** + idmap (so it can write to the `media` group on `/mnt/library`) - **Resources:** 2 cores / 4 GiB RAM / 16 GiB rootfs - **Mounts:** `/mnt/library` ↔ `/mnt/library` - **Public hostname:** [`media.hubris.network`](../infrastructure/dns.md) → [caddy](121-caddy.md) → `:8096` ## Service / port map | Service | Listen | Notes | | -------- | ------ | ----- | | jellyfin | `:8096` | HTTP (caddy terminates TLS) | ## Permissions Member of the [media GID 10000](../infrastructure/media-permissions.md) standard. Service user `jellyfin` is in the `media` group inside the container; idmap block in `/etc/pve/lxc/101.conf` maps in-container GID 10000 to host GID 10000. ## Related - [Caddy reverse proxy](121-caddy.md) - [Media permissions](../infrastructure/media-permissions.md) - [arriman](122-arriman.md) — \*arr stack writes the libraries jellyfin reads - [DNS split-horizon](../infrastructure/dns.md) ## Changelog ### 2026-04-28 — wiki entry created Initial documentation. No config changes. ### 2026-04-20 — joined the `media` GID 10000 standard Idmap block applied; in-container `media` group at GID 10000 mapped to host GID 10000. See [media permissions](../infrastructure/media-permissions.md). Config backup: `/root/101.conf.bak.*`.