4NK_env/README.md
LeCoffre Deployment 17c572b4ec ci: docker_tag=ext
Initial commit - 4NK Environment
- Configuration complète LeCoffre
- Architecture autonome avec Nginx intégré
- Scripts de déploiement
- Documentation IA_agents
- Support redirections IdNot (port 3000)
- Monitoring Grafana/Loki/Promtail
2025-09-21 19:40:18 +00:00

4.2 KiB

4NK Environment

Environnement complet pour le déploiement de LeCoffre et tous ses services.

🏗️ Architecture

4NK_env/
├── lecoffre_node/          # Orchestrateur principal avec Nginx intégré
├── sdk_relay/              # Service de relais WebSocket
├── sdk_signer/             # Service de signature
├── sdk_storage/            # Service de stockage
├── sdk_client/             # Client SDK
├── sdk_common/             # Composants communs
├── sdk-signer-client/      # Client signeur
├── ihm_client/             # Interface utilisateur
├── lecoffre-back-mini/     # API Backend
├── lecoffre-front/         # Frontend Next.js
├── doc_api/                # Documentation API
├── IA_agents/              # Agents IA et documentation
└── scripts/                # Scripts de déploiement
    ├── clone-all-repos.sh      # Clonage de tous les projets
    ├── init-4nk-env-repo.sh    # Initialisation du dépôt 4NK_env
    └── check-repos-status.sh   # Vérification du statut

🚀 Déploiement

1. Clonage de tous les projets (branche ext)

cd /home/debian/4NK_env
./scripts/clone-all-repos.sh

2. Initialisation du dépôt 4NK_env

./scripts/init-4nk-env-repo.sh

3. Architecture autonome

cd lecoffre_node
./scripts/deploy-autonomous.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 http://local.4nkweb.com:3000/ 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

Architecture Autonome

  • 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

  • IA_agents/context.md : Contexte général du projet
  • IA_agents/deploy.md : Procédures de déploiement
  • IA_agents/flux.md : Architecture des flux
  • lecoffre_node/README-AUTONOMOUS.md : Architecture autonome

🛠️ Scripts Utiles

Vérification du statut

./scripts/check-repos-status.sh

Clonage des projets

./scripts/clone-all-repos.sh

Initialisation du dépôt

./scripts/init-4nk-env-repo.sh

🔐 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

  • Branche : ext
  • 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 <container>
  2. Consulter la documentation : IA_agents/
  3. Vérifier le statut : ./scripts/check-repos-status.sh