2026-03-18 18:13:29 +00:00
|
|
|
services:
|
|
|
|
|
|
|
|
|
|
bitcoin:
|
2026-03-18 18:18:08 +00:00
|
|
|
# Bitcoin Knots — Luke Dashjr's fork of Core, stricter mempool policy
|
|
|
|
|
# Image is unofficial but built from reproducible Knots binaries (bitcoinknots.org)
|
|
|
|
|
# For max sovereignty: build from source and replace this image with your own
|
|
|
|
|
# To swap implementations: change image + datadir volume path, nothing else
|
|
|
|
|
image: bitcoinknots/bitcoin:29.3.knots20260210
|
2026-03-18 18:13:29 +00:00
|
|
|
container_name: bitcoin
|
|
|
|
|
restart: unless-stopped
|
|
|
|
|
volumes:
|
2026-03-18 18:18:08 +00:00
|
|
|
- bitcoin_data:/home/bitcoin/.bitcoin
|
2026-03-18 18:13:29 +00:00
|
|
|
ports:
|
|
|
|
|
- "8333:8333"
|
|
|
|
|
networks:
|
|
|
|
|
- node-net
|
|
|
|
|
healthcheck:
|
2026-03-18 18:18:08 +00:00
|
|
|
test: ["CMD", "bitcoin-cli", "-datadir=/home/bitcoin/.bitcoin", "getblockchaininfo"]
|
2026-03-18 18:13:29 +00:00
|
|
|
interval: 60s
|
|
|
|
|
timeout: 10s
|
|
|
|
|
retries: 5
|
|
|
|
|
start_period: 30s
|
|
|
|
|
|
|
|
|
|
lnd:
|
|
|
|
|
image: lightningnetwork/lnd:v0.18.3-beta
|
|
|
|
|
container_name: lnd
|
|
|
|
|
restart: unless-stopped
|
|
|
|
|
depends_on:
|
|
|
|
|
bitcoin:
|
|
|
|
|
condition: service_healthy
|
|
|
|
|
volumes:
|
|
|
|
|
- lnd_data:/root/.lnd
|
|
|
|
|
ports:
|
|
|
|
|
- "9735:9735"
|
|
|
|
|
networks:
|
|
|
|
|
- node-net
|
|
|
|
|
healthcheck:
|
|
|
|
|
test: ["CMD", "lncli", "--network=mainnet", "state"]
|
|
|
|
|
interval: 30s
|
|
|
|
|
timeout: 10s
|
|
|
|
|
retries: 10
|
|
|
|
|
start_period: 60s
|
|
|
|
|
|
|
|
|
|
lnbits:
|
|
|
|
|
image: lnbits/lnbits:latest
|
|
|
|
|
container_name: lnbits
|
|
|
|
|
restart: unless-stopped
|
|
|
|
|
depends_on:
|
|
|
|
|
lnd:
|
|
|
|
|
condition: service_started
|
|
|
|
|
ports:
|
|
|
|
|
- "127.0.0.1:5000:5000"
|
|
|
|
|
volumes:
|
|
|
|
|
- lnbits_data:/app/data
|
|
|
|
|
- lnd_data:/lnd:ro
|
|
|
|
|
environment:
|
|
|
|
|
- LNBITS_DATA_FOLDER=/app/data
|
|
|
|
|
- LNBITS_BACKEND_WALLET_CLASS=LndRestWallet
|
|
|
|
|
- LND_REST_ENDPOINT=https://lnd:8080
|
|
|
|
|
- LND_REST_CERT=/lnd/tls.cert
|
|
|
|
|
- LND_REST_MACAROON=/lnd/data/chain/bitcoin/mainnet/invoice.macaroon
|
|
|
|
|
- LNBITS_SITE_TITLE=Timmy Node
|
|
|
|
|
- LNBITS_SITE_TAGLINE=Lightning AI Agent Infrastructure
|
|
|
|
|
- UVICORN_HOST=0.0.0.0
|
|
|
|
|
- UVICORN_PORT=5000
|
|
|
|
|
networks:
|
|
|
|
|
- node-net
|
|
|
|
|
|
|
|
|
|
networks:
|
|
|
|
|
node-net:
|
|
|
|
|
driver: bridge
|
|
|
|
|
|
|
|
|
|
volumes:
|
|
|
|
|
bitcoin_data:
|
|
|
|
|
driver: local
|
|
|
|
|
driver_opts:
|
|
|
|
|
type: none
|
|
|
|
|
o: bind
|
|
|
|
|
device: /data/bitcoin
|
|
|
|
|
lnd_data:
|
|
|
|
|
driver: local
|
|
|
|
|
driver_opts:
|
|
|
|
|
type: none
|
|
|
|
|
o: bind
|
|
|
|
|
device: /data/lnd
|
|
|
|
|
lnbits_data:
|
|
|
|
|
driver: local
|
|
|
|
|
driver_opts:
|
|
|
|
|
type: none
|
|
|
|
|
o: bind
|
|
|
|
|
device: /data/lnbits
|