115 lines
		
	
	
		
			2.7 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
			
		
		
	
	
			115 lines
		
	
	
		
			2.7 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
| # ObsiViewer - Docker Compose
 | |
| 
 | |
| Cette configuration Docker Compose permet de déployer ObsiViewer avec Meilisearch dans des conteneurs isolés.
 | |
| 
 | |
| ## Prérequis
 | |
| 
 | |
| - Docker Engine
 | |
| - Docker Compose
 | |
| - Une image Docker `obsi-viewer-angular:latest` construite localement ou disponible dans un registre
 | |
| 
 | |
| ## Configuration
 | |
| 
 | |
| ### Variables d'environnement
 | |
| 
 | |
| Le fichier `docker-compose/.env` contient toutes les variables nécessaires:
 | |
| 
 | |
| ```env
 | |
| # Configuration réseau
 | |
| NGINX_HOSTNAME=votre-hostname
 | |
| NGINX_SERVER_IP=172.26.11.25
 | |
| 
 | |
| # Chemins des volumes
 | |
| DIR_OBSIVIEWER=/DOCKER_CONFIG/obsiviewer
 | |
| DIR_OBSIVIEWER_VAULT=/chemin/vers/votre/vault
 | |
| 
 | |
| # Configuration serveur
 | |
| PORT=4000
 | |
| NODE_ENV=production
 | |
| TZ=America/Montreal
 | |
| 
 | |
| # Configuration Meilisearch
 | |
| MEILI_MASTER_KEY=devMeiliKey123
 | |
| MEILI_ENV=development
 | |
| ```
 | |
| 
 | |
| **Variables importantes:**
 | |
| - `DIR_OBSIVIEWER_VAULT`: Chemin ABSOLU vers votre vault Obsidian sur l'hôte
 | |
| - `MEILI_MASTER_KEY`: Clé d'authentification Meilisearch (changez en production!)
 | |
| - `PORT`: Port d'écoute du serveur backend
 | |
| 
 | |
| 2. **Volumes** :
 | |
|    - `/app/vault` : répertoire de la voûte Obsidian (monté depuis l'hôte)
 | |
|    - `/app/assets` : fichiers de configuration
 | |
|    - `/app/db` : base de données (optionnel)
 | |
| 
 | |
| ## Utilisation
 | |
| 
 | |
| ### Démarrage complet
 | |
| 
 | |
| ```bash
 | |
| # 1. Configurer les variables
 | |
| cd docker-compose
 | |
| cp .env.example .env
 | |
| # Éditer .env et définir DIR_OBSIVIEWER_VAULT
 | |
| 
 | |
| # 2. Lancer tous les services (app + Meilisearch)
 | |
| docker compose up -d
 | |
| 
 | |
| # 3. Indexer le vault dans Meilisearch
 | |
| # Depuis la racine du projet:
 | |
| cd ..
 | |
| npm run meili:reindex
 | |
| ```
 | |
| 
 | |
| ### Démarrage Meilisearch seul
 | |
| 
 | |
| ```bash
 | |
| # Depuis la racine du projet
 | |
| npm run meili:up        # Lance Meilisearch
 | |
| npm run meili:reindex   # Indexe le vault
 | |
| npm run meili:down      # Arrête Meilisearch
 | |
| ```
 | |
| 
 | |
| ### Arrêt
 | |
| 
 | |
| ```bash
 | |
| cd docker-compose
 | |
| docker compose down
 | |
| ```
 | |
| 
 | |
| ### Reconstruction
 | |
| 
 | |
| ```bash
 | |
| docker compose up -d --build
 | |
| ```
 | |
| 
 | |
| ## Accès aux services
 | |
| 
 | |
| - **Application** : http://localhost:8080 (ou http://votre-hostname:8080)
 | |
| - **API Health** : http://localhost:8080/api/health
 | |
| - **Meilisearch** : http://localhost:7700
 | |
| - **Meilisearch Health** : http://localhost:7700/health
 | |
| - **Voûte Obsidian** : montée depuis `DIR_OBSIVIEWER_VAULT`
 | |
| 
 | |
| ## Structure des volumes
 | |
| 
 | |
| ```
 | |
| ./vault/                    # Répertoire de la voûte (optionnel)
 | |
| ├── assets/                # Configuration et assets
 | |
| ├── db/                    # Base de données SQLite (optionnel)
 | |
| └── [vos notes .md]        # Fichiers de la voûte Obsidian
 | |
| ```
 | |
| 
 | |
| ## Logs
 | |
| 
 | |
| ```bash
 | |
| docker compose logs -f obsi-viewer
 | |
| ```
 | |
| 
 | |
| ## Dépannage
 | |
| 
 | |
| - Vérifiez les logs : `docker compose logs obsi-viewer`
 | |
| - Vérifiez l'état du conteneur : `docker compose ps`
 | |
| - Accédez au shell du conteneur : `docker compose exec obsi-viewer bash`
 |