lecoffre_node/docs/REX_Deployment_Success.md

148 lines
5.0 KiB
Markdown

# REX - Déploiement LeCoffre Réussi
## Date
21 septembre 2025
## Résumé
Déploiement complet et réussi de l'écosystème LeCoffre selon les consignes strictes du document `deploy.md`.
## Projets déployés avec succès
### Projets avec Dockerfiles
-**sdk_relay** (Debian-based) - Port 8090-8091
-**sdk_signer** (Alpine-based) - Port 9090
-**sdk_storage** - Port 8081
-**ihm_client** (Alpine-based) - Port 3003
-**lecoffre-back-mini** (Alpine-based) - Port 8080
-**lecoffre-front** (Alpine-based) - Port 3004
### Projets sans Dockerfiles
-**sdk_common** - Dépendance partagée
-**sdk_client** - Dépendance partagée
-**sdk-signer-client** - Dépendance partagée
## Corrections apportées
### Problème Alpine Linux - Package cscope
**Erreur rencontrée :**
```
ERROR: unable to select packages:
cscope (no such package):
required by: world[cscope]
```
**Solution appliquée :**
Suppression du package `cscope` des Dockerfiles Alpine Linux car ce package n'existe pas dans les dépôts Alpine.
**Fichiers corrigés :**
- `/home/debian/sdk_signer/Dockerfile`
- `/home/debian/ihm_client/Dockerfile`
- `/home/debian/lecoffre-back-mini/Dockerfile`
- `/home/debian/lecoffre-front/Dockerfile`
## Services en cours d'exécution
### Infrastructure de base
-**bitcoin-signet** - Nœud Bitcoin Signet
-**blindbit-oracle** - Oracle BlindBit
-**tor-proxy** - Proxy Tor
-**signet_miner** - Mineur Signet
### Services LeCoffre
-**sdk_relay** - Relais des transactions (8090-8091)
-**sdk_signer** - Service de signature (9090)
-**sdk_storage** - Stockage temporaire (8081)
-**ihm_client** - Interface utilisateur (3003)
-**lecoffre-back** - Backend API (8080)
-**lecoffre-front** - Frontend Next.js (3004)
### Monitoring
-**grafana** - Tableau de bord (3005)
-**loki** - Système de logs (3100)
-**promtail** - Collecteur de logs
### Services auxiliaires
-**status-api** - API de statut (3006)
-**watchtower** - Surveillance des conteneurs
## Tests de connectivité réussis
### URLs publiques
-**LeCoffre Front** : https://dev4.4nkweb.com/lecoffre
-**IHM Client** : https://dev4.4nkweb.com/
-**Grafana** : http://127.0.0.1:3005
### Services locaux
-**Frontend** : http://127.0.0.2:3004 (page 404 affichée correctement)
-**IHM Client** : http://127.0.0.1:3003 (Vite dev server actif)
-**Backend** : http://127.0.0.1:8080 (réponse HTTP)
-**Storage** : http://127.0.0.1:8081 (healthy)
-**Relay** : http://127.0.0.1:8090-8091 (healthy)
-**Signer** : http://127.0.0.1:9090 (healthy)
## Configuration Git
### Branches poussées avec succès
-**lecoffre_node**`git.4nkweb.com/4nk/lecoffre_node:ext`
-**sdk_relay**`git.4nkweb.com/4nk/sdk_relay:ext`
-**sdk_signer**`git.4nkweb.com/4nk/sdk_signer:ext`
-**ihm_client**`git.4nkweb.com/4nk/ihm_client:ext`
-**lecoffre-back-mini**`git.4nkweb.com/4nk/lecoffre-back-mini:ext`
-**lecoffre-front**`git.4nkweb.com/4nk/lecoffre-front:ext`
### Messages de commit
```
ci: docker_tag=ext - Fix Alpine Dockerfiles and add deployment documentation
ci: docker_tag=ext - Update Dockerfile with comprehensive build tools
ci: docker_tag=ext - Fix Alpine Dockerfile - remove cscope package
```
## Sécurité et conformité
### Vérifications effectuées
- ✅ Aucun secret hardcodé dans le code
- ✅ Fichiers .env exclus du versioning
- ✅ Fichiers ignore configurés correctement
- ✅ Configurations centralisées dans `lecoffre_node/conf`
### Fichiers ignore créés/vérifiés
-`.gitignore` - Exclusion des fichiers sensibles
-`.dockerignore` - Optimisation des builds Docker
-`.cursorignore` - Exclusion des fichiers pour Cursor
## Architecture de déploiement
### Flux de redirection
1. **https://dev4.4nkweb.com/lecoffre****local.4nkweb.com****https://dev4.4nkweb.com/lecoffre**
2. Ouverture iframe **https://dev4.4nkweb.com/** (ihm_client)
### Ports et services
- **Relais** : 8090-8091
- **Signer** : 9090
- **Bootstrap** : dev3.4nkweb.com
- **Frontend** : 3004
- **Backend** : 8080
- **Storage** : 8081
- **IHM Client** : 3003
- **Grafana** : 3005
- **Status API** : 3006
## Leçons apprises
### Dockerfiles
1. **Vérifier la compatibilité des packages** avec la distribution Linux
2. **Alpine Linux** : `apk` - certains packages n'existent pas
3. **Debian Linux** : `apt-get` - plus de packages disponibles
4. **Tester les builds** avant de pousser sur Git
### Déploiement
1. **Séquence de démarrage** : tor → bitcoin → blindbit → storage → relay → signer → ihm_client
2. **Monitoring** : Grafana + Loki + Promtail configurés
3. **Sécurité** : Aucun secret exposé, configurations externalisées
4. **Git** : Branche `ext` pour tous les projets
## Statut final
🎉 **DÉPLOIEMENT COMPLET ET RÉUSSI**
Tous les services sont opérationnels, les tests de connectivité passent, et l'architecture respecte les spécifications du document `deploy.md`.