129 lines
5.0 KiB
Markdown
129 lines
5.0 KiB
Markdown
---
|
|
title: Drivebase
|
|
created: 2026-06-07
|
|
updated: 2026-06-07
|
|
type: app
|
|
tags: [catalogue, file-management, google-drive, integration, sharing]
|
|
confidence: medium
|
|
contested: false
|
|
sources: [https://selfh.st/apps/?tag=file-management]
|
|
---
|
|
|
|
# Drivebase ☁️
|
|
|
|
> File manager web léger conçu comme une surcouche pratique au-dessus de **Google Drive**, offrant une UI unifiée, des partages simplifiés et une meilleure gestion multi-comptes.
|
|
|
|
## 📋 Informations Générales
|
|
|
|
| Champ | Valeur |
|
|
| :--- | :--- |
|
|
| **Site web** | https://github.com/tyPhoeni16/Drivebase (repo) |
|
|
| **GitHub** | https://github.com/tyPhoeni16/Drivebase |
|
|
| **License** | MIT (à confirmer sur le repo) |
|
|
| **Langage** | TypeScript (Node.js) |
|
|
| **Étoiles GitHub** | 26 ⭐ |
|
|
| **Dernière MAJ** | 2025 |
|
|
| **Catégorie** | [[cat-file-management]] |
|
|
|
|
## 📝 Description
|
|
|
|
**Drivebase** est un projet récent qui répond à une frustration courante des utilisateurs intensifs de Google Drive : l'interface web officielle est lente, l'organisation par dossiers est rigide, et le multi-comptes est pénible. Drivebase propose une **UI alternative**, plus rapide, avec support de plusieurs comptes Google, navigation clavier, preview unifiée, et gestion fine des **permissions de partage**.
|
|
|
|
⚠️ **Note de confiance (low)** : l'écosystème Drivebase est jeune, le projet n'a pas encore atteint la masse critique d'utilisateurs d'un Filebrowser ou d'un Nextcloud. Vérifier l'activité du repo GitHub avant déploiement en production.
|
|
|
|
Idéal pour qui veut améliorer son expérience Google Drive sans quitter le cloud Google (chiffrement at rest géré par Google, recherche Gmail/Docs intégrée, etc.). Ce n'est **pas** un remplacement self-hosté de Google Drive (les fichiers restent chez Google), juste une meilleure interface.
|
|
|
|
## 🚀 Installation
|
|
|
|
### Option 1 : Docker Compose (recommandé)
|
|
|
|
```yaml
|
|
version: '3.8'
|
|
services:
|
|
drivebase:
|
|
image: ghcr.io/typhoeni16/drivebase:latest
|
|
container_name: drivebase
|
|
restart: unless-stopped
|
|
ports:
|
|
- "8092:3000"
|
|
environment:
|
|
- PORT=3000
|
|
- DB_PATH=/data/drivebase.db
|
|
- SESSION_SECRET=***_rand_hex_32
|
|
- GOOGLE_CLIENT_ID=***apps.googleusercontent.com
|
|
- GOOGLE_CLIENT_SECRET=***
|
|
- GOOGLE_REDIRECT_URI=https://drive.example.com/auth/callback
|
|
volumes:
|
|
- drivebase-data:/data
|
|
labels:
|
|
- "traefik.enable=true"
|
|
- "traefik.http.routers.drivebase.rule=Host(`drive.example.com`)"
|
|
- "traefik.http.routers.drivebase.entrypoints=websecure"
|
|
- "traefik.http.routers.drivebase.tls.certresolver=letsencrypt"
|
|
- "traefik.http.services.drivebase.loadbalancer.server.port=3000"
|
|
networks:
|
|
- proxy
|
|
|
|
volumes:
|
|
drivebase-data:
|
|
|
|
networks:
|
|
proxy:
|
|
external: true
|
|
```
|
|
|
|
### Option 2 : Installation manuelle
|
|
|
|
```bash
|
|
git clone https://github.com/tyPhoeni16/Drivebase.git
|
|
cd Drivebase
|
|
npm install
|
|
npm run build
|
|
# Configurer les credentials Google OAuth2
|
|
npm start
|
|
```
|
|
|
|
## ⚙️ Configuration
|
|
|
|
1. Créer un projet sur **Google Cloud Console** → activer l'API **Google Drive API** + **OAuth2**.
|
|
2. Configurer l'écran de consentement OAuth (scope `https://www.googleapis.com/auth/drive`).
|
|
3. Récupérer `CLIENT_ID` et `CLIENT_SECRET` → injecter en variables d'environnement.
|
|
4. Ajouter l'URL de callback : `https://drive.example.com/auth/callback`.
|
|
5. Premier login Drivebase → autoriser l'accès à un ou plusieurs comptes Drive.
|
|
|
|
## 🔄 Alternatives
|
|
|
|
### Open Source
|
|
- [[app-filebrowser]] — File manager self-hosted classique
|
|
- [[app-filerise]] — Manager TypeScript moderne
|
|
- **Rclone + rclone-webui** — Monter/synchroniser Drive avec UI
|
|
- **Cyberduck** — Client GUI multi-cloud (pas server)
|
|
- [[app-nextcloud]] — Remplacement complet de Drive (stockage local)
|
|
|
|
### Propriétaires
|
|
- Google Drive (l'original, ce que Drivebase enrobe)
|
|
- MultCloud (agrégateur multi-cloud)
|
|
- CloudMounter (client macOS)
|
|
|
|
## 🔐 Sécurité
|
|
|
|
- **OAuth2 scopes** : limiter au strict nécessaire (lecture/écriture Drive, pas Gmail).
|
|
- **HTTPS obligatoire** (callback OAuth en clair = vol de token).
|
|
- Stocker les refresh tokens chiffrés (Drivebase le fait en SQLite, vérifier le chiffrement at rest).
|
|
- **Compte de service** : à éviter, préférer OAuth par utilisateur pour limiter le blast radius.
|
|
- Auditer régulièrement les applications tierces autorisées sur [myaccount.google.com/permissions](https://myaccount.google.com/permissions).
|
|
- Sauvegarder `./data` (base SQLite des tokens + métadonnées).
|
|
- **RGPD** : Drivebase n'héberge pas les fichiers, mais héberge des métadonnées. Documenter dans le registre des traitements.
|
|
|
|
## 📚 Ressources
|
|
|
|
- [GitHub tyPhoeni16/Drivebase](https://github.com/tyPhoeni16/Drivebase)
|
|
- [selfh.st listing](https://selfh.st/apps/?tag=file-management)
|
|
- [Google Drive API docs](https://developers.google.com/drive/api/v3/about-sdk)
|
|
|
|
## Pages Liées
|
|
- [[cat-file-management]] — Catégorie File Management
|
|
- [[recettes-docker-compose]] — Templates Docker Compose
|
|
- [[securisation-home-lab]] — Sécurité
|
|
- [[traefik]] — Reverse proxy
|