diff --git a/regtest/docker-compose.yml b/regtest/docker-compose.yml index 2dd3ba32..b6b6c5e0 100644 --- a/regtest/docker-compose.yml +++ b/regtest/docker-compose.yml @@ -30,7 +30,7 @@ services: - bitcoind:/home/bitcoin/.bitcoin lndserver: - image: lightninglabs/lnd:v0.17.0-beta + image: lightninglabs/lnd:v0.18.5-beta container_name: lndserver restart: unless-stopped networks: @@ -68,6 +68,7 @@ services: - loopserver volumes: - "lndserver:/root/.lnd" + - "loopserver:/root/loopserver" depends_on: - lndserver command: @@ -82,8 +83,34 @@ services: - "--bitcoin.zmqpubrawblock=tcp://bitcoind:28332" - "--bitcoin.zmqpubrawtx=tcp://bitcoind:28333" + aperture: + build: + context: https://github.com/lightninglabs/aperture.git + dockerfile: Dockerfile + args: + checkout: v0.3.8-beta + container_name: aperture + restart: unless-stopped + depends_on: + - loopserver + - etcd + networks: + regtest: + aliases: + - aperture + volumes: + - "lndserver:/root/.lnd" + - "loopserver:/root/loopserver" + - "aperture:/root/.aperture" + ports: + - "11018:11018" + entrypoint: [ "/bin/aperture" ] + command: + - "--configfile=/root/.aperture/aperture.yaml" + + lndclient: - image: lightninglabs/lnd:v0.17.0-beta + image: lightninglabs/lnd:v0.18.5-beta container_name: lndclient restart: unless-stopped networks: @@ -124,18 +151,37 @@ services: - loopclient volumes: - "lndclient:/root/.lnd" + - "aperture:/root/.aperture" + - "loopclient:/root/.loop" depends_on: - - lndclient + - aperture command: - "loopd" + - "--experimental" - "--network=regtest" - "--debuglevel=debug" - - "--server.host=loopserver:11009" - - "--server.notls" + - "--server.host=aperture:11018" + - "--server.tlspath=/root/.loop/aperture-tls.cert" - "--lnd.host=lndclient:10009" - "--lnd.macaroonpath=/root/.lnd/data/chain/bitcoin/regtest/admin.macaroon" - "--lnd.tlspath=/root/.lnd/tls.cert" + etcd: + image: bitnami/etcd:3.3.12 + platform: linux/amd64 + container_name: etcd + hostname: etcd + networks: + regtest: + aliases: + - etcd + restart: unless-stopped + ports: + - "2379:2379" + - "2380:2380" + environment: + - ALLOW_NONE_AUTHENTICATION=yes + networks: regtest: @@ -143,3 +189,6 @@ volumes: bitcoind: lndserver: lndclient: + loopserver: + loopclient: + aperture: diff --git a/regtest/regtest.sh b/regtest/regtest.sh index 1dd66f30..1de11f82 100755 --- a/regtest/regtest.sh +++ b/regtest/regtest.sh @@ -77,6 +77,11 @@ function setup() { lndclient openchannel --node_key $LNDSERVER --local_amt 16000000 mine 6 + + docker cp aperture:/root/.aperture/tls.cert /tmp/aperture-tls.cert + chmod 644 /tmp/aperture-tls.cert + docker cp -a /tmp/aperture-tls.cert loopclient:/root/.loop/aperture-tls.cert + } function stop() { @@ -111,7 +116,6 @@ function copy_loopserver_files() { chmod 644 /tmp/loopserver-admin.macaroon docker cp -a /tmp/loopserver-admin.macaroon loopserver:/home/loopserver/admin.macaroon - # copy invoices macaroon to loopserver docker cp lndserver:/root/.lnd/data/chain/bitcoin/regtest/invoices.macaroon /tmp/loopserver-invoices.macaroon chmod 644 /tmp/loopserver-invoices.macaroon @@ -137,8 +141,58 @@ function copy_loopserver_files() { chmod 644 /tmp/loopserver-walletkit.macaroon docker cp -a /tmp/loopserver-walletkit.macaroon loopserver:/home/loopserver/walletkit.macaroon + docker cp loopserver:/home/loopserver/tls.cert /tmp/loopserver-tls.cert + chmod 644 /tmp/loopserver-tls.cert + docker cp -a /tmp/loopserver-tls.cert aperture:/root/.aperture/loopserver-tls.cert + + # create the aperture config and copy it to the aperture container. + write_aperture_config + + docker cp /tmp/aperture.yaml aperture:/root/.aperture/aperture.yaml } + +function write_aperture_config() { + rm -rf /tmp/aperture.yaml + touch /tmp/aperture.yaml && cat > /tmp/aperture.yaml <