From 2f82a91c85abe074f68f7e6d7ceee629e9db6aa9 Mon Sep 17 00:00:00 2001 From: "nicolas.dorier" Date: Tue, 18 Feb 2020 17:17:35 +0900 Subject: [PATCH 1/3] Switch EPS to our version --- README.md | 2 +- contrib/DockerFileBuildHelper/Program.cs | 11 +++++--- contrib/build-all-images.sh | 20 +++++++------ .../docker-fragments/opt-add-electrum-ps.yml | 28 ++++++++++++++----- 4 files changed, 41 insertions(+), 20 deletions(-) diff --git a/README.md b/README.md index beec2ae..e94c3b7 100644 --- a/README.md +++ b/README.md @@ -324,6 +324,7 @@ We are trying to update our dependencies to run on `arm32v7` and `x64` boards. H | btcpayserver/letsencrypt-nginx-proxy-companion | 1.12.2 | [✔️](https://raw.githubusercontent.com/btcpayserver/docker-letsencrypt-nginx-proxy-companion/v1.12.2/linuxamd64.Dockerfile) | [✔️](https://raw.githubusercontent.com/btcpayserver/docker-letsencrypt-nginx-proxy-companion/v1.12.2/linuxarm32v7.Dockerfile) | [✔️](https://raw.githubusercontent.com/btcpayserver/docker-letsencrypt-nginx-proxy-companion/v1.12.2/linuxarm64v8.Dockerfile) | [Github](https://github.com/btcpayserver/docker-letsencrypt-nginx-proxy-companion) - [DockerHub](https://hub.docker.com/r/btcpayserver/letsencrypt-nginx-proxy-companion) | | btcpayserver/btctransmuter | 0.0.49 | [✔️](https://raw.githubusercontent.com/btcpayserver/btctransmuter/v0.0.49/Dockerfiles/amd64.Dockerfile) | [✔️](https://raw.githubusercontent.com/btcpayserver/btctransmuter/v0.0.49/Dockerfiles/arm32v7.Dockerfile) | [✔️](https://raw.githubusercontent.com/btcpayserver/btctransmuter/v0.0.49/Dockerfiles/arm64v8.Dockerfile) | [Github](https://github.com/btcpayserver/btctransmuter) - [DockerHub](https://hub.docker.com/r/btcpayserver/btctransmuter) | | btcpayserver/btcpayserver-configurator | 0.0.18 | [✔️](https://raw.githubusercontent.com/btcpayserver/btcpayserver-configurator/v0.0.18/Dockerfiles/amd64.Dockerfile) | [✔️](https://raw.githubusercontent.com/btcpayserver/btcpayserver-configurator/v0.0.18/Dockerfiles/arm32v7.Dockerfile) | [✔️](https://raw.githubusercontent.com/btcpayserver/btcpayserver-configurator/v0.0.18/Dockerfiles/arm64v8.Dockerfile) | [Github](https://github.com/btcpayserver/btcpayserver-configurator) - [DockerHub](https://hub.docker.com/r/btcpayserver/btcpayserver-configurator) | +| btcpayserver/eps | 0.2.0 | [✔️](https://raw.githubusercontent.com/btcpayserver/dockerfile-deps/EPS/0.2.0/EPS/0.2.0/linuxamd64.Dockerfile) | [✔️](https://raw.githubusercontent.com/btcpayserver/dockerfile-deps/EPS/0.2.0/EPS/0.2.0/linuxarm32v7.Dockerfile) | [✔️](https://raw.githubusercontent.com/btcpayserver/dockerfile-deps/EPS/0.2.0/EPS/0.2.0/linuxarm64v8.Dockerfile) | [Github](https://github.com/btcpayserver/dockerfile-deps) - [DockerHub](https://hub.docker.com/r/btcpayserver/eps) | | btcpayserver/tor | 0.4.1.5 | [✔️](https://raw.githubusercontent.com/btcpayserver/dockerfile-deps/Tor/0.4.1.5/Tor/0.4.1.5/linuxamd64.Dockerfile) | [✔️](https://raw.githubusercontent.com/btcpayserver/dockerfile-deps/Tor/0.4.1.5/Tor/0.4.1.5/linuxarm32v7.Dockerfile) | [✔️](https://raw.githubusercontent.com/btcpayserver/dockerfile-deps/Tor/0.4.1.5/Tor/0.4.1.5/linuxarm64v8.Dockerfile) | [Github](https://github.com/btcpayserver/dockerfile-deps) - [DockerHub](https://hub.docker.com/r/btcpayserver/tor) | | postgres | 9.6.5 | [✔️](https://raw.githubusercontent.com/docker-library/postgres/b7cb3c6eacea93be2259381033be3cc435649369/9.6/Dockerfile) | [✔️](https://raw.githubusercontent.com/docker-library/postgres/b7cb3c6eacea93be2259381033be3cc435649369/9.6/Dockerfile) | [✔️](https://raw.githubusercontent.com/docker-library/postgres/b7cb3c6eacea93be2259381033be3cc435649369/9.6/Dockerfile) | [Github](https://github.com/docker-library/postgres) - [DockerHub](https://hub.docker.com/_/postgres) | | kamigawabul/docker-bitcoingold | 0.15.2 | [✔️](https://raw.githubusercontent.com/Vutov/docker-bitcoin/master/bitcoingold/0.15.2/Dockerfile) | ️❌ | ️❌ | [Github](https://github.com/Vutov/docker-bitcoin) - [DockerHub](https://hub.docker.com/r/kamigawabul/docker-bitcoingold) | @@ -345,7 +346,6 @@ We are trying to update our dependencies to run on `arm32v7` and `x64` boards. H | kukks/monero | v0.15.0.0 | [✔️](https://raw.githubusercontent.com/Kukks/monero-docker/x86_64/Dockerfile) | ️❌ | ️❌ | [Github](https://github.com/Kukks/monero-docker) - [DockerHub](https://hub.docker.com/r/kukks/monero) | | 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) | -| docker.io/peleion/eps-docker | latest | [✔️](https://raw.githubusercontent.com/peleion/eps-docker/master/Dockerfile) | ️❌ | ️❌ | [Github](https://github.com/peleion/eps-docker) - [DockerHub](https://hub.docker.com/r/docker.io/peleion/eps-docker) | | 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) | diff --git a/contrib/DockerFileBuildHelper/Program.cs b/contrib/DockerFileBuildHelper/Program.cs index 6614be1..b07554e 100644 --- a/contrib/DockerFileBuildHelper/Program.cs +++ b/contrib/DockerFileBuildHelper/Program.cs @@ -232,10 +232,13 @@ namespace DockerFileBuildHelper retry: switch (name) { - case "peleion/eps-docker": - dockerInfo.DockerFilePath = "Dockerfile"; - dockerInfo.GitLink = "https://github.com/peleion/eps-docker"; - dockerInfo.GitRef = "master"; + case "eps": + dockerInfo.DockerFilePath = $"EPS/{NoRevision(image.Tag)}/linuxamd64.Dockerfile"; + dockerInfo.DockerFilePathARM32v7 = $"EPS/{NoRevision(image.Tag)}/linuxarm32v7.Dockerfile"; + dockerInfo.DockerFilePathARM64v8 = $"EPS/{NoRevision(image.Tag)}/linuxarm64v8.Dockerfile"; + dockerInfo.GitLink = "https://github.com/btcpayserver/dockerfile-deps"; + dockerInfo.GitRef = $"EPS/{image.Tag}"; + dockerInfo.SupportedByUs = true; break; case "btglnd": dockerInfo.DockerFilePath = "Dockerfile"; diff --git a/contrib/build-all-images.sh b/contrib/build-all-images.sh index 69e41bc..9908fb4 100755 --- a/contrib/build-all-images.sh +++ b/contrib/build-all-images.sh @@ -559,15 +559,19 @@ docker build -f "$DOCKERFILE" -t "btcpayserver/btcpayserver-configurator:0.0.18" cd - && cd .. -# Build peleion/eps-docker -# https://raw.githubusercontent.com/peleion/eps-docker/master/Dockerfile -DOCKERFILE="Dockerfile" -echo "Building docker.io/peleion/eps-docker:latest" -git clone https://github.com/peleion/eps-docker peleion/eps-docker -cd peleion/eps-docker -git checkout master +# Build eps +# https://raw.githubusercontent.com/btcpayserver/dockerfile-deps/EPS/0.2.0/EPS/0.2.0/linuxamd64.Dockerfile +DOCKERFILE="EPS/0.2.0/linuxamd64.Dockerfile" +# https://raw.githubusercontent.com/btcpayserver/dockerfile-deps/EPS/0.2.0/EPS/0.2.0/linuxarm32v7.Dockerfile +[[ "$(uname -m)" == "armv7l" ]] && DOCKERFILE="EPS/0.2.0/linuxarm32v7.Dockerfile" +# https://raw.githubusercontent.com/btcpayserver/dockerfile-deps/EPS/0.2.0/EPS/0.2.0/linuxarm64v8.Dockerfile +[[ "$(uname -m)" == "aarch64" ]] && DOCKERFILE="EPS/0.2.0/linuxarm64v8.Dockerfile" +echo "Building btcpayserver/eps:0.2.0" +git clone https://github.com/btcpayserver/dockerfile-deps eps +cd eps +git checkout EPS/0.2.0 cd "$(dirname $DOCKERFILE)" -docker build -f "$DOCKERFILE" -t "docker.io/peleion/eps-docker:latest" . +docker build -f "$DOCKERFILE" -t "btcpayserver/eps:0.2.0" . cd - && cd .. diff --git a/docker-compose-generator/docker-fragments/opt-add-electrum-ps.yml b/docker-compose-generator/docker-fragments/opt-add-electrum-ps.yml index fd4a19e..e0e66be 100644 --- a/docker-compose-generator/docker-fragments/opt-add-electrum-ps.yml +++ b/docker-compose-generator/docker-fragments/opt-add-electrum-ps.yml @@ -6,18 +6,32 @@ services: BITCOIN_EXTRA_ARGS: | rpcauth=eps:3d1cff5ee81ddeb3ba94483150310e74$$4626aeb95b2a2b066eac8833c1ad936f65cf7492aa836ec8f173ff65ac428a0e electrum_ps: - image: docker.io/peleion/eps-docker + image: btcpayserver/eps:0.2.0 restart: unless-stopped ports: - "50002:50002" volumes: - - "electrum_ps_datadir:/srv" + - "electrum_ps_datadir:/data" environment: - - HOST=bitcoind - - PORT=43782 - - RPC_USER=eps - - RPC_PASSWORD=cmhKyeLSco35KVhecK3blYcHFx73xrJ1fOQtjtmiKks - - XPUB=${EPS_XPUB} + EPS_CONFIG: | + [master-public-keys] + wallet = ${EPS_XPUB} + [bitcoin-rpc] + host = btcoind + port = 43782 + rpc_user = eps + rpc_password = cmhKyeLSco35KVhecK3blYcHFx73xrJ1fOQtjtmiKks + poll_interval_listening = 600 + poll_interval_connected = 5 + initial_import_count = 1000 + gap_limit = 25 + wallet_filename = + [electrum-server] + host = 0.0.0.0 + port = 50002 + broadcast_method = own-node + ip_whitelist = * + disable_mempool_fee_histogram = false volumes: electrum_ps_datadir: From b7b21a711cb4ddecbac0fdcfc22a6935f82087b3 Mon Sep 17 00:00:00 2001 From: "nicolas.dorier" Date: Tue, 18 Feb 2020 17:21:18 +0900 Subject: [PATCH 2/3] Fix volume --- .../docker-fragments/opt-add-electrum-ps.yml | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/docker-compose-generator/docker-fragments/opt-add-electrum-ps.yml b/docker-compose-generator/docker-fragments/opt-add-electrum-ps.yml index e0e66be..56f765a 100644 --- a/docker-compose-generator/docker-fragments/opt-add-electrum-ps.yml +++ b/docker-compose-generator/docker-fragments/opt-add-electrum-ps.yml @@ -10,14 +10,13 @@ services: restart: unless-stopped ports: - "50002:50002" - volumes: - - "electrum_ps_datadir:/data" environment: + READY_FILE: /root/.nbxplorer/btc_fully_synched EPS_CONFIG: | [master-public-keys] wallet = ${EPS_XPUB} [bitcoin-rpc] - host = btcoind + host = bitcoind port = 43782 rpc_user = eps rpc_password = cmhKyeLSco35KVhecK3blYcHFx73xrJ1fOQtjtmiKks @@ -32,6 +31,9 @@ services: broadcast_method = own-node ip_whitelist = * disable_mempool_fee_histogram = false + volumes: + - "electrum_ps_datadir:/data" + - "nbxplorer_datadir:/root/.nbxplorer" volumes: electrum_ps_datadir: From 93bcedb10c83f901d9fe5ff26e4f3bb193d62c85 Mon Sep 17 00:00:00 2001 From: "nicolas.dorier" Date: Tue, 18 Feb 2020 18:09:12 +0900 Subject: [PATCH 3/3] Add tor support to electrum-ps --- docker-compose-generator/docker-fragments/opt-add-tor.yml | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/docker-compose-generator/docker-fragments/opt-add-tor.yml b/docker-compose-generator/docker-fragments/opt-add-tor.yml index f8b31f6..6a22b28 100644 --- a/docker-compose-generator/docker-fragments/opt-add-tor.yml +++ b/docker-compose-generator/docker-fragments/opt-add-tor.yml @@ -147,6 +147,12 @@ services: - "tor_datadir:/home/tor/.tor" - "tor_servicesdir:/var/lib/tor/hidden_services" + electrum_ps: + environment: + HIDDENSERVICE_NAME: btc-electrum-ps + HIDDENSERVICE_PORT: 50002 + HIDDENSERVICE_VIRTUAL_PORT: 50002 + electrumx: environment: HIDDENSERVICE_NAME: electrumx