4.1 KiB
4.1 KiB
Objet
Analyse synthétique de l’orchestrateur lecoffre_node (Docker Compose + Nginx locaux).
Services et ordre de démarrage
- tor → bitcoin → blindbit → sdk_relay → sdk_signer/sdk_storage → ihm_client → lecoffre-back → lecoffre-front
Détails par service (extraits)
- bitcoin: image
git.4nkweb.com/4nk/bitcoin:latest, volume4nk_node_bitcoin_data, healthcheckgetblockchaininfo - blindbit: oracle, ports
127.0.0.1:8000, healthcheck HTTP, dépend debitcoin - sdk_relay: ports
127.0.0.1:8090, logs vers/home/bitcoin/.4nk/logs/sdk_relay.log, healthcheck/health - lecoffre-back: image
git.4nkweb.com/4nk/lecoffre-back-mini:ext, ports127.0.0.1:8080 - lecoffre-front: image
git.4nkweb.com/4nk/lecoffre-front:ext, ports127.0.0.2:3004:3000 - sdk_signer: ports
127.0.0.1:3001 - sdk_storage: ports
127.0.0.1:8081 - watchtower: mise à jour images via labels
Réseau et volumes
- Réseau:
btcnet(bridge) avec IPAM172.20.0.0/16 - Volumes:
4nk_node_bitcoin_data,blindbit_data,sdk_data
Nginx local
- Conf:
conf/nginx/*(vhosts locaux et dev4) pour proxy et basePath/lecoffre
Points d’attention
- Tags d’images: homogénéiser (
latest,dev,ext) selon politique CI - Exposition locale: vérif des binds
127.0.0.1vs127.0.0.2 - Watchtower: intervalle 30s, labels présents sur services applicatifs
Topologie Docker Compose (détails)
- tor:
btcpayserver/tor:0.4.8.10(aliastorsurbtcnet) - bitcoin:
git.4nkweb.com/4nk/bitcoin:latest, volume4nk_node_bitcoin_data, healthcheckbitcoin-cli getblockchaininfo - blindbit:
git.4nkweb.com/4nk/blindbit-oracle:dev, ports127.0.0.1:8000:8000, healthcheck HTTP, dépend debitcoin - sdk_relay:
git.4nkweb.com/4nk/sdk_relay:dev, ports127.0.0.1:8090:8090, logs dans/home/bitcoin/.4nk/logs/sdk_relay.log, healthcheck/health - sdk_signer:
git.4nkweb.com/4nk/sdk_signer:latest, ports127.0.0.1:3001:3001 - sdk_storage:
git.4nkweb.com/4nk/sdk_storage:latest, ports127.0.0.1:8081:8081 - lecoffre-back:
git.4nkweb.com/4nk/lecoffre-back-mini:ext, ports127.0.0.1:8080:8080 - lecoffre-front:
git.4nkweb.com/4nk/lecoffre-front:ext, ports127.0.0.2:3004:3000 - ihm_client:
git.4nkweb.com/4nk/ihm_client:ext, ports127.0.0.1:3003:3003 - watchtower:
containrrr/watchtower,--interval 30 --label-enable
Réseau et volumes
- Réseau:
btcnet(bridge) IPAM172.20.0.0/16, alias par service (bitcoin, blindbit, sdk_relay, etc.) - Volumes:
4nk_node_bitcoin_data,blindbit_data,sdk_data
Nginx dev4.4nkweb.com (résumé configuration)
/api/→http://127.0.0.1:8080/api/avec CORS dynamique (origines autorisées:http://local.4nkweb.com:3000,https://dev4.4nkweb.com)/back/(.*)→http://127.0.0.1:8080/api/$1/apiv1/(.*)→ réécrit vers/api/v1/$1/→http://127.0.0.1:3003(ihm_client)/lecoffreet/lecoffre/→http://127.0.0.2:3004/lecoffre/(basePath Next.js)/_next/→http://127.0.0.2:3004/_next//blindbit/→http://127.0.0.1:8000//signer/(WebSocket) →http://127.0.0.1:3001/avecUpgrade/Connectionadaptés
Ordre de démarrage recommandé
- Recommandé:
tor→bitcoin→blindbit→sdk_storage→sdk_relay→sdk_signer→ihm_client→lecoffre-back→lecoffre-front - Écart observé: Compose démarre
sdk_relayavantsdk_storage. À harmoniser si dépendances runtime avérées.
Variables .env clefs (rappels)
- Front:
NEXT_PUBLIC_*(host/port/API/basePath/Idnot/Docaposte/4NK) - Back:
PORT,DEFAULT_STORAGE,APP_HOST,STRIPE_*,IDNOT_*,CORS_ALLOWED_ORIGINS
Risques et recommandations
- Uniformiser les tags d’images (
docker-support-v2si applicable) et éviterlatesten prod - Vérifier l’alignement
basePathNext/lecoffre↔ proxys Nginx (routes et assets) - Geler les origines CORS en prod et journaliser les refus
- Surveiller la santé
blindbitetsdk_relay(healthchecks ↔ restart policy)