# Démarrage : # cp config.example.json config.json # puis éditer (publicUrl, session.key, oidc.*) # mkdir -p ./data && sudo chown -R 1000:1000 ./data # docker compose up -d --build # # Dans config.json, faire pointer les `dir` des `targets` sous /data, # par ex. { "name": "photos", "dir": "/data/photos" }. services: mediadrop: build: context: . dockerfile: Dockerfile # Alternative : utiliser une image publiée plutôt que builder localement. # image: git.dev.kyuno.fr/kyuno/mediadrop:latest container_name: mediadrop restart: unless-stopped ports: # :. Garder 3000 côté conteneur (= `port` de config.json # et port du HEALTHCHECK) ; remapper côté hôte si besoin, ex. "8080:3000". - '3000:3000' volumes: # Configuration, en lecture seule — montée, jamais incluse dans l'image. - ./config.json:/app/config.json:ro # Données : les `dir` des `targets` doivent vivre sous /data. - ./data:/data # Le conteneur tourne en uid 1000 (utilisateur `node`) : ./data doit lui être # inscriptible (voir le chown ci-dessus). Sous Linux, pour tourner sous ton # propre uid avec des dossiers t'appartenant : # user: '${MEDIADROP_UID:-1000}:${MEDIADROP_GID:-1000}'