lecoffre_node/docs/ANALYSE.md
2025-09-19 20:37:41 +00:00

3.0 KiB
Raw Blame History

Analyse détaillée

Périmètre

Analyse du nœud dorchestration lecoffre_node et de son docker-compose.yml (services, images, ports, volumes, dépendances interservices).

Stack et orchestration

  • Compose: version: "3.9"
  • Services: tor, bitcoin, blindbit, sdk_relay, lecoffre-back (ext), lecoffre-front (ext), ihm_client (ext), sdk_signer, sdk_storage, watchtower.
  • Réseau: bridge 4nk_node_btcnet (subnet 172.20.0.0/16).
  • Volumes:
    • 4nk_node_bitcoin_data/home/bitcoin/.bitcoin
    • blindbit_data/root/.blindbit-oracle
    • sdk_data/home/bitcoin/.4nk

Ordre de démarrage et dépendances

  • torbitcoin (healthcheck) → blindbit (healthcheck) → sdk_relay (healthcheck)
  • Services applicatifs (lecoffre-back, lecoffre-front, ihm_client) démarrent ensuite.
  • sdk_signer et sdk_storage sont indépendants du pipeline Bitcoin/Blindbit.

Images et tags

  • tor: btcpayserver/tor:0.4.8.10
  • bitcoin: git.4nkweb.com/4nk/bitcoin:latest
  • blindbit: git.4nkweb.com/4nk/blindbit-oracle:dev
  • sdk_relay: git.4nkweb.com/4nk/sdk_relay:dev
  • lecoffre-back: git.4nkweb.com/4nk/lecoffre-back-mini:ext
  • lecoffre-front: git.4nkweb.com/4nk/lecoffre-front:ext
  • ihm_client: git.4nkweb.com/4nk/ihm_client:ext
  • sdk_signer: git.4nkweb.com/4nk/sdk_signer:latest
  • sdk_storage: git.4nkweb.com/4nk/sdk_storage:latest
  • watchtower: containrrr/watchtower

Ports exposés (localhost)

  • blindbit: 8000
  • sdk_relay: 8090
  • lecoffre-back: 8080
  • lecoffre-front: 3004→3000 (127.0.0.2)
  • ihm_client: 3003
  • sdk_signer: 3001
  • sdk_storage: 8081

Configuration et logs

  • bitcoin: monte ./bitcoin/bitcoin.conf en lecture seule.
  • blindbit: copie ./blindbit/blindbit.toml vers $HOME/.blindbit-oracle/blindbit.toml.
  • sdk_relay: ./relay/sdk_relay.conf monté en lecture seule; sortie multiplexée vers /home/bitcoin/.4nk/logs/sdk_relay.log.

Healthchecks

  • bitcoin: bitcoin-cli getblockchaininfo
  • blindbit: sondage HTTP GET /tweaks/1
  • sdk_relay: GET /health

Risques et incohérences relevés

  • Tags dimages hétérogènes (latest, dev, ext). Préférer une convention unique et traçable.
  • Contrainte interne: usage recommandé du tag docker-support-v2 au lieu de latest. Harmonisation à planifier.
  • sdk_signer listé alors quil nest pas utilisé sur la machine. Éviter son démarrage par défaut pour réduire lempreinte.
  • Exposition multiIP (127.0.0.2 pour lecoffre-front). Vérifier la résolution locale et la compatibilité outillage.

Actions proposées

  • Normaliser les tags dimages (dev-test pour branches de test; docker-support-v2 pour releases) et documenter la politique.
  • Paramétrer le démarrage conditionnel de sdk_signer (profil/override compose).
  • Centraliser les variables denvironnement communes dans .env et documenter leurs valeurs attendues.
  • Aligner la rotation des logs et vérifier la capacité des volumes (sdk_data, bitcoin_data).