diff --git a/contrib/DockerFileBuildHelper/Program.cs b/contrib/DockerFileBuildHelper/Program.cs index c9b4bbf..066af1b 100644 --- a/contrib/DockerFileBuildHelper/Program.cs +++ b/contrib/DockerFileBuildHelper/Program.cs @@ -216,6 +216,11 @@ namespace DockerFileBuildHelper dockerInfo.GitLink = "https://github.com/rockstardev/docker-bitcoin"; dockerInfo.GitRef = "feature/dogecoin"; break; + case "docker-bitcore": + dockerInfo.DockerFilePath = "btx-debian/Dockerfile"; + dockerInfo.GitLink = "https://github.com/dalijolijo/btcpayserver-docker-bitcore"; + dockerInfo.GitRef = "master"; + break; case "docker-feathercoin": dockerInfo.DockerFilePath = $"feathercoin/{image.Tag}/Dockerfile"; dockerInfo.GitLink = "https://github.com/ChekaZ/docker"; diff --git a/contrib/build-all-images.sh b/contrib/build-all-images.sh index ea0818e..84d729d 100755 --- a/contrib/build-all-images.sh +++ b/contrib/build-all-images.sh @@ -98,6 +98,18 @@ docker build -f "$DOCKERFILE" -t "btcpayserver/bitcoin:0.17.0" . cd - && cd .. +# Build docker-bitcore +# https://raw.githubusercontent.com/dalijolijo/btcpayserver-docker-bitcore/master/btx-debian/Dockerfile +DOCKERFILE="btx-debian/Dockerfile" +echo "Building dalijolijo/docker-bitcore:0.15.2" +git clone https://github.com/dalijolijo/btcpayserver-docker-bitcore docker-bitcore +cd docker-bitcore +git checkout master +cd "$(dirname $DOCKERFILE)" +docker build -f "$DOCKERFILE" -t "dalijolijo/docker-bitcore:0.15.2" . +cd - && cd .. + + # Build btcpayserver # https://raw.githubusercontent.com/btcpayserver/btcpayserver/v1.0.3.23/Dockerfile.linuxamd64 DOCKERFILE="Dockerfile.linuxamd64" @@ -112,6 +124,22 @@ docker build -f "$DOCKERFILE" -t "btcpayserver/btcpayserver:1.0.3.23" . cd - && cd .. +# Build dash +# https://raw.githubusercontent.com/btcpayserver/dockerfile-deps/Dash/0.12.3/Dash/0.12.3/linuxamd64.Dockerfile +DOCKERFILE="Dash/0.12.3/linuxamd64.Dockerfile" +# https://raw.githubusercontent.com/btcpayserver/dockerfile-deps/Dash/0.12.3/Dash/0.12.3/linuxarm32v7.Dockerfile +[[ "$(uname -m)" == "armv7l" ]] && DOCKERFILE="Dash/0.12.3/linuxarm32v7.Dockerfile" +# https://raw.githubusercontent.com/btcpayserver/dockerfile-deps/Dash/0.12.3/Dash/0.12.3/linuxarm64v8.Dockerfile +[[ "$(uname -m)" == "aarch64" ]] && DOCKERFILE="Dash/0.12.3/linuxarm64v8.Dockerfile" +echo "Building btcpayserver/dash:0.12.3" +git clone https://github.com/btcpayserver/dockerfile-deps dash +cd dash +git checkout Dash/0.12.3 +cd "$(dirname $DOCKERFILE)" +docker build -f "$DOCKERFILE" -t "btcpayserver/dash:0.12.3" . +cd - && cd .. + + # Build dogecoin # https://raw.githubusercontent.com/rockstardev/docker-bitcoin/feature/dogecoin/dogecoin/1.10.0/Dockerfile DOCKERFILE="dogecoin/1.10.0/Dockerfile" @@ -197,16 +225,16 @@ cd - && cd .. # Build nbxplorer -# https://raw.githubusercontent.com/dgarage/nbxplorer/v2.0.0.1/Dockerfile.linuxamd64 +# https://raw.githubusercontent.com/dgarage/nbxplorer/v2.0.0.2/Dockerfile.linuxamd64 DOCKERFILE="Dockerfile.linuxamd64" -# https://raw.githubusercontent.com/dgarage/nbxplorer/v2.0.0.1/Dockerfile.linuxarm32v7 +# https://raw.githubusercontent.com/dgarage/nbxplorer/v2.0.0.2/Dockerfile.linuxarm32v7 [[ "$(uname -m)" == "armv7l" ]] && DOCKERFILE="Dockerfile.linuxarm32v7" -echo "Building nicolasdorier/nbxplorer:2.0.0.1" +echo "Building nicolasdorier/nbxplorer:2.0.0.2" git clone https://github.com/dgarage/nbxplorer nbxplorer cd nbxplorer -git checkout v2.0.0.1 +git checkout v2.0.0.2 cd "$(dirname $DOCKERFILE)" -docker build -f "$DOCKERFILE" -t "nicolasdorier/nbxplorer:2.0.0.1" . +docker build -f "$DOCKERFILE" -t "nicolasdorier/nbxplorer:2.0.0.2" . cd - && cd .. diff --git a/dash-cli.ps1 b/dash-cli.ps1 new file mode 100755 index 0000000..8b5ac65 --- /dev/null +++ b/dash-cli.ps1 @@ -0,0 +1 @@ +docker exec -ti btcpayserver_dashd dash-cli -datadir="/data" $args diff --git a/dash-cli.sh b/dash-cli.sh new file mode 100755 index 0000000..6fdea5f --- /dev/null +++ b/dash-cli.sh @@ -0,0 +1,3 @@ +#!/bin/bash + +docker exec -ti btcpayserver_dashd dash-cli -datadir="/data" "$@" diff --git a/docker-compose-generator/docker-fragments/dash.yml b/docker-compose-generator/docker-fragments/dash.yml new file mode 100644 index 0000000..922f904 --- /dev/null +++ b/docker-compose-generator/docker-fragments/dash.yml @@ -0,0 +1,33 @@ +version: "3" + +services: + dashd: + restart: unless-stopped + container_name: btcpayserver_dashd + image: btcpayserver/dash:0.12.3 + environment: + BITCOIN_EXTRA_ARGS: | + ${NBITCOIN_NETWORK:-regtest}=1 + port=9999 + rpcport=9998 + whitelist=0.0.0.0/0 + expose: + - "9998" + - "9999" + volumes: + - "dash_datadir:/data" + nbxplorer: + environment: + NBXPLORER_CHAINS: "dash" + NBXPLORER_DASHRPCURL: http://dashd:9998/ + NBXPLORER_DASHNODEENDPOINT: dashd:9999 + links: + - dashd + volumes: + - "dash_datadir:/root/.dashcore" + btcpayserver: + environment: + BTCPAY_CHAINS: "dash" + BTCPAY_DASHEXPLORERURL: http://nbxplorer:32838/ +volumes: + dash_datadir: diff --git a/docker-compose-generator/src/CryptoDefinition.cs b/docker-compose-generator/src/CryptoDefinition.cs index 5aa92fe..4e6f387 100644 --- a/docker-compose-generator/src/CryptoDefinition.cs +++ b/docker-compose-generator/src/CryptoDefinition.cs @@ -71,12 +71,17 @@ namespace DockerGenerator Crypto = "via", CryptoFragment = "viacoin" }, - new CryptoDefinition() + new CryptoDefinition() + { + Crypto = "dash", + CryptoFragment = "dash" + }, + new CryptoDefinition() { Crypto = "doge", CryptoFragment = "dogecoin" }, - new CryptoDefinition() + new CryptoDefinition() { Crypto = "mona", CryptoFragment = "monacoin" diff --git a/docker-compose-generator/src/DockerComposition.cs b/docker-compose-generator/src/DockerComposition.cs index b9c8f9d..8a924ed 100644 --- a/docker-compose-generator/src/DockerComposition.cs +++ b/docker-compose-generator/src/DockerComposition.cs @@ -41,7 +41,11 @@ namespace DockerGenerator } composition.SelectedProxy = (Environment.GetEnvironmentVariable("BTCPAYGEN_REVERSEPROXY") ?? "").ToLowerInvariant(); composition.SelectedLN = (Environment.GetEnvironmentVariable("BTCPAYGEN_LIGHTNING") ?? "").ToLowerInvariant(); - composition.AdditionalFragments = (Environment.GetEnvironmentVariable("BTCPAYGEN_ADDITIONAL_FRAGMENTS") ?? "").ToLowerInvariant().Split(';').Where(t => !string.IsNullOrWhiteSpace(t)).ToArray(); + composition.AdditionalFragments = (Environment.GetEnvironmentVariable("BTCPAYGEN_ADDITIONAL_FRAGMENTS") ?? "").ToLowerInvariant() + .Split(new char[] { ';' , ',' }) + .Where(t => !string.IsNullOrWhiteSpace(t)) + .Select(t => t.EndsWith(".yml") ? t.Substring(0, t.Length - ".yml".Length) : t) + .ToArray(); return composition; } } diff --git a/docker-compose-generator/src/Program.cs b/docker-compose-generator/src/Program.cs index e30d5fe..df4c0ad 100644 --- a/docker-compose-generator/src/Program.cs +++ b/docker-compose-generator/src/Program.cs @@ -44,6 +44,8 @@ namespace DockerGenerator fragments.Add("traefik-labels"); break; case "no-reverseproxy": + case "none": + case "": fragments.Add("btcpayserver-noreverseproxy"); break; }