Installation
Un fichier, une commande. De Rien tourne dans un seul conteneur Docker — aucune base à installer, aucune étape de build, migrations appliquées pour toi au premier démarrage.
Avant de commencer
Il te faut Docker et Docker Compose sur la machine qui hébergera ta bibliothèque, ainsi que tes fichiers multimédias quelque part sur cette machine. C'est tout.
1. Crée ton docker-compose.yml
Crée un dossier pour ton instance (par exemple ~/derien) et enregistre ceci en
docker-compose.yml à l'intérieur. Il récupère l'image publique depuis le GitHub
Container Registry — sans login, sans build.
services:
app:
image: ghcr.io/zabby-suite/de-rien:latest
container_name: derien-app
restart: unless-stopped
ports:
- "3000:3000"
volumes:
# Ta bibliothèque, montée en lecture seule dans le conteneur — remplace
# par le chemin absolu sur l'hôte.
- /chemin/vers/tes/medias:/media:ro
# Données persistantes : la base SQLite + le cache des affiches.
- derien-data:/app/data
environment:
# L'URL publique par laquelle on joint ton serveur. Sert aux e-mails de
# connexion et aux callbacks OAuth — utilise http://localhost:3000 pour
# tester sur la même machine.
APP_URL: "http://localhost:3000"
# Secret utilisé pour signer les sessions. Génère-le avec :
# openssl rand -base64 32
BETTER_AUTH_SECRET: "colle-ici-un-long-secret-aleatoire"
# Nécessaire pour constituer ton catalogue — De Rien ne peut pas
# analyser sans. Clé gratuite : https://www.themoviedb.org/
TMDB_API_KEY: "ta_cle_tmdb"
# Prêt pour le transcodage GPU NVIDIA — ajoute "gpus: all" et installe le
# nvidia-container-toolkit sur l'hôte pour l'activer (CPU sinon).
NVIDIA_VISIBLE_DEVICES: all
NVIDIA_DRIVER_CAPABILITIES: all
healthcheck:
test: ["CMD", "curl", "-fsS", "http://localhost:3000/api/v1/health"]
interval: 30s
timeout: 10s
start_period: 40s
retries: 3
volumes:
derien-data:
2. Renseigne tes valeurs
Tout ce qu'il faut à De Rien vit directement dans ce fichier — aucun .env à
créer. Avant de le lancer, édite quatre choses :
APP_URL— l'URL publique par laquelle on joint ton serveur (https://derien.exemple.comune fois exposé ; gardehttp://localhost:3000pour tester sur la même machine).BETTER_AUTH_SECRET— une longue chaîne aléatoire ; génère-la avecopenssl rand -base64 32.TMDB_API_KEY— ta clé API TMDB.- Le volume des médias — le chemin absolu, sur l'hôte, vers ta
bibliothèque (par ex.
/mnt/nas/media:/media:ro).
Une TMDB_API_KEY est nécessaire : De Rien constitue son catalogue depuis TMDB
et n'analysera pas ta bibliothèque sans elle (voir
Configuration → TMDB). Tout le
reste a une valeur par défaut raisonnable — voir
Configuration pour les intégrations optionnelles (e-mail,
téléchargements, GPU…). Il n'y a aucune base à configurer : SQLite est
embarquée, et le schéma se migre tout seul au premier démarrage.
3. Lance-le
docker compose up -d
Au premier lancement, De Rien crée sa base, applique les migrations et se déclare « healthy » dès qu'il est prêt à répondre. Suis le démarrage avec :
docker compose logs -f app
4. Lance l'assistant de configuration
Ouvre ton APP_URL dans un navigateur. Comme la base n'a encore aucun
utilisateur, tu arrives directement sur l'assistant de configuration, où tu :
- Nommes ton instance.
- Saisis le premier e-mail administrateur.
- Pointes vers tes dossiers de bibliothèque (le navigateur de dossiers est confiné à ton répertoire multimédia monté).
Voir Bibliothèque pour organiser ces dossiers.
5. Connecte-toi avec un lien magique
De Rien est sans mot de passe. Créer l'admin dans l'assistant ne te connecte pas — tu te connectes avec un lien magique à usage unique, pour prouver que tu possèdes bien cette adresse.
Si tu n'as pas encore configuré de serveur smtp, pas de souci : le lien est écrit dans les logs du conteneur au lieu d'être envoyé. Récupère-le avec :
docker compose logs app
Pour que les liens soient réellement envoyés par e-mail, configure le SMTP — voir Configuration → E-mail.
Et voilà. Tu es dedans.
Alternative : build depuis les sources
Tu préfères construire l'image toi-même plutôt que de la récupérer ? Clone le dépôt et utilise le fichier compose de production fourni :
git clone https://github.com/zabby-suite/de-rien-v2.git
cd de-rien-v2
docker compose -f docker-compose.prod.yml up -d --build
Contrairement au fichier compose plus haut, docker-compose.prod.yml lit sa
configuration depuis un fichier .env : crée-le à côté avant de démarrer, avec
les mêmes variables (APP_URL, BETTER_AUTH_SECRET, TMDB_API_KEY), plus
MEDIA_HOST_PATH pour le volume des médias.