version: "3.7" x-logging: &default-logging driver: "json-file" options: max-size: "50m" max-file: "3" services: bitcoind: container_name: "bitcoind" build: . user: "0:1000" logging: *default-logging restart: always stop_grace_period: 1m volumes: - ~/volumes/.bitcoin:/root/.bitcoin environment: UACOMMENT: $UACOMMENT BLOCKPRODUCTIONDELAY: $BLOCKPRODUCTIONDELAY NBITS: $NBITS RPCPASSWORD: $RPCPASSWORD PRIVKEY: $PRIVKEY SIGNETCHALLENGE: $SIGNETCHALLENGE EXTERNAL_IP: $EXTERNAL_IP ports: - "28332:28332" - "28333:28333" - "28334:28334" - "38332:38332" - "38333:38333" - "38334:38334" lnd: container_name: "lnd" image: lightninglabs/lnd:v0.18.2-beta user: "0:1000" logging: *default-logging restart: always stop_grace_period: 10m environment: RPCPASSWORD: $RPCPASSWORD command: [ "--bitcoin.active", "--bitcoin.signet", "--bitcoin.node=bitcoind", "--maxpendingchannels=10", "--rpclisten=0.0.0.0:10009", "--restlisten=0.0.0.0:8081", "--bitcoind.rpchost=bitcoind:38332", "--bitcoind.rpcuser=bitcoin", "--bitcoind.rpcpass=$RPCPASSWORD", "--bitcoind.zmqpubrawblock=tcp://bitcoind:28332", "--bitcoind.zmqpubrawtx=tcp://bitcoind:28333", "--db.bolt.auto-compact", "--db.prune-revocation", "--alias=Faucet LND", "--externalip=mutinynet.com", "--externalip=gfg7fwat27mnsmlog7wbgi6a53f2b5rj56bwokcfk45bacnb4z5kt5ad.onion", "--tlsextradomain=mutinynet.com", "--tlsextradomain=lnd", "--protocol.option-scid-alias", "--protocol.wumbo-channels", "--accept-keysend", "--minchansize=25000", "--noseedbackup", "--gc-canceled-invoices-on-startup", "--coin-selection-strategy=random", "--protocol.custom-message=513", "--protocol.custom-nodeann=39", "--protocol.custom-init=39", ] volumes: - ~/volumes/.lnd:/root/.lnd ports: - "9735:9735" - "10009:10009" - "8081:8081" lndk: build: ./lndk restart: unless-stopped user: "0:1000" logging: *default-logging depends_on: - lnd command: --address=https://lnd:10009 --cert-path=/root/.lnd/tls.cert --macaroon-path=/root/.lnd/data/chain/bitcoin/signet/admin.macaroon --log-level=trace --grpc-host=0.0.0.0 environment: - RUST_BACKTRACE=1 volumes: - ~/volumes/lndk:/root/.lndk - ~/volumes/.lnd:/root/.lnd:ro rgs_server: container_name: "rgs-server" logging: *default-logging restart: always stop_grace_period: 1m build: context: ./rapid-gossip-sync-server dockerfile: ./docker/Dockerfile.rgs volumes: - ~/volumes/rgs:/usr/src/app:cached links: - postgres - bitcoind depends_on: - postgres environment: RAPID_GOSSIP_SYNC_SERVER_DB_HOST: postgres RAPID_GOSSIP_SYNC_SERVER_DB_USER: lightning-rgs RAPID_GOSSIP_SYNC_SERVER_DB_PASSWORD: docker RAPID_GOSSIP_SYNC_SERVER_DB_NAME: ln_graph_sync RAPID_GOSSIP_SYNC_SERVER_NETWORK: signet RAPID_GOSSIP_SYNC_SERVER_SNAPSHOT_INTERVAL: 3600 # 1 hour BITCOIN_REST_DOMAIN: bitcoind BITCOIN_REST_PORT: 38332 LN_PEERS: 02465ed5be53d04fde66c9418ff14a5f2267723810176c9212b722e542dc1afb1b@lnd:9735 # lnd's node id entrypoint: [ "rapid-gossip-sync-server" ] postgres: container_name: "postgres" image: 'postgres:12-alpine' logging: *default-logging restart: always stop_grace_period: 1m user: "0:1000" ports: - "5432:5432" volumes: - ~/volumes/postgres:/var/lib/postgresql/data environment: POSTGRES_USER: lightning-rgs POSTGRES_PASSWORD: docker POSTGRES_DB: ln_graph_sync electrs: container_name: "electrs" build: context: ./electrs user: "0:1000" logging: *default-logging restart: always stop_grace_period: 1m environment: FLAGS: '-vvvv --signet-magic cb2ddfa5 --jsonrpc-import --daemon-dir /root/.bitcoin/signet --daemon-rpc-addr bitcoind:38332 --timestamp --blocks-dir /root/.bitcoin/signet/blocks --cookie=bitcoin:$RPCPASSWORD --db-dir /root/.electrs --network signet --electrum-rpc-addr 0.0.0.0:50001 --http-addr 0.0.0.0:3003' volumes: - ~/volumes/electrs:/root/.electrs ports: - "3003:3003" - "50001:50001" nutshell: container_name: "nutshell" image: 'cashubtc/nutshell:0.15.2' logging: *default-logging restart: always stop_grace_period: 1m user: "0:1000" ports: - "3338:3338" environment: MINT_LIGHTNING_BACKEND: "LndRestWallet" MINT_LISTEN_HOST: "0.0.0.0" MINT_LISTEN_PORT: "3338" MINT_PRIVATE_KEY: $MINT_PRIVATE_KEY MINT_LND_REST_ENDPOINT: "https://lnd:8081" MINT_LND_REST_CERT: "/root/.lnd/tls.cert" MINT_LND_REST_MACAROON: "/root/.lnd/data/chain/bitcoin/signet/admin.macaroon" command: [ "poetry", "run", "mint" ] volumes: - ~/volumes/.lnd:/root/.lnd:ro - ~/volumes/nutshell:/root/.cashu faucet: container_name: "faucet" image: ghcr.io/mutinywallet/mutinynet-faucet:master user: "0:1000" logging: *default-logging restart: always stop_grace_period: 1m volumes: - ~/volumes/faucet:/root/.faucet ports: - "3000:3000" faucet_backend: container_name: "faucet_backend" image: ghcr.io/mutinywallet/mutinynet-faucet-rs:master environment: RUST_LOG: "info" BITCOIN_RPC_HOST_AND_PORT: "bitcoind:38332" BITCOIN_RPC_USER: "bitcoin" BITCOIN_RPC_PASSWORD: $RPCPASSWORD NSEC: $NSEC NETWORK: "signet" HOST: "https://faucet.mutinynet.com" GRPC_PORT: "10009" GRPC_HOST: "lnd" TLS_CERT_PATH: "/root/.lnd/tls.cert" ADMIN_MACAROON_PATH: "/root/.lnd/data/chain/bitcoin/signet/admin.macaroon" user: "0:1000" logging: *default-logging restart: always stop_grace_period: 1m volumes: - ~/volumes/.lnd:/root/.lnd:ro ports: - "3001:3001" web: container_name: "mempool_frontend" environment: MAINNET_ENABLED: "false" ROOT_NETWORK: "signet" FRONTEND_HTTP_PORT: "8080" BACKEND_MAINNET_HTTP_HOST: "api" LIGHTNING: "true" image: mempool/frontend:latest user: "0:1000" logging: *default-logging restart: always stop_grace_period: 1m command: "./wait-for db:3306 --timeout=720 -- nginx -g 'daemon off;'" ports: - "8080:8080" api: container_name: "mempool_backend" environment: MEMPOOL_NETWORK: "signet" MEMPOOL_BACKEND: "none" ELECTRUM_HOST: "electrs" ELECTRUM_PORT: "50001" ELECTRUM_TLS_ENABLED: "false" ESPLORA_REST_API_URL: "http://electrs:3003" CORE_RPC_HOST: "bitcoind" CORE_RPC_PORT: "38332" CORE_RPC_USERNAME: "bitcoin" CORE_RPC_PASSWORD: $RPCPASSWORD CORE_RPC_TIMEOUT: "60000" DATABASE_ENABLED: "true" DATABASE_HOST: "db" DATABASE_DATABASE: "mempool" DATABASE_USERNAME: "mempool" DATABASE_PASSWORD: "mempool" STATISTICS_ENABLED: "false" LIGHTNING_ENABLED: "true" LIGHTNING_BACKEND: "lnd" LND_TLS_CERT_PATH: "/root/.lnd/tls.cert" LND_MACAROON_PATH: "/root/.lnd/data/chain/bitcoin/signet/admin.macaroon" LND_REST_API_URL: "https://lnd:8081" image: mempool/backend:latest logging: *default-logging user: "0:1000" restart: always stop_grace_period: 1m command: "./wait-for-it.sh db:3306 --timeout=720 --strict -- ./start.sh" ports: - "8889:8889" - "8999:8999" volumes: - ~/volumes/mempool:/backend/cache - ~/volumes/.lnd:/root/.lnd:ro db: container_name: "mempool_db" environment: MYSQL_DATABASE: "mempool" MYSQL_USER: "mempool" MYSQL_PASSWORD: "mempool" MYSQL_ROOT_PASSWORD: "admin" image: mariadb:10.5.8 logging: *default-logging user: "0:1000" restart: always stop_grace_period: 1m volumes: - ~/volumes/mysql/data:/var/lib/mysql