Jellyfin media server management via Podman Quadlet. Supports multi-instance deployment, hardware transcoding (NVIDIA/AMD/Intel), and FUSE filesystem mounts. Use when users need to set up or manage Jellyfin media servers.
/plugin marketplace add atrawog/bazzite-ai-plugins/plugin install atrawog-bazzite-ai-bazzite-ai@atrawog/bazzite-ai-pluginsThis skill inherits all available tools. When active, it can use any tool Claude has access to.
The jellyfin command manages Jellyfin media server instances using Podman Quadlet containers. It supports hardware transcoding and FUSE filesystem compatibility for network mounts.
Key Concept: Multi-instance support allows running multiple media libraries. FUSE compatibility enables rclone/sshfs mounts for cloud or remote storage.
| Action | Command | Description |
|---|---|---|
| Config | ujust jellyfin config <CONFIG> <CACHE> <MEDIA> [N] [GPU] [IMAGE] [WORKSPACE] | Configure instance |
| Start | ujust jellyfin start [N|all] | Start instance(s) |
| Stop | ujust jellyfin stop [N|all] | Stop instance(s) |
| Restart | ujust jellyfin restart [N|all] | Restart instance(s) |
| Logs | ujust jellyfin logs [N] [LINES] | View logs |
| List | ujust jellyfin list | List all instances |
| Status | ujust jellyfin status [N] | Show instance status |
| URL | ujust jellyfin url [N] | Show access URL |
| Shell | ujust jellyfin shell [CMD] [N] | Open shell in container |
| Delete | ujust jellyfin delete [N|all] | Remove instance(s) and images |
ujust jellyfin config <CONFIG> <CACHE> <MEDIA> [INSTANCE] [GPU] [IMAGE] [WORKSPACE]
| Parameter | Required | Description |
|---|---|---|
CONFIG | Yes | Configuration directory |
CACHE | Yes | Cache directory (transcoding) |
MEDIA | Yes | Media library path |
INSTANCE | No | Instance number (default: 1) |
GPU | No | GPU type: nvidia, amd, intel, auto |
IMAGE | No | Container image or tag (default: stable) |
WORKSPACE | No | Optional additional mount to /workspace |
# Basic installation
ujust jellyfin config ~/jellyfin/config ~/jellyfin/cache ~/media 1
# With NVIDIA GPU for transcoding
ujust jellyfin config ~/jellyfin/config ~/jellyfin/cache ~/media 1 nvidia
# Second instance for different library
ujust jellyfin config ~/jellyfin2/config ~/jellyfin2/cache ~/videos 2
# With custom image and workspace
ujust jellyfin config ~/config ~/cache ~/media 1 auto "docker.io/jellyfin/jellyfin:10.8.13" /projects
Running config when already configured will update the existing configuration, preserving values not explicitly changed.
# Interactive bash shell
ujust jellyfin shell
# Run specific command
ujust jellyfin shell "df -h"
# Shell in specific instance
ujust jellyfin shell "ls /media" 2
# Single instance
ujust jellyfin start 1
ujust jellyfin stop 1
# All instances
ujust jellyfin start all
ujust jellyfin stop all
# Follow logs
ujust jellyfin logs 1
# Last N lines
ujust jellyfin logs 1 100
ujust jellyfin url 1
# Output: http://localhost:8096
| Instance | Port |
|---|---|
| 1 | 8096 |
| 2 | 8097 |
| 3 | 8098 |
| N | 8095+N |
| GPU | Flag | Transcoding |
|---|---|---|
| NVIDIA | nvidia | NVENC/NVDEC |
| AMD | amd | VAAPI |
| Intel | intel | QuickSync |
ujust jellyfin config ~/config ~/cache ~/media 1 nvidia
# Check inside container
ujust jellyfin shell
nvidia-smi # or vainfo for AMD/Intel
Jellyfin containers support FUSE mounts (rclone, sshfs) for remote storage.
# Mount cloud storage
rclone mount gdrive:media ~/media --daemon
# Then start Jellyfin
ujust jellyfin start 1
Jellyfin uses host networking for:
| File | Purpose | Location |
|---|---|---|
| Quadlet unit | Service definition | ~/.config/containers/systemd/jellyfin-1.container |
| Instance config | Settings | ~/.config/jellyfin/instance-1.env |
| Jellyfin data | Libraries, users | <CONFIG>/ |
| Transcoding cache | Temp files | <CACHE>/ |
# 1. Create directories
mkdir -p ~/jellyfin/{config,cache}
# 2. Configure Jellyfin
ujust jellyfin config ~/jellyfin/config ~/jellyfin/cache ~/media 1 nvidia
# 3. Start it
ujust jellyfin start 1
# 4. Access web UI
ujust jellyfin url 1
# Open http://localhost:8096
# Movies library
ujust jellyfin config ~/jellyfin-movies/config ~/jellyfin-movies/cache ~/movies 1
# TV library
ujust jellyfin config ~/jellyfin-tv/config ~/jellyfin-tv/cache ~/tv 2
# Start both
ujust jellyfin start all
# 1. Mount cloud storage
rclone mount gdrive:media ~/cloud-media --daemon --vfs-cache-mode writes
# 2. Configure Jellyfin pointing to mount
ujust jellyfin config ~/jellyfin/config ~/jellyfin/cache ~/cloud-media 1
# 3. Start
ujust jellyfin start 1
First-time setup via web UI:
http://localhost:8096Check:
ujust jellyfin status 1
ujust jellyfin logs 1 50
Common causes:
Check:
# View logs for transcoding errors
ujust jellyfin logs 1 | grep -i transcode
Common causes:
Fix:
# Reconfigure with GPU
ujust jellyfin delete 1
ujust jellyfin config ~/config ~/cache ~/media 1 nvidia
Check:
Fix:
# Verify path
ls ~/media
# Reconfigure with correct path
ujust jellyfin delete 1
ujust jellyfin config ~/config ~/cache /correct/path 1
Cause: Network isolation
Jellyfin uses host networking, but ensure:
configure gpu-containers (GPU setup)Use when the user asks about: