From e0f5f2592f528b77000dfb442db94ceb0f5ebaeb Mon Sep 17 00:00:00 2001 From: gruve-p Date: Tue, 10 Mar 2020 07:51:35 +0100 Subject: [PATCH] Add eclair for GRS and fix GRS LND (#269) * Add eclair for GRS and fix GRS LND * Make eclair scripts executable * Make some missed scripts executable * Updated documentation and build all images script * Revert "Updated documentation and build all images script" This reverts commit 42ed8eae692c076baee638accd06c5543a40cc26. * Update Documentation and all build images * Revert "Make some missed scripts executable" This reverts commit fd0da4c52a5b36ff6140cc84ebf358a2535ab9b0. * Update Program.cs * Make build all images script executable again * run update-repo.sh --- README.md | 5 +- contrib/DockerFileBuildHelper/Program.cs | 5 ++ contrib/build-all-images.sh | 14 ++++- .../crypto-definitions.json | 6 +- .../docker-fragments/groestlcoin-eclair.yml | 55 +++++++++++++++++++ groestlcoin-eclair-cli.ps1 | 1 + groestlcoin-eclair-cli.sh | 3 + 7 files changed, 82 insertions(+), 7 deletions(-) create mode 100644 docker-compose-generator/docker-fragments/groestlcoin-eclair.yml create mode 100755 groestlcoin-eclair-cli.ps1 create mode 100755 groestlcoin-eclair-cli.sh diff --git a/README.md b/README.md index 9b93d3e..228b260 100644 --- a/README.md +++ b/README.md @@ -342,6 +342,7 @@ We are trying to update our dependencies to run on `arm32v7` and `x64` boards. H | groestlcoin/lightning | v0.8.1 | [✔️](https://raw.githubusercontent.com/Groestlcoin/lightning/v0.8.1/Dockerfile) | ️❌ | ️❌ | [Github](https://github.com/Groestlcoin/lightning) - [DockerHub](https://hub.docker.com/r/groestlcoin/lightning) | | groestlcoin/groestlcoin-lightning-charge | version-0.4.16 | [✔️](https://raw.githubusercontent.com/Groestlcoin/groestlcoin-lightning-charge/v0.4.16/Dockerfile) | ️❌ | ️❌ | [Github](https://github.com/Groestlcoin/groestlcoin-lightning-charge) - [DockerHub](https://hub.docker.com/r/groestlcoin/groestlcoin-lightning-charge) | | groestlcoin/groestlcoin-spark | version-0.2.12 | [✔️](https://raw.githubusercontent.com/Groestlcoin/groestlcoin-spark/v0.2.12/Dockerfile) | ️❌ | ️❌ | [Github](https://github.com/Groestlcoin/groestlcoin-spark) - [DockerHub](https://hub.docker.com/r/groestlcoin/groestlcoin-spark) | +| groestlcoin/eclair | v0.3.3 | [✔️](https://raw.githubusercontent.com/Groestlcoin/eclair/v0.3.3/Dockerfile) | ️❌ | ️❌ | [Github](https://github.com/Groestlcoin/eclair) - [DockerHub](https://hub.docker.com/r/groestlcoin/eclair) | | groestlcoin/lnd | v0.8.2-grs | [✔️](https://raw.githubusercontent.com/Groestlcoin/lnd/v0.8.2-grs/Dockerfile) | ️❌ | ️❌ | [Github](https://github.com/Groestlcoin/lnd) - [DockerHub](https://hub.docker.com/r/groestlcoin/lnd) | | btcpayserver/elements | 0.18.1.1-1 | [✔️](https://raw.githubusercontent.com/btcpayserver/dockerfile-deps/Elements/0.18.1.1-1/Elements/0.18.1.1/linuxamd64.Dockerfile) | [✔️](https://raw.githubusercontent.com/btcpayserver/dockerfile-deps/Elements/0.18.1.1-1/Elements/0.18.1.1/linuxarm32v7.Dockerfile) | [✔️](https://raw.githubusercontent.com/btcpayserver/dockerfile-deps/Elements/0.18.1.1-1/Elements/0.18.1.1/linuxarm64v8.Dockerfile) | [Github](https://github.com/btcpayserver/dockerfile-deps) - [DockerHub](https://hub.docker.com/r/btcpayserver/elements) | | btcpayserver/litecoin | 0.17.1-1 | [✔️](https://raw.githubusercontent.com/btcpayserver/dockerfile-deps/Litecoin/0.17.1-1/Litecoin/0.17.1/linuxamd64.Dockerfile) | [✔️](https://raw.githubusercontent.com/btcpayserver/dockerfile-deps/Litecoin/0.17.1-1/Litecoin/0.17.1/linuxarm32v7.Dockerfile) | ️❌ | [Github](https://github.com/btcpayserver/dockerfile-deps) - [DockerHub](https://hub.docker.com/r/btcpayserver/litecoin) | @@ -450,8 +451,8 @@ You can change the ports for HTTP and HTTPS by setting the environment variables When you set `REVERSEPROXY_HTTP_PORT` to another value than 80, the built-in Let's Encrypt certificate will not work, as Let's Encrypt will try to validate your SSL certificate request by connecting from the internet to your domain on port 80. This validation request should be able to reach BTCPay Server in order to receive the certificate. -If you need to run on a different port, it's best to terminate SSL using another web proxy and forward your traffic. +If you need to run on a different port, it's best to terminate SSL using another web proxy and forward your traffic. -## Can I offload HTTPS termination? +## Can I offload HTTPS termination? Yes. Please [see the documentation](https://docs.btcpayserver.org/faq-and-common-issues/faq-deployment#can-i-use-an-existing-nginx-server-as-a-reverse-proxy-with-ssl-termination). diff --git a/contrib/DockerFileBuildHelper/Program.cs b/contrib/DockerFileBuildHelper/Program.cs index 5893281..c23f20a 100644 --- a/contrib/DockerFileBuildHelper/Program.cs +++ b/contrib/DockerFileBuildHelper/Program.cs @@ -325,6 +325,11 @@ namespace DockerFileBuildHelper dockerInfo.GitLink = "https://github.com/ACINQ/eclair"; dockerInfo.GitRef = $"{image.Tag}"; break; + case "groestlcoin/eclair": + dockerInfo.DockerFilePath = $"Dockerfile"; + dockerInfo.GitLink = "https://github.com/Groestlcoin/eclair"; + dockerInfo.GitRef = $"{image.Tag}"; + break; case "isso": dockerInfo.DockerFilePath = $"Dockerfile"; dockerInfo.GitLink = "https://github.com/JeffVandrewJr/isso"; diff --git a/contrib/build-all-images.sh b/contrib/build-all-images.sh index 045ba8e..48fddd1 100755 --- a/contrib/build-all-images.sh +++ b/contrib/build-all-images.sh @@ -317,6 +317,18 @@ docker build -f "$DOCKERFILE" -t "groestlcoin/groestlcoin-spark:version-0.2.12" cd - && cd .. +# Build eclair +# https://raw.githubusercontent.com/Groestlcoin/eclair/v0.3.3/Dockerfile +DOCKERFILE="Dockerfile" +echo "Building groestlcoin/eclair:v0.3.3" +git clone https://github.com/Groestlcoin/eclair eclair +cd eclair +git checkout v0.3.3 +cd "$(dirname $DOCKERFILE)" +docker build -f "$DOCKERFILE" -t "groestlcoin/eclair:v0.3.3" . +cd - && cd .. + + # Build lnd # https://raw.githubusercontent.com/Groestlcoin/lnd/v0.8.2-grs/Dockerfile DOCKERFILE="Dockerfile" @@ -765,5 +777,3 @@ git checkout master cd "$(dirname $DOCKERFILE)" docker build -f "$DOCKERFILE" -t "romanornr/docker-viacoin:0.15.2" . cd - && cd .. - - diff --git a/docker-compose-generator/crypto-definitions.json b/docker-compose-generator/crypto-definitions.json index a863c71..5b92a0f 100644 --- a/docker-compose-generator/crypto-definitions.json +++ b/docker-compose-generator/crypto-definitions.json @@ -38,8 +38,8 @@ "Crypto": "grs", "CryptoFragment": "groestlcoin", "CLightningFragment": "groestlcoin-clightning", - "LNDFragment": null, - "EclairFragment": null + "LNDFragment": "groestlcoin-lnd", + "EclairFragment": "groestlcoin-eclair" }, { "Crypto": "via", @@ -83,4 +83,4 @@ "LNDFragment": null, "EclairFragment": null } -] \ No newline at end of file +] diff --git a/docker-compose-generator/docker-fragments/groestlcoin-eclair.yml b/docker-compose-generator/docker-fragments/groestlcoin-eclair.yml new file mode 100644 index 0000000..09cfa78 --- /dev/null +++ b/docker-compose-generator/docker-fragments/groestlcoin-eclair.yml @@ -0,0 +1,55 @@ +version: "3" + +services: + groestlcoind: + environment: + GROESTLCOIN_EXTRA_ARGS: | + zmqpubrawblock=tcp://0.0.0.0:21441 + zmqpubrawtx=tcp://0.0.0.0:21441 + rpcauth=eclair:d3a244200d5c946f6bef48e6583ec979$$215049513aef33245dfec8ff3ab5e749458fde51ede931dec04c767c0732d468 + txindex=1 + eclair_groestlcoin: + container_name: btcpayserver_eclair_groestlcoin + restart: unless-stopped + stop_signal: SIGINT + image: groestlcoin/eclair:v0.3.3 + environment: + PUBLIC_HOST: ${BTCPAY_HOST} + JAVA_OPTS: | + -Xmx256m + -Declair.printToConsole + -Declair.headless + -Declair.chain=${NBITCOIN_NETWORK:-regtest} + -Declair.server.binding-ip=0.0.0.0 + -Declair.server.public-ips.0=${BTCPAY_HOST} + -Declair.server.port=9735 + -Declair.api.enabled=true + -Declair.api.binding-ip=0.0.0.0 + -Declair.api.port=8080 + -Declair.node-alias=${LIGHTNING_ALIAS} + -Declair.api.password=DwubwWsoo3 + -Declair.bitcoind.host=groestlcoind + -Declair.bitcoind.rpcport=43782 + -Declair.bitcoind.rpcuser=eclair + -Declair.bitcoind.rpcpassword=sFLjcg99Puh4k3CAZCQkLvC-fcoFUFRyKwKcXQKa7dw= + -Declair.bitcoind.zmqblock=tcp://groestlcoind:21441 + -Declair.bitcoind.zmqtx=tcp://groestlcoind:21441 + expose: + - "9735" # server port + - "8080" # api port + volumes: + - "groestlcoin_datadir:/etc/groestlcoin" + - "eclair_groestlcoin_datadir:/data" + links: + - groestlcoind + btcpayserver: + environment: + BTCPAY_GRSLIGHTNING: "type=eclair;server=http://eclair_groestlcoin:8080;password=DwubwWsoo3" + volumes: + - "eclair_groestlcoin_datadir:/etc/eclair_groestlcoin" + links: + - eclair_groestlcoin +volumes: + eclair_groestlcoin_datadir: +incompatible: + - pruning diff --git a/groestlcoin-eclair-cli.ps1 b/groestlcoin-eclair-cli.ps1 new file mode 100755 index 0000000..1bcba32 --- /dev/null +++ b/groestlcoin-eclair-cli.ps1 @@ -0,0 +1 @@ +docker exec btcpayserver_eclair_groestlcoin eclair-cli -p DwubwWsoo3 "$@" $args diff --git a/groestlcoin-eclair-cli.sh b/groestlcoin-eclair-cli.sh new file mode 100755 index 0000000..96ee3be --- /dev/null +++ b/groestlcoin-eclair-cli.sh @@ -0,0 +1,3 @@ +#!/bin/bash + +docker exec btcpayserver_eclair_groestlcoin eclair-cli -p DwubwWsoo3 "$@"