version: "3.8" services: tor: image: dperson/torproxy container_name: tor-proxy networks: btcnet: aliases: - tor ports: - "9052:9050" # Port SOCKS (9052 sur l'hôte, 9050 dans le conteneur) restart: unless-stopped bitcoin: build: ./bitcoin container_name: bitcoin-signet depends_on: - tor volumes: - bitcoin_data:/home/bitcoin/.bitcoin - ./bitcoin/bitcoin.conf:/home/bitcoin/.bitcoin/bitcoin.conf ports: - "38333:38333" # signet p2p - "18443:18443" # signet rpc - "29000:29000" # zmq networks: btcnet: aliases: - bitcoin entrypoint: > /bin/sh -c " mkdir -p /home/bitcoin/.bitcoin/wallets && bitcoind -conf=/home/bitcoin/.bitcoin/bitcoin.conf -signet -printtoconsole" healthcheck: test: ["CMD", "bitcoin-cli", "-conf=/home/bitcoin/.bitcoin/bitcoin.conf", "getblockchaininfo"] interval: 30s timeout: 10s retries: 3 blindbit: build: ./blindbit container_name: blindbit-oracle depends_on: bitcoin: condition: service_healthy volumes: - blindbit_data:/data - ./blindbit/blindbit.toml:/data/blindbit.toml - bitcoin_data:/home/bitcoin/.bitcoin ports: - "8000:8000" networks: btcnet: aliases: - blindbit sdk_relay: build: context: . dockerfile: sdk_relay/Dockerfile container_name: sdk_relay depends_on: - blindbit volumes: - bitcoin_data:/home/bitcoin/.bitcoin - ./bitcoin/bitcoin.conf:/home/bitcoin/.bitcoin/bitcoin.conf - sdk_relay_data:/home/bitcoin/.4nk ports: - "8090:8090" - "8091:8091" networks: btcnet: aliases: - sdk_relay logging: driver: "json-file" options: max-size: "10m" max-file: "3" environment: - RUST_LOG=debug,bitcoincore_rpc=trace - HOME=/home/bitcoin - BITCOIN_COOKIE_PATH=/home/bitcoin/.bitcoin/signet/.cookie restart: on-failure:3 entrypoint: > /bin/sh -c " mkdir -p /home/bitcoin/.4nk && strace -f -e trace=file /usr/local/bin/sdk_relay --config .conf" healthcheck: test: ["CMD", "curl", "-f", "http://localhost:8091/health"] interval: 30s timeout: 10s retries: 3 lecoffre-back: image: git.4nkweb.com/4nk/lecoffre-back-mini:latest container_name: lecoffre-back ports: - "8080:8080" networks: btcnet: aliases: - lecoffre-back labels: - "com.centurylinklabs.watchtower.enable=true" lecoffre-front: image: git.4nkweb.com/4nk/lecoffre-front:latest container_name: lecoffre-front ports: - "3000:3000" networks: btcnet: aliases: - lecoffre-front labels: - "com.centurylinklabs.watchtower.enable=true" ihm_client: image: git.4nkweb.com/4nk/ihm_client:latest container_name: ihm_client ports: - "3001:3001" - "80:80" networks: btcnet: aliases: - ihm_client labels: - "com.centurylinklabs.watchtower.enable=true" watchtower: image: containrrr/watchtower container_name: watchtower volumes: - /var/run/docker.sock:/var/run/docker.sock command: --interval 30 --label-enable networks: - btcnet volumes: bitcoin_data: name: 4nk_node_bitcoin_data blindbit_data: sdk_relay_data: networks: btcnet: name: 4nk_node_btcnet driver: bridge ipam: config: - subnet: 172.20.0.0/16