vls-container/docker-compose.yml
2024-10-26 23:24:32 -03:00

181 lines
4.2 KiB
YAML

version: "3.8"
services:
bitcoin-core:
build:
context: ./bitcoind
args:
- BITCOIN_VERSION=$BITCOIN_VERSION
- BITCOIN_SHA256SUMS_HASH=$BITCOIN_SHA256SUMS_HASH
image: bitcoind:${IMAGE_TAG:-latest}
container_name: bitcoind-test
volumes:
- bitcoin_data:/home/bitcoin/.bitcoin
expose:
- 18332
networks:
lightning:
aliases:
- bitcoind
environment:
- BITCOIN_CHAIN=test
core-lightning:
build:
context: ./lightningd
args:
- CORE_LIGHTNING_REPO=$CORE_LIGHTNING_REPO
- CORE_LIGHTNING_GIT_HASH=$CORE_LIGHTNING_GIT_HASH
- CLBOSS_REPO=$CLBOSS_REPO
- CLBOSS_GIT_HASH=$CLBOSS_GIT_HASH
- CLN_PLUGINS_REPO=$CLN_PLUGINS_REPO
- CLN_PLUGINS_GIT_HASH=$CLN_PLUGINS_GIT_HASH
- VLS_REPO=$VLS_REPO
- VLS_GIT_HASH=$VLS_GIT_HASH
image: lightningd:${IMAGE_TAG:-latest}
container_name: lightningd-test
command:
- --conf=/home/lightning/.lightning/testnet-config
- --bitcoin-rpcconnect=bitcoind
- --log-file=- # stdout
- --log-file=/home/lightning/.lightning/testnet/lightning.log
volumes:
- lightning_data:/home/lightning/.lightning
expose:
- 19735
- 7701
ports:
- 3010:3010
networks:
- lightning
depends_on:
bitcoin-core:
condition: service_healthy
txoo-server:
condition: service_started
txoo:
condition: service_healthy
environment:
- BITCOIND_RPC_URL=http://rpcuser:VLSsigner1@bitcoind:18332
- TXOO_SOURCE_URL=http://txoo-server:80
- RUST_LOG=info
- VLS_NETWORK=testnet
- VLS_BIND=0.0.0.0
- VLS_PORT=7701
txoo:
build:
context: ./txood
args:
- TXOO_REPO=$TXOO_REPO
- TXOO_GIT_HASH=$TXOO_GIT_HASH
image: txood:${IMAGE_TAG:-latest}
container_name: txood-test
restart: unless-stopped
networks:
- lightning
volumes:
- txoo_data:/root/.txoo/
- bitcoin_data:/root/.bitcoin/
depends_on:
bitcoin-core:
condition: service_healthy
environment:
- BITCOIN_NETWORK=testnet
- BITCOIND_RPC_URL=http://rpcuser:VLSsigner1@bitcoind:18332
txoo-server:
image: nginx:1.27-alpine3.20
container_name: txoo-server-test
networks:
- lightning
depends_on:
txoo:
condition: service_started
volumes:
- type: volume
source: txoo_data
target: /usr/share/nginx/html
volume:
subpath: testnet/public
ports:
- "8080:80"
lss:
build:
context: ./lss
args:
- LSS_REPO=$LSS_REPO
- LSS_GIT_HASH=$LSS_GIT_HASH
image: lss:${IMAGE_TAG:-latest}
container_name: lss-test
ports:
- 55551:55551
expose:
- 55551
profiles:
- lss
networks:
- lightning
volumes:
- lss_data:/home/lss/.lss
environment:
- LSS_DATABASE=${LSS_DATABASE:-sled}
- PG_HOST=$PG_HOST
- PG_USER=$PG_USER
- PG_PASS=$PG_PASS
- PG_DB=$PG_DB
vls:
build:
context: ./vlsd
args:
- VLS_REPO=$VLS_REPO
- VLS_GIT_HASH=$VLS_GIT_HASH
- TXOO_PUBLIC_KEY=$TXOO_PUBLIC_KEY
image: vlsd:${IMAGE_TAG:-latest}
container_name: vlsd-test
profiles:
- vls
command:
--log-level=info
--connect=http://core-lightning:7701
${LSS_REMOTE_URL:+--lss=$LSS_REMOTE_URL}
networks:
- lightning
volumes:
- vls_data:/home/vls/.lightning-signer
depends_on:
txoo-server:
condition: service_started
lss:
condition: service_started
required: false
txoo:
condition: service_healthy
environment:
- LSS_REMOTE_URL
- VLS_NETWORK=testnet
- VLS_PERMISSIVE=1
- RUST_LOG=info
- BITCOIND_RPC_URL=http://rpcuser:VLSsigner1@bitcoind:18332
volumes:
bitcoin_data:
name: bitcoin_data
external: true
lightning_data:
name: lightning_data
external: true
txoo_data:
name: txoo_data
external: true
lss_data:
name: lss_data
external: true
vls_data:
name: vls_data
external: true
networks:
lightning: