diff --git a/Production/nginx.tmpl b/Production/nginx.tmpl index afc1846..6645d0b 100644 --- a/Production/nginx.tmpl +++ b/Production/nginx.tmpl @@ -94,6 +94,16 @@ } {{ end }} + {{ if (eq $serviceName "bluewallet_lndhub_app") }} + location /bluewallet_lndhub_app/ { + proxy_pass http://bluewallet_lndhub_app:3000/; + sub_filter 'href="../' 'href="/bluewallet_lndhub_app/'; + sub_filter 'src="/' 'src="/bluewallet_lndhub_app/'; + sub_filter_once off; + } + {{ end }} + + {{ if (eq $serviceName "sphinxrelay") }} location /sphinxrelay/ { proxy_set_header Host $host; diff --git a/README.md b/README.md index c51677a..4907f72 100644 --- a/README.md +++ b/README.md @@ -172,6 +172,7 @@ Available `BTCPAYGEN_ADDITIONAL_FRAGMENTS` currently are: * [opt-add-electrum-bwt](docker-compose-generator/docker-fragments/opt-add-bwt.yml), to integrate the [Bitcoin Wallet Tracker](https://github.com/bwt-dev/bwt) Electrum server, which uses a personal wallet index model similar to that of EPS. You will need to set `BWT_XPUB` with your XPUB/YPUB/ZPUB (see environment variables section). The server will only be available locally and through an onion service. * [opt-add-configurator](docker-compose-generator/docker-fragments/opt-add-configurator.yml), to integrate the [BTCPay Server Configurator](https://install.btcpayserver.org) to manage your BTCPay deployment through a UI, and to allow new deployments elsewhere easily. * [opt-add-pihole](docker-compose-generator/docker-fragments/opt-add-pihole.yml) ([See the documentation](docs/pihole.md)) +* [opt-add-bluewallet-lndhub](docker-compose-generator/docker-fragments/opt-add-bluewallet-lndhub.yml) for [Bluewallet LNDHub](https://github.com/BlueWallet/LndHub) - Use non-custodial LND Lightning directly from your Bluewallet, and freely let others open accounts on your node. Fragment maintained by [maltokyo](https://github.com/maltokyo). * [opt-add-ndlc](docker-compose-generator/docker-fragments/opt-add-ndlc.yml) ([See the documentation](docs/ndlc.md)) * [opt-add-sphinxrelay](docker-compose-generator/docker-fragments/opt-add-sphinxrelay.yml) for [Sphinx Relay](https://github.com/stakwork/sphinx-relay). Maintained by [dennisreimann](https://github.com/dennisreimann). * [opt-add-thunderhub](docker-compose-generator/docker-fragments/opt-add-thunderhub.yml) for a LND Lightning Node Manager in your Browser. Maintained by [apotdevin](https://github.com/apotdevin). @@ -363,14 +364,16 @@ We are trying to update our dependencies to run on `arm32v7` and `x64` boards. H | 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) | | wakiyamap/docker-monacoin | 0.17.1 | [✔️](https://raw.githubusercontent.com/wakiyamap/docker-bitcoin/master/monacoin/0.17.1/Dockerfile) | ️❌ | ️❌ | [Github](https://github.com/wakiyamap/docker-bitcoin) - [DockerHub](https://hub.docker.com/r/wakiyamap/docker-monacoin) | | btcpayserver/monero | 0.17.2.0 | [✔️](https://raw.githubusercontent.com/Kukks/monero-docker/x86_64/Dockerfile) | ️❌ | ️❌ | [Github](https://github.com/Kukks/monero-docker) - [DockerHub](https://hub.docker.com/r/btcpayserver/monero) | +| redis | 6.2.2-buster@sha256:e10f55f92478715698a2cef97c2bbdc48df2a05081edd884938903aa60df6396 | [✔️](https://raw.githubusercontent.com/docker-library/redis/f1a8498333ae3ab340b5b39fbac1d7e1dc0d628c/5.0/Dockerfile) | ️❌ | ️❌ | [Github](https://github.com/docker-library/redis) - [DockerHub](https://hub.docker.com/_/redis) | +| bluewalletorganization/lndhub | v1.3.3@sha256:b99408dfb53f503def405668f5fc4d8185de39a87843d4ea8774544a5df1fe36 | [✔️](https://raw.githubusercontent.com/BlueWallet/LndHub/v1.3.3/Dockerfile) | [✔️](https://raw.githubusercontent.com/BlueWallet/LndHub/v1.3.3/Dockerfile) | ️❌ | [Github](https://github.com/BlueWallet/LndHub) - [DockerHub](https://hub.docker.com/r/bluewalletorganization/lndhub) | | jvandrew/btcqbo | 0.3.36 | [✔️](https://raw.githubusercontent.com/JeffVandrewJr/btcqbo/v0.3.36/Dockerfile) | ️❌ | ️❌ | [Github](https://github.com/JeffVandrewJr/btcqbo) - [DockerHub](https://hub.docker.com/r/jvandrew/btcqbo) | -| redis | 5.0.2-alpine | [✔️](https://raw.githubusercontent.com/docker-library/redis/f1a8498333ae3ab340b5b39fbac1d7e1dc0d628c/5.0/Dockerfile) | ️❌ | ️❌ | [Github](https://github.com/docker-library/redis) - [DockerHub](https://hub.docker.com/_/redis) | | shesek/bwt | 0.2.2-electrum | [✔️](https://raw.githubusercontent.com/bwt-dev/bwt/v0.2.2/docker/Dockerfile) | [✔️](https://raw.githubusercontent.com/bwt-dev/bwt/v0.2.2/docker/arm32v7.Dockerfile) | [✔️](https://raw.githubusercontent.com/bwt-dev/bwt/v0.2.2/docker/arm64v8.Dockerfile) | [Github](https://github.com/bwt-dev/bwt) - [DockerHub](https://hub.docker.com/r/shesek/bwt) | | lukechilds/electrumx | latest | [✔️](https://raw.githubusercontent.com/lukechilds/docker-electrumx/master/Dockerfile) | ️❌ | ️❌ | [Github](https://github.com/lukechilds/docker-electrumx) - [DockerHub](https://hub.docker.com/r/lukechilds/electrumx) | | jvandrew/librepatron | 0.7.39 | [✔️](https://raw.githubusercontent.com/JeffVandrewJr/patron/v0.7.39/Dockerfile) | ️❌ | ️❌ | [Github](https://github.com/JeffVandrewJr/patron) - [DockerHub](https://hub.docker.com/r/jvandrew/librepatron) | | jvandrew/isso | atron.22 | [✔️](https://raw.githubusercontent.com/JeffVandrewJr/isso/patron.22/Dockerfile) | ️❌ | ️❌ | [Github](https://github.com/JeffVandrewJr/isso) - [DockerHub](https://hub.docker.com/r/jvandrew/isso) | +| sphinxlightning/sphinx-relay | v2.0.13 | [✔️](https://raw.githubusercontent.com/stakwork/sphinx-relay/v2.0.13/Dockerfile) | ️❌ | [✔️](https://raw.githubusercontent.com/stakwork/sphinx-relay/v2.0.13/Dockerfile) | [Github](https://github.com/stakwork/sphinx-relay) - [DockerHub](https://hub.docker.com/r/sphinxlightning/sphinx-relay) | | talaia/python-teos | latest | [✔️](https://raw.githubusercontent.com/talaia-labs/python-teos/master/docker/Dockerfile) | [✔️](https://raw.githubusercontent.com/talaia-labs/python-teos/master/docker/arm32v7.Dockerfile) | [✔️](https://raw.githubusercontent.com/talaia-labs/python-teos/master/docker/arm64v8.Dockerfile) | [Github](https://github.com/talaia-labs/python-teos) - [DockerHub](https://hub.docker.com/r/talaia/python-teos) | -| apotdevin/thunderhub | base-v0.12.15 | [✔️](https://raw.githubusercontent.com/apotdevin/thunderhub/v0.12.15/Dockerfile) | [✔️](https://raw.githubusercontent.com/apotdevin/thunderhub/v0.12.15/arm32v7.Dockerfile) | [✔️](https://raw.githubusercontent.com/apotdevin/thunderhub/v0.12.15/arm64v8.Dockerfile) | [Github](https://github.com/apotdevin/thunderhub) - [DockerHub](https://hub.docker.com/r/apotdevin/thunderhub) | +| apotdevin/thunderhub | base-v0.12.16 | [✔️](https://raw.githubusercontent.com/apotdevin/thunderhub/v0.12.16/Dockerfile) | [✔️](https://raw.githubusercontent.com/apotdevin/thunderhub/v0.12.16/arm32v7.Dockerfile) | [✔️](https://raw.githubusercontent.com/apotdevin/thunderhub/v0.12.16/arm64v8.Dockerfile) | [Github](https://github.com/apotdevin/thunderhub) - [DockerHub](https://hub.docker.com/r/apotdevin/thunderhub) | | btcpayserver/docker-woocommerce | 3.0.12 | [✔️](https://raw.githubusercontent.com/btcpayserver/docker-woocommerce/v3.0.12/Dockerfile) | ️❌ | ️❌ | [Github](https://github.com/btcpayserver/docker-woocommerce) - [DockerHub](https://hub.docker.com/r/btcpayserver/docker-woocommerce) | | mariadb | 10.3 | [✔️](https://raw.githubusercontent.com/docker-library/mariadb/master/10.3/Dockerfile) | ️❌ | ️❌ | [Github](https://github.com/docker-library/mariadb) - [DockerHub](https://hub.docker.com/_/mariadb) | | zammad/zammad-docker-compose | zammad-postgresql-3.4.0-4 | [✔️](https://raw.githubusercontent.com/zammad/zammad-docker-compose/master/containers/zammad-postgresql/Dockerfile) | ️❌ | ️❌ | [Github](https://github.com/zammad/zammad-docker-compose) - [DockerHub](https://hub.docker.com/r/zammad/zammad-docker-compose) | @@ -378,7 +381,6 @@ We are trying to update our dependencies to run on `arm32v7` and `x64` boards. H | traefik | latest | [✔️](https://raw.githubusercontent.com/containous/traefik-library-image/master/scratch/Dockerfile) | ️❌ | ️❌ | [Github](https://github.com/containous/traefik-library-image) - [DockerHub](https://hub.docker.com/_/traefik) | | chekaz/docker-trezarcoin | 0.13.0 | [✔️](https://raw.githubusercontent.com/ChekaZ/docker/master/trezarcoin/1.2.0/Dockerfile) | ️❌ | ️❌ | [Github](https://github.com/ChekaZ/docker) - [DockerHub](https://hub.docker.com/r/chekaz/docker-trezarcoin) | | romanornr/docker-viacoin | 0.15.2 | [✔️](https://raw.githubusercontent.com/viacoin/docker-viacoin/master/viacoin/0.15.2/docker-viacoin) | ️❌ | ️❌ | [Github](https://github.com/viacoin/docker-viacoin) - [DockerHub](https://hub.docker.com/r/romanornr/docker-viacoin) | -| stakwork/sphinx-relay | 2.0.13 | [✔️](https://github.com/stakwork/sphinx-relay/blob/v2.0.13/Dockerfile) | ❌ | ❌ | [Github](https://github.com/stakwork/sphinx-relay) - [DockerHub](https://hub.docker.com/r/sphinxlightning/sphinx-relay/) | # FAQ diff --git a/contrib/DockerFileBuildHelper/Program.cs b/contrib/DockerFileBuildHelper/Program.cs index b3dc6e0..034470b 100644 --- a/contrib/DockerFileBuildHelper/Program.cs +++ b/contrib/DockerFileBuildHelper/Program.cs @@ -600,6 +600,19 @@ namespace DockerFileBuildHelper dockerInfo.GitLink = "https://github.com/bwt-dev/bwt"; dockerInfo.GitRef = $"v{image.Tag.Split('-')[0]}"; break; + case "sphinx-relay": + dockerInfo.DockerFilePath = $"Dockerfile"; + dockerInfo.DockerFilePathARM64v8 = $"Dockerfile"; + dockerInfo.DockerFilePathARM64v8 = $"Dockerfile"; + dockerInfo.GitLink = "https://github.com/stakwork/sphinx-relay"; + dockerInfo.GitRef = $"{image.Tag}"; + break; + case "lndhub": + dockerInfo.DockerFilePath = $"Dockerfile"; + dockerInfo.DockerFilePathARM32v7 = $"Dockerfile"; + dockerInfo.GitLink = "https://github.com/BlueWallet/LndHub"; + dockerInfo.GitRef = $"{image.Tag.Split("@")[0]}"; + break; default: if (firstTry) { diff --git a/contrib/build-all-images.sh b/contrib/build-all-images.sh index 2094d0e..a64a7e9 100644 --- a/contrib/build-all-images.sh +++ b/contrib/build-all-images.sh @@ -531,6 +531,32 @@ docker build -f "$DOCKERFILE" -t "btcpayserver/docker-gen:0.7.8" . cd - && cd .. +# Build redis +# https://raw.githubusercontent.com/docker-library/redis/f1a8498333ae3ab340b5b39fbac1d7e1dc0d628c/5.0/Dockerfile +DOCKERFILE="5.0/Dockerfile" +echo "Building redis:6.2.2-buster@sha256:e10f55f92478715698a2cef97c2bbdc48df2a05081edd884938903aa60df6396" +git clone https://github.com/docker-library/redis redis +cd redis +git checkout f1a8498333ae3ab340b5b39fbac1d7e1dc0d628c +cd "$(dirname $DOCKERFILE)" +docker build -f "$DOCKERFILE" -t "redis:6.2.2-buster@sha256:e10f55f92478715698a2cef97c2bbdc48df2a05081edd884938903aa60df6396" . +cd - && cd .. + + +# Build lndhub +# https://raw.githubusercontent.com/BlueWallet/LndHub/v1.3.3/Dockerfile +DOCKERFILE="Dockerfile" +# https://raw.githubusercontent.com/BlueWallet/LndHub/v1.3.3/Dockerfile +[[ "$(uname -m)" == "armv7l" ]] && DOCKERFILE="Dockerfile" +echo "Building bluewalletorganization/lndhub:v1.3.3@sha256:b99408dfb53f503def405668f5fc4d8185de39a87843d4ea8774544a5df1fe36" +git clone https://github.com/BlueWallet/LndHub lndhub +cd lndhub +git checkout v1.3.3 +cd "$(dirname $DOCKERFILE)" +docker build -f "$DOCKERFILE" -t "bluewalletorganization/lndhub:v1.3.3@sha256:b99408dfb53f503def405668f5fc4d8185de39a87843d4ea8774544a5df1fe36" . +cd - && cd .. + + # Build btcqbo # https://raw.githubusercontent.com/JeffVandrewJr/btcqbo/v0.3.36/Dockerfile DOCKERFILE="Dockerfile" @@ -687,6 +713,20 @@ docker build -f "$DOCKERFILE" -t "pihole/pihole:v5.7" . cd - && cd .. +# Build sphinx-relay +# https://raw.githubusercontent.com/stakwork/sphinx-relay/v2.0.13/Dockerfile +DOCKERFILE="Dockerfile" +# https://raw.githubusercontent.com/stakwork/sphinx-relay/v2.0.13/Dockerfile +[[ "$(uname -m)" == "aarch64" ]] && DOCKERFILE="Dockerfile" +echo "Building sphinxlightning/sphinx-relay:v2.0.13" +git clone https://github.com/stakwork/sphinx-relay sphinx-relay +cd sphinx-relay +git checkout v2.0.13 +cd "$(dirname $DOCKERFILE)" +docker build -f "$DOCKERFILE" -t "sphinxlightning/sphinx-relay:v2.0.13" . +cd - && cd .. + + # Build python-teos # https://raw.githubusercontent.com/talaia-labs/python-teos/master/docker/Dockerfile DOCKERFILE="docker/Dockerfile" @@ -704,18 +744,18 @@ cd - && cd .. # Build thunderhub -# https://raw.githubusercontent.com/apotdevin/thunderhub/v0.12.15/Dockerfile +# https://raw.githubusercontent.com/apotdevin/thunderhub/v0.12.16/Dockerfile DOCKERFILE="Dockerfile" -# https://raw.githubusercontent.com/apotdevin/thunderhub/v0.12.15/arm32v7.Dockerfile +# https://raw.githubusercontent.com/apotdevin/thunderhub/v0.12.16/arm32v7.Dockerfile [[ "$(uname -m)" == "armv7l" ]] && DOCKERFILE="arm32v7.Dockerfile" -# https://raw.githubusercontent.com/apotdevin/thunderhub/v0.12.15/arm64v8.Dockerfile +# https://raw.githubusercontent.com/apotdevin/thunderhub/v0.12.16/arm64v8.Dockerfile [[ "$(uname -m)" == "aarch64" ]] && DOCKERFILE="arm64v8.Dockerfile" -echo "Building apotdevin/thunderhub:base-v0.12.15" +echo "Building apotdevin/thunderhub:base-v0.12.16" git clone https://github.com/apotdevin/thunderhub thunderhub cd thunderhub -git checkout v0.12.15 +git checkout v0.12.16 cd "$(dirname $DOCKERFILE)" -docker build -f "$DOCKERFILE" -t "apotdevin/thunderhub:base-v0.12.15" . +docker build -f "$DOCKERFILE" -t "apotdevin/thunderhub:base-v0.12.16" . cd - && cd .. diff --git a/docker-compose-generator/docker-fragments/opt-add-bluewallet-lndhub.yml b/docker-compose-generator/docker-fragments/opt-add-bluewallet-lndhub.yml new file mode 100644 index 0000000..f84e2fa --- /dev/null +++ b/docker-compose-generator/docker-fragments/opt-add-bluewallet-lndhub.yml @@ -0,0 +1,40 @@ +version: "3" + +services: + bluewallet_lndhub_redis: + container_name: bluewallet_lndhub_redis + image: "redis:6.2.2-buster@sha256:e10f55f92478715698a2cef97c2bbdc48df2a05081edd884938903aa60df6396" + command: "redis-server --requirepass S7bk49NBp29khUci4Zw28vsBviCnYfZ2QLTEsQNizq9ni5ur" + restart: "on-failure" + stop_grace_period: "1m" + volumes: + - "bluewallet_lndhub_redisdir:/data" + + + bluewallet_lndhub_app: + container_name: bluewallet_lndhub_app + image: "bluewalletorganization/lndhub:v1.3.3@sha256:b99408dfb53f503def405668f5fc4d8185de39a87843d4ea8774544a5df1fe36" + user: "0:0" + depends_on: [ "bluewallet_lndhub_redis" ] + restart: "on-failure" + stop_grace_period: "1m" + volumes: + - "lnd_bitcoin_datadir:/lnd:ro" + environment: + PORT: "3000" + #TOR_URL: "${APP_HIDDEN_SERVICE}" + LND_CERT_FILE: "/lnd/tls.cert" + LND_ADMIN_MACAROON_FILE: "/lnd/admin.macaroon" + CONFIG: '{ "rateLimit": 10000, "postRateLimit": 10000, "redis": { "port": 6379, "host": "bluewallet_lndhub_redis", "family": 4, "password": "S7bk49NBp29khUci4Zw28vsBviCnYfZ2QLTEsQNizq9ni5ur", "db": 0 }, "lnd": { "url": "lnd_bitcoin:10009", "password": ""}}' + + + btcpayserver: + environment: + BTCPAY_EXTERNALSERVICES: "Blue Wallet LNDHub:${BTCPAY_PROTOCOL:-https}://${BTCPAY_HOST}/bluewallet_lndhub_app;" + +# use docker native volumes +volumes: + bluewallet_lndhub_redisdir: + +required: + - "bitcoin-lnd" \ No newline at end of file