Skip to content

Commit 9a38ab0

Browse files
feat: add Docker Compose for LND, Bitcoind, and Electrs
Sets up a local environment for LND integration testing in CI Closes 505
1 parent 9c02f23 commit 9a38ab0

File tree

1 file changed

+87
-0
lines changed

1 file changed

+87
-0
lines changed

docker-compose-lnd.yml

Lines changed: 87 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,87 @@
1+
services:
2+
bitcoin:
3+
image: blockstream/bitcoind:24.1
4+
platform: linux/amd64
5+
command:
6+
[
7+
"bitcoind",
8+
"-printtoconsole",
9+
"-regtest=1",
10+
"-rpcallowip=0.0.0.0/0",
11+
"-rpcbind=0.0.0.0",
12+
"-rpcuser=user",
13+
"-rpcpassword=pass",
14+
"-fallbackfee=0.00001",
15+
"-zmqpubrawblock=tcp://0.0.0.0:28332",
16+
"-zmqpubrawtx=tcp://0.0.0.0:28333"
17+
]
18+
ports:
19+
- "18443:18443" # Regtest RPC port
20+
- "18444:18444" # Regtest P2P port
21+
- "28332:28332" # ZMQ block port
22+
- "28333:28333" # ZMQ tx port
23+
networks:
24+
- bitcoin-electrs
25+
healthcheck:
26+
test: ["CMD", "bitcoin-cli", "-regtest", "-rpcuser=user", "-rpcpassword=pass", "getblockchaininfo"]
27+
interval: 5s
28+
timeout: 10s
29+
retries: 5
30+
31+
electrs:
32+
image: blockstream/esplora:electrs-cd9f90c115751eb9d2bca9a4da89d10d048ae931
33+
platform: linux/amd64
34+
depends_on:
35+
bitcoin:
36+
condition: service_healthy
37+
command:
38+
[
39+
"/app/electrs_bitcoin/bin/electrs",
40+
"-vvvv",
41+
"--timestamp",
42+
"--jsonrpc-import",
43+
"--cookie=user:pass",
44+
"--network=regtest",
45+
"--daemon-rpc-addr=bitcoin:18443",
46+
"--http-addr=0.0.0.0:3002",
47+
"--electrum-rpc-addr=0.0.0.0:50001"
48+
]
49+
ports:
50+
- "3002:3002"
51+
- "50001:50001"
52+
networks:
53+
- bitcoin-electrs
54+
55+
lnd:
56+
image: lightninglabs/lnd:v0.18.5-beta
57+
container_name: ldk-node-lnd
58+
depends_on:
59+
- bitcoin
60+
volumes:
61+
- ${LND_DATA_DIR}:/root/.lnd
62+
ports:
63+
- "8081:8081"
64+
- "9735:9735"
65+
command:
66+
- "--noseedbackup"
67+
- "--trickledelay=5000"
68+
- "--alias=ldk-node-lnd-test"
69+
- "--externalip=lnd:9735"
70+
- "--bitcoin.active"
71+
- "--bitcoin.regtest"
72+
- "--bitcoin.node=bitcoind"
73+
- "--bitcoind.rpchost=bitcoin:18443"
74+
- "--bitcoind.rpcuser=user"
75+
- "--bitcoind.rpcpass=pass"
76+
- "--bitcoind.zmqpubrawblock=tcp://bitcoin:28332"
77+
- "--bitcoind.zmqpubrawtx=tcp://bitcoin:28333"
78+
- "--accept-keysend"
79+
- "--rpclisten=0.0.0.0:8081"
80+
- "--tlsextradomain=lnd"
81+
- "--tlsextraip=0.0.0.0"
82+
networks:
83+
- bitcoin-electrs
84+
85+
networks:
86+
bitcoin-electrs:
87+
driver: bridge

0 commit comments

Comments
 (0)