5.2 KiB
title: Diskover created: 2026-06-07 updated: 2026-06-07 type: app tags: [catalogue, file-management, python, search, indexer, elasticsearch] confidence: medium contested: false sources: [https://selfh.st/apps/?tag=file-management, https://github.com/diskoverdata/diskover-community]
Diskover 🔎
Indexeur de fichiers open source écrit en Python qui crawle votre stockage (NAS, SAN, local) et expose une interface web de recherche/visualisation propulsée par Elasticsearch.
📋 Informations Générales
| Champ | Valeur |
|---|---|
| Site web | https://diskover.net |
| GitHub | https://github.com/diskoverdata/diskover-community |
| License | Apache-2.0 |
| Langage | Python |
| Étoiles GitHub | 184 ⭐ |
| Dernière MAJ | 2024 |
| Catégorie | cat-file-management |
📝 Description
Diskover s'attaque à un problème que tous les sysadmins connaissent : « Où est passé ce fichier de 2019 ? ». Au lieu de dépendre d'un find récursif ou d'une arborescence Windows, Diskover crawle en profondeur n'importe quel montage (NFS, SMB, local, Ceph, S3) et indexe métadonnées + noms dans Elasticsearch.
L'UI web permet de naviguer dans une vue arborescente façon « sunburst », de filtrer par taille/date/type/owner/extension, de détecter les doublons, de repérer les fichiers non accédés depuis N jours (utile pour purger), et d'identifier les gros orphelins. C'est l'outil de référence pour les datarooms, archives, NAS de plusieurs To, ou les workflows de conformité RGPD (cartographie des données).
L'indexation est incrémentale : un cron relance le crawler régulièrement et ne retraitent que les fichiers modifiés. Diskover existe en édition Community (gratuite, open source) et Pro (commerciale, avec support et plugins).
🚀 Installation
Option 1 : Docker Compose (recommandé)
version: '3.8'
services:
diskover:
image: diskover/diskover-community:latest
container_name: diskover
restart: unless-stopped
ports:
- "8110:80"
environment:
- ES_HOST=elasticsearch
- ES_PORT=9200
- ES_INDEX=diskover
volumes:
- /mnt/nas:/mnt/nas:ro # Adapter au stockage à indexer
- diskover-config:/opt/diskover/config
depends_on:
- elasticsearch
labels:
- "traefik.enable=true"
- "traefik.http.routers.diskover.rule=Host(`diskover.example.com`)"
- "traefik.http.routers.diskover.entrypoints=websecure"
- "traefik.http.routers.diskover.tls.certresolver=letsencrypt"
- "traefik.http.services.diskover.loadbalancer.server.port=80"
networks:
- proxy
elasticsearch:
image: docker.elastic.co/elasticsearch/elasticsearch:7.17.20
container_name: diskover-elasticsearch
restart: unless-stopped
environment:
- discovery.type=single-node
- ES_JAVA_OPTS=-Xms2g -Xmx2g
- xpack.security.enabled=false
volumes:
- es-data:/usr/share/elasticsearch/data
networks:
- proxy
volumes:
diskover-config:
es-data:
networks:
proxy:
external: true
Option 2 : Installation manuelle
git clone https://github.com/diskoverdata/diskover-community.git
cd diskover-community
pip install -r requirements.txt
# Configurer Elasticsearch externe, éditer configs/
python diskover.py /mnt/nas
⚙️ Configuration
- Indexer plusieurs sources : ajouter des crons distincts par montage.
- Politique d'index : configurer Elasticsearch pour la rotation (ILM) et limiter la taille.
- Filtres : exclure
.tmp,node_modules,__pycache__viaconfig.py. - Doublons : activer le hash SHA256 pour identifier les fichiers identiques.
- Lancer le crawler en cron quotidien pour une indexation incrémentale.
🔄 Alternatives
Open Source
- app-filebrowser — File manager avec search limité
- app-anythingllm — Pas la même cible (RAG docs)
- Sonarr / Radarr — Plutôt orienté médias
- Elasticsearch + lsplugin — DIY
- MaidSafe / Recoll — Indexation desktop
Propriétaires
- WinDirStat (desktop, pas serveur)
- TreeSize (desktop)
- Cohesity DataPlatform
- NetApp OnCommand Insight
🔐 Sécurité
- Elasticsearch sans exposition publique : ne pas ouvrir le port 9200.
- Activer xpack.security + auth sur Elasticsearch en production.
- Diskover Community ne supporte pas l'auth native → mettre derrière un reverse proxy authentifié (Authelia, Authentik).
- HTTPS obligatoire sur l'UI.
- Limiter l'accès au dossier monté (
:roen Docker si lecture seule suffit). - Les métadonnées indexées peuvent être sensibles (noms de fichiers clients) → RGPD.
📚 Ressources
- Site officiel
- Documentation
- GitHub diskoverdata/diskover-community
- Article XDA : Diskover self-hosted file indexer
Pages Liées
- cat-file-management — Catégorie File Management
- recettes-docker-compose — Templates Docker Compose
- securisation-home-lab — Sécurité
- traefik — Reverse proxy