MasterpieceDockerCompose/jellyfin/README.md

144 lines
4.6 KiB
Markdown
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Jellyfin
<div align="center">
<img src="https://jellyfin.org/images/posts/jellyfin-10-5-0/new-home.jpg" />
</div>
## Descrizione
[![Sito ufficiale](https://img.shields.io/static/v1.svg?color=555555&logoColor=ffffff&logo=firefoxbrowser&style=flat&label=&message=Homepage)](https://jellyfin.org/) [![Sorgente](https://img.shields.io/static/v1.svg?color=555555&logoColor=ffffff&logo=github&style=flat&label=&message=Sorgente)](https://github.com/linuxserver/docker-jellyfin) [![Docker Hub](https://img.shields.io/static/v1.svg?color=555555&logoColor=ffffff&logo=docker&style=flat&label=&message=Docker Hub)](https://hub.docker.com/r/linuxserver/jellyfin) [![Docs](https://img.shields.io/static/v1.svg?color=555555&logoColor=ffffff&logo=readthedocs&style=flat&label=&message=Docs)](https://docs.linuxserver.io/images/docker-jellyfin/) [![Demo](https://img.shields.io/static/v1.svg?color=555555&logoColor=ffffff&logo=jekyll&style=flat&label=&message=Demo)](https://demo.jellyfin.org/ "Login: demo | Password: lasciare vuoto")
Jellyfin è un server per la gestione di film, serie tv e musica:
- Interfaccia web personalizzabile tramite [CSS](https://libredd.it/r/jellyfin/search?q=flair_name%3A%22Custom%20CSS%22&restrict_sr=on)
- Modifica e importazione dei metadati locali, integrati o tramite servizi esterni (IMDb, OMDb, TvDB, etc)
- Multiutente con possiblità di gestione dell'accesso alle librerie (anche singolo)
- [Client ufficiali (e non) multi-piattaforma](https://jellyfin.org/docs/general/clients/index.html)
- [Transcodifica hardware](https://jellyfin.org/docs/general/administration/hardware-acceleration.html)
## Struttura file e cartelle
```
/home/
└── docker/
└── jellyfin/
├── config/
├── data/
├── .env
└── docker-compose.yml
```
- `config/` - cartella dove risiedono i dati che servono a jellyfin
- `data/` - cartella dove vanno messi i film/serie tv/musica
- `.env` - file contenenti le variabili environment per il docker-compose
- `docker-compose.yml` - file usato per creare il container
**N.B. Tutti i file e le cartelle devono essere creati a mano**
## Esempi
Semplice esempio per iniziare ad usare subito il container
### network
`docker`
```bash
docker network create custom-bridge
```
`podman`
```bash
podman network create custom-bridge
```
### docker-compose
`docker-compose.yml`
```yml
version: "3.5"
services:
jellyfin:
container_name: linuxserver-jellyfin
image: lscr.io/linuxserver/jellyfin
security_opt:
- no-new-privileges:true
networks:
- custom-bridge
restart: unless-stopped
ports:
- ${JELLYFIN_SVC_DSC_PORT:-1900}:1900/udp # opzionale, servizio per il DLNA
- ${JELLYFIN_WEBUI_PORT:-8096}:8096
- ${JELLYFIN_CLT_DSC_PORT:-7359}:7359/udp # opzionale, servizio discovery per i client
env_file: .env
volumes:
- ${JELLYFIN_CONFIG:-/home/docker/jellyfin/config}:/config
- ${JELLYFIN_DATA:-/home/docker/jellyfin/data}:/data
devices:
- /dev/dri:/dev/dri # necessario per usare Intel VAAPI video encoding
networks:
custom-bridge:
name: custom-bridge
driver: bridge
```
`.env`
```bash
# Generale
JELLYFIN_SVC_DSC_PORT=1900
JELLYFIN_WEBUI_PORT=8096
JELLYFIN_CLT_DSC_PORT=7359
JELLYFIN_CONFIG=/config
JELLYFIN_DATA=/data
# Jellyfin
TZ=Europe/Amsterdam
# ATTIVARE IN BASE AL PROPRIO HARDWARE E NON ATTIVARE ENTRAMBI, in quanto ne basta uno solo
#DOCKER_MODS=linuxserver/mods:jellyfin-amd # necessario per usare GPU AMD (anche quelle integrate nella CPU)
#DOCKER_MODS=linuxserver/mods:jellyfin-opencl-intel # necessario per usare OpenCL-Intel
```
## Reverse proxy
Vedi [Todo](#Todo)
## Aggiornamento
### Automatico
Usando [watchtower](../watchtower) il container si aggiorna automaticamente
### Manuale
1. `docker-compose up -d`
2. `docker image prune`
## Backup e ripristino
### Backup
Usate [borg](../borg) per fare i backup giornalieri dell'intera cartella `jellyfin`
### Ripristino
Per una maggiore spiegazione sui passaggi da fare, controllate [qua](../borg#user-content-controllare-la-cartella-dei-backup)
1. fermare il container `docker-compose down`
2. cancellare l'intera cartella `jellyfin`
3. dal backup copiare la cartella `jellyfin`
4. far ripartire il container `docker-compose up -d`
## Todo
Implementare:
- reverse proxy: **[caddy](https://caddyserver.com/)** o **[traefik](https://doc.traefik.io/traefik/)**
---
Licenza: [CC BY-SA 4.0](https://creativecommons.org/licenses/by-sa/4.0/legalcode.txt)