1+ services :
2+ ldk-server :
3+ container_name : ldk-server
4+ build :
5+ context : .
6+ args :
7+ BUILD_FEATURES : " "
8+ command : [
9+ " --node-listening-address=0.0.0.0:3001" ,
10+ " --node-rest-service-address=0.0.0.0:3000" ,
11+ " --bitcoind-rpc-host=ldk-server-bitcoin" ,
12+ " --bitcoind-rpc-port=18443" ,
13+ " --bitcoind-rpc-user=user" ,
14+ " --bitcoind-rpc-password=pass" ,
15+ ]
16+ ports :
17+ - " 3000:3000"
18+ - " 3001:3001"
19+ networks :
20+ - ldk-server
21+ depends_on :
22+ bitcoin :
23+ condition : service_healthy
24+ profiles : ["ldk-server"]
25+
26+ bitcoin :
27+ container_name : ldk-server-bitcoin
28+ image : blockstream/bitcoind:29.1@sha256:9fcffa83feed0fc382dfb2f26990ca07656d150ba49434096a5aeedac6695a01
29+ platform : linux/amd64
30+ command :
31+ [
32+ " bitcoind" ,
33+ " -printtoconsole" ,
34+ " -regtest=1" ,
35+ " -rpcallowip=0.0.0.0/0" ,
36+ " -rpcbind=0.0.0.0" ,
37+ " -rpcuser=user" ,
38+ " -rpcpassword=pass" ,
39+ " -fallbackfee=0.00001" ,
40+ " -zmqpubrawblock=tcp://0.0.0.0:28332" ,
41+ " -zmqpubrawtx=tcp://0.0.0.0:28333"
42+ ]
43+ ports :
44+ - " 18443:18443"
45+ - " 18444:18444"
46+ networks :
47+ - ldk-server
48+ healthcheck :
49+ test : ["CMD", "bitcoin-cli", "-regtest", "-rpcuser=user", "-rpcpassword=pass", "getblockchaininfo"]
50+ interval : 5s
51+ timeout : 10s
52+ retries : 5
53+ # Example command: bitcoin-cli -regtest -rpcuser=user -rpcpassword=pass getblockchaininfo
54+
55+ lnd :
56+ image : lightninglabs/lnd:v0.18.5-beta@sha256:2b560c9beb559c57ab2f2da1dfed80d286cf11a6dc6e4354cab84aafba79b6f6
57+ container_name : ldk-server-lnd
58+ ports :
59+ - " 9735:9735" # P2P
60+ - " 10009:10009" # RPC
61+ command :
62+ - " --noseedbackup"
63+ - " --trickledelay=5000"
64+ - " --alias=ldk-node-lnd-test"
65+ - " --externalip=lnd:9735"
66+ - " --bitcoin.active"
67+ - " --bitcoin.regtest"
68+ - " --bitcoin.node=bitcoind"
69+ - " --bitcoind.rpchost=ldk-server-bitcoin:18443"
70+ - " --bitcoind.rpcuser=user"
71+ - " --bitcoind.rpcpass=pass"
72+ - " --bitcoind.zmqpubrawblock=tcp://ldk-server-bitcoin:28332"
73+ - " --bitcoind.zmqpubrawtx=tcp://ldk-server-bitcoin:28333"
74+ - " --accept-keysend"
75+ - " --accept-amp"
76+ - " --rpclisten=0.0.0.0:10009"
77+ - " --tlsextradomain=lnd"
78+ - " --tlsextraip=0.0.0.0"
79+ - " --listen=0.0.0.0:9735"
80+ depends_on :
81+ bitcoin :
82+ condition : service_healthy
83+ networks :
84+ - ldk-server
85+ # Example command: lncli --tlscertpath=/root/.lnd/tls.cert --macaroonpath=/root/.lnd/data/chain/bitcoin/regtest/admin.macaroon getinfo
86+
87+ cln :
88+ image : blockstream/lightningd:v25.05@sha256:4f61a5e77deb27c14ed223dd789bb3bfafe00c0c13f4f1e973c0a43b8ad5de90
89+ container_name : ldk-server-cln
90+ platform : linux/amd64
91+ command :
92+ [
93+ " --bitcoin-rpcconnect=ldk-server-bitcoin" ,
94+ " --bitcoin-rpcport=18443" ,
95+ " --bitcoin-rpcuser=user" ,
96+ " --bitcoin-rpcpassword=pass" ,
97+ " --network=regtest" ,
98+ " --log-level=debug" ,
99+ " --alias=ldk-server-cln" ,
100+ ]
101+ ports :
102+ - " 19846:19846" # RPC
103+ - " 9736:9736" # P2P
104+ depends_on :
105+ bitcoin :
106+ condition : service_healthy
107+ networks :
108+ - ldk-server
109+ # Example command: lightning-cli --network=regtest getinfo
110+
111+ rabbitmq :
112+ image : rabbitmq:3-management
113+ container_name : ldk-server-rabbitmq
114+ ports :
115+ - " 5672:5672"
116+ - " 15672:15672"
117+ networks :
118+ - ldk-server
119+ profiles : ["rabbitmq"]
120+
121+ networks :
122+ ldk-server :
123+ driver : bridge
0 commit comments