feat: add elements and electrs-liquid (#16)

* feat: add elements and electrs-liquid
This commit is contained in:
dni ⚡ 2025-05-19 11:03:26 +02:00 committed by GitHub
commit 27c9e56b51
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
2 changed files with 74 additions and 1 deletions

View file

@ -241,7 +241,7 @@ services:
hostname: electrs hostname: electrs
restart: always restart: always
image: boltz/electrs:latest image: boltz/electrs:latest
# entrypoint: ["electrs-bitcoin"] entrypoint: ["electrs-bitcoin"]
command: command:
- --electrum-rpc-addr - --electrum-rpc-addr
- electrs:19001 - electrs:19001
@ -264,6 +264,67 @@ services:
volumes: volumes:
- bitcoin-data:/root/.bitcoin - bitcoin-data:/root/.bitcoin
elementsd:
hostname: elementsd
restart: always
image: boltz/elements:latest
expose:
- 31001
ports:
- 31000:31000
- 31002:31002
- 18884:18884
command:
- -chain=liquidregtest
- -txindex=1
- -rest=1
- -server=1
- -rpcallowip=0.0.0.0/0
- -validatepegin=0
- -initialfreecoins=2100000000000000
- -fallbackfee=0.000001
- -rpcbind=0.0.0.0
- -rpcport=18884
- -zmqpubrawtx=tcp://0.0.0.0:31000
- -zmqpubrawblock=tcp://0.0.0.0:31001
- -zmqpubhashblock=tcp://0.0.0.0:31002
- -acceptdiscountct=1
- -creatediscountct=1
volumes:
- elements-data:/root/.elements
electrs-liquid:
hostname: electrs-liquid
restart: always
image: boltz/electrs:latest
entrypoint: ["electrs-liquid"]
command:
- --electrum-rpc-addr
- electrs-liquid:19002
- --http-addr
- electrs-liquid:3003
- --daemon-rpc-addr
- elementsd:18884
- --daemon-dir
- /root/.elements
- --network
- liquidregtest
- --parent-network
- regtest
- --jsonrpc-import
healthcheck:
test: ["CMD-SHELL", "curl -s $(hostname):3003/blocks/tip/height"]
timeout: 15s
retries: 20
interval: 2s
start_period: 5s
ports:
- 19002:19002
- 3003:3003
volumes:
- elements-data:/root/.elements
volumes: volumes:
lnbits-data: lnbits-data:
bitcoin-data: bitcoin-data:
elements-data:

View file

@ -5,6 +5,10 @@ bitcoin-cli-sim() {
docker exec lnbits-bitcoind-1 bitcoin-cli -regtest "$@" docker exec lnbits-bitcoind-1 bitcoin-cli -regtest "$@"
} }
elements-cli-sim() {
docker exec lnbits-elementsd-1 elements-cli -rpcport=18884 -chain=liquidregtest "$@"
}
# args(i, cmd) # args(i, cmd)
lightning-cli-sim() { lightning-cli-sim() {
i=$1 i=$1
@ -111,6 +115,13 @@ lnbits-bitcoin-init(){
bitcoin-cli-sim -generate 150 > /dev/null bitcoin-cli-sim -generate 150 > /dev/null
} }
lnbits-elements-init(){
echo "init_elements_wallet..."
elements-cli-sim createwallet lnbits || elements-cli-sim loadwallet lnbits
echo "mining 150 blocks..."
elements-cli-sim -generate 150 > /dev/null
}
lnbits-init(){ lnbits-init(){
echo "init_lnbits..." echo "init_lnbits..."
docker exec lnbits-lnbits-1 poetry run python tools/create_fake_admin.py docker exec lnbits-lnbits-1 poetry run python tools/create_fake_admin.py
@ -118,6 +129,7 @@ lnbits-init(){
lnbits-regtest-init(){ lnbits-regtest-init(){
lnbits-bitcoin-init lnbits-bitcoin-init
lnbits-elements-init
lnbits-lightning-sync lnbits-lightning-sync
lnbits-lightning-init lnbits-lightning-init
lnbits-init lnbits-init