add docker + debug

This commit is contained in:
mahek 2025-07-21 16:38:07 +02:00
parent 848a79a04e
commit 1f4193f9c0
26 changed files with 21051 additions and 28 deletions

View file

@ -16,6 +16,11 @@ Une application web pour gérer vos films et séries TV en utilisant les API de
- Épisodes manquants
- Épisodes à venir
- Historique des téléchargements
- **Paramètres** : Configuration personnalisée des API
- Gestion des URLs et clés API de Sonarr et Radarr
- Test de connexion aux API
- **Interface adaptative** : Design responsive pour mobile, tablette et desktop
- **Thème** : Support des modes clair et sombre avec détection des préférences système
## Technologies utilisées
@ -23,12 +28,15 @@ Une application web pour gérer vos films et séries TV en utilisant les API de
- **Node.js** et **Express.js** pour l'API
- **MongoDB** pour la base de données
- **JWT** pour l'authentification
- **MVC** architecture pour une meilleure organisation du code
### Frontend
- **Vue.js 3** avec **Composition API**
- **Vue Router** pour la navigation
- **Vuex** pour la gestion d'état
- **Axios** pour les requêtes HTTP
- **CSS Variables** pour la gestion des thèmes
- **Lazy Loading** des composants pour optimiser les performances
## Prérequis
@ -62,12 +70,10 @@ cp ../config/.env.example ../config/.env
PORT=5000
MONGODB_URI=mongodb://localhost:27017/managerr
JWT_SECRET=votre_secret_jwt
SONARR_API_URL=http://votre-ip-sonarr:8989/api/v3
SONARR_API_KEY=votre-cle-api-sonarr
RADARR_API_URL=http://votre-ip-radarr:7878/api/v3
RADARR_API_KEY=votre-cle-api-radarr
```
**Note** : Les URLs et clés API de Sonarr et Radarr peuvent maintenant être configurées directement depuis l'interface utilisateur dans la section "Paramètres".
### Configuration du frontend
1. Installer les dépendances du frontend
@ -95,13 +101,45 @@ cd frontend
npm run serve
```
L'application sera accessible à l'adresse : http://localhost:8080
L'application sera accessible à l'adresse : http://localhost:8012
> **Note :** Si vous rencontrez des erreurs lors du démarrage du frontend, assurez-vous que toutes les dépendances sont correctement installées avec `npm install`. Pour les erreurs liées aux plugins webpack, la configuration a été rendue plus robuste pour gérer les différentes versions de Vue CLI.
### Démarrer l'application complète (script utilitaire)
Un script est fourni pour démarrer à la fois le backend et le frontend en une seule commande :
```bash
cd managerr
./start.sh
```
Utilisez Ctrl+C pour arrêter les deux serveurs.
### Utilisation avec Docker (recommandé)
L'application peut également être exécutée dans des conteneurs Docker, ce qui facilite le déploiement et évite les problèmes de configuration locale :
1. Assurez-vous que Docker et docker-compose sont installés sur votre système
2. Exécutez les commandes suivantes :
```bash
# Démarrer tous les services (MongoDB, backend et frontend)
./docker-manage.sh start
# Afficher l'état des services
./docker-manage.sh status
# Afficher les logs
./docker-manage.sh logs
# Arrêter tous les services
./docker-manage.sh stop
```
L'application sera accessible à l'adresse : http://localhost:8012
## Déploiement
### Backend
1. Construire le backend pour la production
1. Démarrer le backend en mode production
```bash
cd backend
npm start
@ -109,7 +147,7 @@ npm start
### Frontend
1. Construire le frontend pour la production
1. Construire le frontend optimisé pour la production
```bash
cd frontend
npm run build
@ -117,6 +155,14 @@ npm run build
2. Déployer le dossier `/dist` sur votre serveur web
## Optimisations implémentées
- **Lazy loading** des composants Vue.js
- **Compression des assets** pour le frontend
- **Mise en cache des réponses API** côté client
- **Optimisation des images** pour réduire les temps de chargement
- **Division du code** (code splitting) pour des temps de chargement initiaux plus rapides
## Contribuer
1. Fork le projet
@ -129,6 +175,11 @@ npm run build
Distribué sous la licence MIT. Voir `LICENSE` pour plus d'informations.
## Documentation
- [Documentation technique](/backend/API_DOCS.md) - Documentation complète de l'API
- [Guide utilisateur](/frontend/docs/USER_GUIDE.md) - Guide d'utilisation de l'application
## Contact
Votre Nom - [@votre_twitter](https://twitter.com/votre_twitter) - email@exemple.com