Setting Up Jellyfin with Docker
Introduction
Jellyfin is a free, open-source media server software that allows you to manage and stream your media files across devices. This guide walks you through setting up Jellyfin using Docker, with a focus on integrating your media stored on a network-attached storage (NAS) using SMB/CIFS shares.
Prerequisites
Before proceeding, make sure you have the following:
- Docker installed on your system.
- Network Share (NAS) configured with SMB/CIFS access.
- Jellyfin Image: The official Docker image for Jellyfin.
Setting Up Jellyfin with Docker
Start by creating the docker-compose.yml
file with the following configuration:
services:
jellyfin:
image: jellyfin/jellyfin:latest
container_name: "jellyfin"
ports:
- 8096:8096
volumes:
- ./config:/config
- ./cache:/cache
- nas-share:/media:ro
restart: unless-stopped
volumes:
nas-share:
driver_opts:
type: cifs
o: "username=administrator,password=********"
device: "//2k22-host/bucket/documents/"
Note: Sensitive data such as passwords have been masked for security.
Explanation of Configuration
- Ports: Jellyfin runs on port
8096
by default. - Volumes: The configuration and cache directories are mapped to local directories. The media files are accessed via an SMB/CIFS share, mounted using the
cifs
driver. driver_opts
: These options configure the SMB/CIFS share. Make sure to replace thedevice
path and credentials with your actual NAS share details.
Running Jellyfin
To start Jellyfin, run the following command:
docker-compose up -d
This will spin up the Jellyfin container and make your media server available on the configured port.
Accessing Jellyfin
Once the container is running, you can access Jellyfin by navigating to http://<your-ip>:8096
in your web browser. You'll be prompted to complete the initial setup, where you can configure your media libraries and other settings.
Working with SMB/CIFS Shares
To ensure Jellyfin has access to your media files on the NAS, make sure the SMB/CIFS share is properly configured and accessible from the Docker container. The following resources may help with troubleshooting and additional setup:
Resources and References
- Jellyfin Docker Installation Guide
- Jellyfin Networking Documentation
- Jellyfin Docker for Dummies
- Mounting Windows Shared Folder to Docker Container
Conclusion
By following this guide, you have set up a Jellyfin media server using Docker, allowing you to stream your media files across devices. The configuration leverages SMB/CIFS shares for easy access to media stored on a NAS. For future expansion, consider integrating Jellyfin with other media services or exploring additional plugins and customization options.