- Docker compose setup with hardware acceleration support - Network host mode for optimal streaming performance - Volume mounts for config, cache, and media directories - Memory limits and resource management - Device access for GPU hardware transcoding - Integration with existing media folder structure 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
53 lines
1.5 KiB
YAML
53 lines
1.5 KiB
YAML
# DEPLOYMENT LOCATION: /opt/docker/jellyfin/docker-compose.yml
|
|
# Deploy with: sudo mkdir -p /opt/docker/jellyfin && sudo cp config/docker/jellyfin/docker-compose.yml /opt/docker/jellyfin/
|
|
# Start with: cd /opt/docker/jellyfin && sudo docker-compose up -d
|
|
|
|
version: "3.8"
|
|
|
|
services:
|
|
jellyfin:
|
|
image: jellyfin/jellyfin:latest
|
|
container_name: jellyfin
|
|
restart: unless-stopped
|
|
|
|
# User and group IDs to match host user (hoborg)
|
|
user: 1000:1000
|
|
|
|
# Environment variables
|
|
environment:
|
|
- JELLYFIN_PublishedServerUrl=https://ak-homelab.duckdns.org/media
|
|
|
|
# Network mode for better performance and hardware acceleration
|
|
network_mode: host
|
|
|
|
# Volume mounts - using same folders as Copyparty
|
|
volumes:
|
|
# Jellyfin configuration and data
|
|
- /opt/docker/jellyfin/config:/config
|
|
- /opt/docker/jellyfin/cache:/cache
|
|
|
|
# Media folders (shared with Copyparty)
|
|
- /home/hoborg/Music:/media/music:ro
|
|
- /home/hoborg/Videos:/media/videos:ro
|
|
- /home/hoborg/shared:/media/shared:ro
|
|
|
|
# Additional media folders if they exist
|
|
# - /home/hoborg/Movies:/media/movies:ro
|
|
# - /home/hoborg/TV:/media/tv:ro
|
|
|
|
# Device access for hardware acceleration (Intel/AMD GPU)
|
|
devices:
|
|
- /dev/dri:/dev/dri
|
|
|
|
# Memory limits for container stability
|
|
deploy:
|
|
resources:
|
|
limits:
|
|
memory: 2G
|
|
reservations:
|
|
memory: 512M
|
|
|
|
# Optional: Create a custom network if not using host networking
|
|
# networks:
|
|
# jellyfin:
|
|
# driver: bridge |