chore: refine database and backup paths in configuration
- Updated `.gitignore` to only exclude `.db` files in the `/data/` directory and preserve backups. - Modified `docker-compose.yml` to switch database and backup paths to `dev.db`, aligning with the current development setup.
This commit is contained in:
3
.gitignore
vendored
3
.gitignore
vendored
@@ -43,4 +43,5 @@ next-env.d.ts
|
||||
/src/generated/prisma
|
||||
/prisma/dev.db
|
||||
|
||||
/data/*
|
||||
/data/*.db
|
||||
/data/backups/*
|
||||
|
||||
106
data/README.md
Normal file
106
data/README.md
Normal file
@@ -0,0 +1,106 @@
|
||||
# 📁 Dossier Data - TowerControl
|
||||
|
||||
Ce dossier contient toutes les données persistantes de l'application TowerControl.
|
||||
|
||||
## 📋 Structure
|
||||
|
||||
```
|
||||
data/
|
||||
├── README.md # Ce fichier
|
||||
├── prod.db # Base de données production (Docker)
|
||||
├── dev.db # Base de données développement (Docker)
|
||||
└── backups/ # Sauvegardes automatiques et manuelles
|
||||
├── towercontrol_2025-01-15T10-30-00-000Z.db.gz
|
||||
├── towercontrol_2025-01-15T11-30-00-000Z.db.gz
|
||||
└── ...
|
||||
```
|
||||
|
||||
## 🎯 Utilisation
|
||||
|
||||
### En développement local
|
||||
- La base de données principale est dans `prisma/dev.db`
|
||||
- Ce dossier `data/` est utilisé uniquement par Docker
|
||||
- Les sauvegardes locales sont dans `backups/` (racine du projet)
|
||||
|
||||
### En production Docker
|
||||
- Base de données : `data/prod.db` ou `data/dev.db`
|
||||
- Sauvegardes : `data/backups/`
|
||||
- Tout ce dossier est mappé vers `/app/data` dans le conteneur
|
||||
|
||||
## 🔧 Configuration
|
||||
|
||||
Les chemins sont configurés via les variables d'environnement :
|
||||
|
||||
```bash
|
||||
# Base de données
|
||||
DATABASE_URL="file:./data/prod.db"
|
||||
|
||||
# Chemin de la base pour les backups
|
||||
BACKUP_DATABASE_PATH="./data/prod.db"
|
||||
|
||||
# Dossier de stockage des sauvegardes
|
||||
BACKUP_STORAGE_PATH="./data/backups"
|
||||
```
|
||||
|
||||
## 🗂️ Fichiers
|
||||
|
||||
### Bases de données SQLite
|
||||
- **prod.db** : Base de données de production
|
||||
- **dev.db** : Base de données de développement Docker
|
||||
- Format : SQLite 3
|
||||
- Contient : Tasks, Tags, User Preferences, Sync Logs, etc.
|
||||
|
||||
### Sauvegardes
|
||||
- **Format** : `towercontrol_YYYY-MM-DDTHH-mm-ss-sssZ.db.gz`
|
||||
- **Compression** : gzip
|
||||
- **Rétention** : Configurable (défaut: 5 sauvegardes)
|
||||
- **Fréquence** : Configurable (défaut: horaire)
|
||||
|
||||
## 🚀 Commandes utiles
|
||||
|
||||
```bash
|
||||
# Créer une sauvegarde manuelle
|
||||
npm run backup:create
|
||||
|
||||
# Lister les sauvegardes
|
||||
npm run backup:list
|
||||
|
||||
# Voir la configuration
|
||||
npm run backup:config
|
||||
|
||||
# Restaurer une sauvegarde (dev uniquement)
|
||||
npm run backup:restore filename.db.gz
|
||||
```
|
||||
|
||||
## ⚠️ Important
|
||||
|
||||
- **Ne pas modifier** les fichiers `.db` directement
|
||||
- **Ne pas supprimer** ce dossier en production
|
||||
- **Sauvegarder régulièrement** le contenu de ce dossier
|
||||
- **Vérifier l'espace disque** disponible pour les sauvegardes
|
||||
|
||||
## 🔒 Sécurité
|
||||
|
||||
- Ce dossier est ignoré par Git (`.gitignore`)
|
||||
- Contient des données sensibles en production
|
||||
- Accès restreint recommandé sur le serveur
|
||||
- Chiffrement recommandé pour les sauvegardes externes
|
||||
|
||||
## 📊 Monitoring
|
||||
|
||||
Pour surveiller l'espace disque :
|
||||
|
||||
```bash
|
||||
# Taille du dossier data
|
||||
du -sh data/
|
||||
|
||||
# Taille des sauvegardes
|
||||
du -sh data/backups/
|
||||
|
||||
# Nombre de sauvegardes
|
||||
ls -1 data/backups/ | wc -l
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
📚 **Documentation complète** : [BACKUP.md](../BACKUP.md)
|
||||
@@ -8,8 +8,8 @@ services:
|
||||
- "3006:3000"
|
||||
environment:
|
||||
NODE_ENV: production
|
||||
DATABASE_URL: "file:../data/prod.db" # Prisma
|
||||
BACKUP_DATABASE_PATH: "./data/prod.db" # Base de données à sauvegarder
|
||||
DATABASE_URL: "file:../data/dev.db" # Prisma
|
||||
BACKUP_DATABASE_PATH: "./data/dev.db" # Base de données à sauvegarder
|
||||
BACKUP_STORAGE_PATH: "./data/backups" # Dossier des sauvegardes
|
||||
TZ: Europe/Paris
|
||||
volumes:
|
||||
|
||||
Reference in New Issue
Block a user