lecoffre_node/docker-compose.yml

203 lines
4.6 KiB
YAML

services:
tor:
image: dperson/torproxy
container_name: tor-proxy
networks:
btcnet:
aliases:
- tor
restart: unless-stopped
bitcoin:
image: git.4nkweb.com/4nk/bitcoin:latest
container_name: bitcoin-signet
depends_on:
- tor
volumes:
- bitcoin_data:/home/bitcoin/.bitcoin
- ./bitcoin/bitcoin.conf:/etc/bitcoin/bitcoin.conf:ro
networks:
btcnet:
aliases:
- bitcoin
user: root
entrypoint: >
/bin/sh -c "
chown -R bitcoin:bitcoin /home/bitcoin/.bitcoin || echo 'warn: chown partiel (fichiers bind-mount Windows)';
exec su-exec bitcoin bitcoind -conf=/etc/bitcoin/bitcoin.conf -signet"
healthcheck:
test: ["CMD", "bitcoin-cli", "-conf=/etc/bitcoin/bitcoin.conf", "getblockchaininfo"]
interval: 30s
timeout: 10s
retries: 3
restart: unless-stopped
blindbit:
image: git.4nkweb.com/4nk/blindbit-oracle:dev
container_name: blindbit-oracle
depends_on:
bitcoin:
condition: service_healthy
volumes:
- blindbit_data:/root/.blindbit-oracle
- ./blindbit/blindbit.toml:/tmp/blindbit.toml:ro
- bitcoin_data:/home/bitcoin/.bitcoin
entrypoint: >
sh -c "cp /tmp/blindbit.toml /root/.blindbit-oracle/blindbit.toml &&
./main"
networks:
btcnet:
aliases:
- blindbit
restart: unless-stopped
sdk_relay:
image: git.4nkweb.com/4nk/sdk_relay:dev
container_name: sdk_relay
depends_on:
- blindbit
volumes:
- ./relay/sdk_relay.conf:/home/bitcoin/.conf:ro
- sdk_data:/home/bitcoin/.4nk
- bitcoin_data:/home/bitcoin/.bitcoin
ports:
- "8090:8090"
networks:
btcnet:
aliases:
- sdk_relay
logging:
driver: "json-file"
options:
max-size: "10m"
max-file: "3"
environment:
- HOME=/home/bitcoin
- RUST_LOG=DEBUG
entrypoint: >
/bin/sh -lc "mkdir -p /home/bitcoin/.4nk/logs && exec /usr/local/bin/sdk_relay --config /home/bitcoin/.conf 2>&1 | tee -a /home/bitcoin/.4nk/logs/sdk_relay.log"
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost:8090/health"]
interval: 30s
timeout: 10s
retries: 3
restart: unless-stopped
lecoffre-db:
image: postgres:15
container_name: lecoffre-db
env_file:
- .env
volumes:
- db_data:/var/lib/postgresql/data
networks:
btcnet:
aliases:
- lecoffre-db
restart: unless-stopped
lecoffre-back:
image: git.4nkweb.com/4nk/lecoffre-back-mini:dev
container_name: lecoffre-back
env_file:
- .env
ports:
- "8080:8080"
networks:
btcnet:
aliases:
- lecoffre-back
labels:
- "com.centurylinklabs.watchtower.enable=true"
depends_on:
- lecoffre-db
restart: unless-stopped
lecoffre-front:
image: git.4nkweb.com/4nk/lecoffre-front:dev
container_name: lecoffre-front
env_file:
- .env
ports:
- "3000:3000"
networks:
btcnet:
aliases:
- lecoffre-front
labels:
- "com.centurylinklabs.watchtower.enable=true"
restart: unless-stopped
ihm_client:
image: git.4nkweb.com/4nk/ihm_client:dev
container_name: ihm_client
ports:
- "3003:3003"
networks:
btcnet:
aliases:
- ihm_client
labels:
- "com.centurylinklabs.watchtower.enable=true"
restart: unless-stopped
sdk_signer:
image: git.4nkweb.com/4nk/sdk_signer:dev
container_name: sdk_signer
env_file:
- .env
ports:
- "9090:9090"
networks:
btcnet:
aliases:
- sdk_signer
labels:
- "com.centurylinklabs.watchtower.enable=true"
restart: unless-stopped
sdk_storage:
image: git.4nkweb.com/4nk/sdk_storage:dev
container_name: sdk_storage
networks:
btcnet:
aliases:
- sdk_storage
labels:
- "com.centurylinklabs.watchtower.enable=true"
restart: unless-stopped
IA:
image: alpine:latest
container_name: IA
command: tail -f /dev/null
networks:
btcnet:
aliases:
- ia
restart: unless-stopped
watchtower:
image: containrrr/watchtower
container_name: watchtower
volumes:
- /var/run/docker.sock:/var/run/docker.sock
command: --interval 30 --label-enable
networks:
- btcnet
restart: unless-stopped
volumes:
bitcoin_data:
name: 4nk_node_bitcoin_data
blindbit_data:
sdk_data:
networks:
btcnet:
name: 4nk_node_btcnet
driver: bridge
ipam:
config:
- subnet: 172.20.0.0/16