# 4NK Environment Environnement de développement centralisé pour tous les dépôts 4NK et le projet LeCoffre, incluant le contexte et l'outillage complet pour les agents IA. ## 🏗️ Architecture ### Environnement de développement centralisé avec agents IA ``` 4NK_env/ # Environnement de développement 4NK + Agents IA ├── lecoffre_node/ # Orchestrateur principal LeCoffre (Nginx intégré) ├── sdk_relay/ # Service de relais WebSocket 4NK ├── sdk_storage/ # Service de stockage 4NK ├── sdk_client/ # Client SDK 4NK ├── sdk_common/ # Composants communs 4NK ├── sdk-signer-client/ # Client signeur 4NK ├── ihm_client/ # Interface utilisateur LeCoffre ├── lecoffre-front/ # Frontend Next.js LeCoffre ├── doc_api/ # Documentation API 4NK ├── IA_agents/ # 🧠 Agents IA - Contexte et outillage complet │ ├── context.md # Contexte général des projets │ ├── deploy.md # Procédures de déploiement │ ├── flux.md # Architecture des flux │ └── todo.md # Liste des tâches et améliorations └── scripts/ # Scripts de gestion et déploiement (centralisés) ├── clone-all-repos.sh # Clonage de tous les dépôts 4NK ├── init-4nk-env-repo.sh # Initialisation du dépôt 4NK_env ├── check-repos-status.sh # Vérification du statut des dépôts ├── push-to-remote.sh # Push vers git.4nkweb.com └── setup-complete-env.sh # Configuration complète ``` ## 🚀 Déploiement ### 1. Clonage de tous les dépôts 4NK (branche ext) ```bash cd /home/debian/4NK_env ./scripts/clone-all-repos.sh ``` ### 2. Initialisation du dépôt 4NK_env ```bash ./scripts/init-4nk-env-repo.sh ``` ### 3. Déploiement LeCoffre (architecture autonome) ```bash cd lecoffre_node ./scripts/deploy-autonomous.sh ``` ### 4. Configuration complète de l'environnement ```bash ./scripts/setup-complete-env.sh ``` ## 🌐 Services et Ports | Service | URL | Description | |---------|-----|-------------| | **LeCoffre Front** | http://localhost/lecoffre/ | Application principale | | **IHM Client** | http://localhost/ | Interface client | | **API Backend** | http://localhost/api/ | API REST | | **WebSocket** | ws://localhost/ws/ | Communication temps réel | | **Status Page** | http://localhost/status/ | Tableau de bord | | **Grafana** | http://localhost/grafana/ | Monitoring | | **Redirections IdNot** | `` | Redirections externes | | **HTTPS** | https://localhost/ | Accès sécurisé | ### Ports - **80** : HTTP (redirection vers HTTPS) - **443** : HTTPS avec certificats auto-signés - **3000** : Redirections externes IdNot ## 🔧 Configuration ### Environnement de développement avec agents IA - **Dépôts centralisés** : Tous les projets 4NK et LeCoffre dans un seul environnement - **Branche unifiée** : `ext` pour tous les dépôts - **Scripts de gestion** : Automatisation complète du clonage et déploiement - **Agents IA** : Contexte et outillage complet dans IA_agents/ - **Documentation centralisée** : Toute la documentation technique accessible ### Architecture Autonome LeCoffre - **Nginx intégré** dans le conteneur `lecoffre_node` - **Indépendant du host** (Nginx local supprimé) - **Configuration centralisée** dans `lecoffre_node/conf/` - **Variables d'environnement** dans `env.master` ### Monitoring - **Grafana** : Tableaux de bord et visualisation - **Loki** : Collecte et stockage des logs - **Promtail** : Agent de collecte des logs ## 📚 Documentation et Agents IA ### Agents IA - Contexte et outillage complet (IA_agents/) - **AGENTS_SYNTHESIS.md** : **NOUVEAU** - Synthèse complète pour les agents IA - **README.md** : Documentation principale et règles obligatoires - **deployment-architecture.md** : Architecture de déploiement par phases - **best-practices-deployment.md** : Bonnes pratiques et interdictions - **todo.md** : Liste des tâches et améliorations à suivre ### Documentation Technique (docs/) - **DEEP_ARCHITECTURE_ANALYSIS.md** : **NOUVEAU** - Analyse architecturale approfondie complète - **TECHNICAL_REFERENCE.md** : **NOUVEAU** - Référence technique complète - **DEPLOYMENT_GUIDE.md** : **NOUVEAU** - Guide de déploiement complet - **DOCUMENTATION_SYNTHESIS.md** : **NOUVEAU** - Synthèse de la documentation - **ARCHITECTURE_ANALYSIS.md** : Analyse architecturale complète 4NK + LeCoffre - **context.md** : Contexte général des projets 4NK et LeCoffre - **flux.md** : Architecture des flux et services ### Documentation spécifique - **lecoffre_node/README-AUTONOMOUS.md** : Architecture autonome LeCoffre - **doc_api/** : Documentation API 4NK ## 🛠️ Scripts Utiles ### Gestion des dépôts ```bash ./scripts/check-repos-status.sh # Vérifier le statut de tous les dépôts ./scripts/clone-all-repos.sh # Cloner tous les dépôts 4NK (branche ext) ./scripts/init-4nk-env-repo.sh # Initialiser le dépôt 4NK_env ./scripts/push-to-remote.sh # Pousser vers git.4nkweb.com ./scripts/setup-complete-env.sh # Configuration complète de l'environnement ./scripts/push-commit.sh # Forcer travail sur ext (submodules + racine), commit/push si changements ``` ### Centralisation des scripts - Les scripts des sous‑projets sont centralisés dans `4NK_env/scripts//`. - Les répertoires `scripts/` à la racine des sous‑projets sont désormais des liens symboliques pointant vers ces emplacements centralisés. - Exemples: - `lecoffre_node/scripts` → `4NK_env/scripts/lecoffre_node` Impact: - Aucun changement pour les commandes existantes (`./scripts/...`) dans les projets: les liens symboliques assurent la compatibilité. - Référence recommandée dans la documentation: `4NK_env/scripts//...`. ## 🔐 Sécurité - **Fichiers .env** protégés par `.gitignore` - **Certificats SSL** auto-signés générés automatiquement - **Utilisateurs non-root** dans tous les conteneurs - **Secrets centralisés** dans `env.master` ## 🐳 Docker ### Images optimisées - **Base Debian** `bookworm-slim` - **Packages minimaux** pour la sécurité - **Utilisateurs non-root** (`appuser`, `lecoffreuser`) - **Tag unique** : `ext` ### Architecture - **Conteneur master** : `lecoffre_node` avec Nginx intégré - **Services autonomes** : Chaque service dans son conteneur - **Réseau Docker** : Communication interne sécurisée ## 📊 Monitoring ### Dashboards Grafana - Bitcoin Miner - Backend Services - SDK Services - Frontend Services - Bitcoin Services - Vue d'ensemble ### Logs centralisés - **Loki** : Stockage des logs - **Promtail** : Collecte des logs - **LogQL** : Requêtes de logs ## 🔄 CI/CD ### Environnement de développement avec agents IA - **Branche unifiée** : `ext` pour tous les dépôts - **Dépôt central** : `4NK_env` sur git.4nkweb.com - **Scripts automatisés** : Clonage et déploiement - **Agents IA** : Contexte et outillage toujours à jour ### LeCoffre - **Tag Docker** : `ext` - **Déclenchement** : Push sur `ext` - **Build** : Automatique via Gitea CI ## 📞 Support Pour toute question ou problème : 1. Vérifier les logs : `docker logs ` 2. Consulter la documentation des agents IA : `4NK_env/IA_agents/` 3. Vérifier le statut : `./scripts/check-repos-status.sh` 4. Utiliser l'outillage complet : Scripts et documentation centralisés