Add snapdrop (#902)

This commit is contained in:
Nicolas Dorier 2024-06-05 10:53:37 +09:00 committed by GitHub
parent 272fb42882
commit 96a5f1dead
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
5 changed files with 81 additions and 17 deletions

View File

@ -200,6 +200,30 @@
proxy_pass http://configurator;
}
{{ end }}
{{ if (eq $serviceName "snapdrop") }}
location /snapdrop/ {
proxy_connect_timeout 300;
proxy_set_header Connection "";
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Host $host:443;
proxy_set_header X-Forwarded-Server $host;
proxy_set_header X-Forwarded-Port 443;
proxy_set_header X-Forwarded-Proto https;
proxy_pass http://snapdrop:8080/;
}
location /snapdrop/server {
proxy_connect_timeout 300;
proxy_pass http://snapdrop:8080/server;
proxy_set_header Connection "upgrade";
proxy_set_header Upgrade $http_upgrade;
proxy_set_header X-Forwarded-for $remote_addr;
}
{{ end }}
{{ if (eq $serviceName "nnostr-relay") }}
location /nostr {
proxy_set_header Connection "";

View File

@ -196,6 +196,7 @@ Available `BTCPAYGEN_ADDITIONAL_FRAGMENTS` currently are:
* [opt-add-nostr-relay](docker-compose-generator/docker-fragments/opt-add-nostr-relay.yml) for [Nostr Relay](https://github.com/kukks/Nnostr).
* [opt-add-cloudflared](docker-compose-generator/docker-fragments/opt-add-cloudflared.yml) to expose your local server on clearnet painlessly ([see documentation](docs/cloudflare-tunnel.md)).
* [opt-add-torq](docker-compose-generator/docker-fragments/opt-add-torq.yml) to install [Torq](https://github.com/lncapital/torq) node management application. Requires LND.
* [opt-add-snapdrop](docker-compose-generator/docker-fragments/opt-add-snapdrop.yml) to install [Snapdrop](https://snapdrop.net/). You can then browse to `/snapdrop` of your server to access it.
You can also create your own [custom fragments](#how-can-i-customize-the-generated-docker-compose-file).
@ -358,6 +359,7 @@ Note that BTCPayServer developers will not spend excessive time testing your ima
| btcpayserver/joinmarket | 0.9.5 | [✔️](https://raw.githubusercontent.com/btcpayserver/dockerfile-deps/JoinMarket/0.9.5/JoinMarket/0.9.5/linuxamd64.Dockerfile) | [✔️](https://raw.githubusercontent.com/btcpayserver/dockerfile-deps/JoinMarket/0.9.5/JoinMarket/0.9.5/linuxarm32v7.Dockerfile) | [✔️](https://raw.githubusercontent.com/btcpayserver/dockerfile-deps/JoinMarket/0.9.5/JoinMarket/0.9.5/linuxarm64v8.Dockerfile) | [Github](https://github.com/btcpayserver/dockerfile-deps) - [DockerHub](https://hub.docker.com/r/btcpayserver/joinmarket) |
| nicolasdorier/ndlc-cli | 1.0.1 | [✔️](https://raw.githubusercontent.com/dgarage/ndlc/releases/1.0.1/amd64.Dockerfile) | [✔️](https://raw.githubusercontent.com/dgarage/ndlc/releases/1.0.1/arm32v7.Dockerfile) | [✔️](https://raw.githubusercontent.com/dgarage/ndlc/releases/1.0.1/arm64v8.Dockerfile) | [Github](https://github.com/dgarage/ndlc) - [DockerHub](https://hub.docker.com/r/nicolasdorier/ndlc-cli) |
| pihole/pihole | 2023.05.2 | [✔️](https://raw.githubusercontent.com/pi-hole/docker-pi-hole/2023.05.2/src/Dockerfile) | [✔️](https://raw.githubusercontent.com/pi-hole/docker-pi-hole/2023.05.2/src/Dockerfile) | [✔️](https://raw.githubusercontent.com/pi-hole/docker-pi-hole/2023.05.2/src/Dockerfile) | [Github](https://github.com/pi-hole/docker-pi-hole) - [DockerHub](https://hub.docker.com/r/pihole/pihole) |
| btcpayserver/snapdrop | 1.0 | [✔️](https://raw.githubusercontent.com/btcpayserver/dockerfile-deps/Snapdrop/1.0/Snapdrop/1.0/Dockerfile) | [✔️](https://raw.githubusercontent.com/btcpayserver/dockerfile-deps/Snapdrop/1.0/Snapdrop/1.0/Dockerfile) | [✔️](https://raw.githubusercontent.com/btcpayserver/dockerfile-deps/Snapdrop/1.0/Snapdrop/1.0/Dockerfile) | [Github](https://github.com/btcpayserver/dockerfile-deps) - [DockerHub](https://hub.docker.com/r/btcpayserver/snapdrop) |
| btcpayserver/tor | 0.4.8.10 | [✔️](https://raw.githubusercontent.com/btcpayserver/dockerfile-deps/Tor/0.4.8.10/Tor/0.4.8.10/linuxamd64.Dockerfile) | [✔️](https://raw.githubusercontent.com/btcpayserver/dockerfile-deps/Tor/0.4.8.10/Tor/0.4.8.10/linuxarm32v7.Dockerfile) | [✔️](https://raw.githubusercontent.com/btcpayserver/dockerfile-deps/Tor/0.4.8.10/Tor/0.4.8.10/linuxarm64v8.Dockerfile) | [Github](https://github.com/btcpayserver/dockerfile-deps) - [DockerHub](https://hub.docker.com/r/btcpayserver/tor) |
| btcpayserver/woocommerce | 3.1.0 | [✔️](https://raw.githubusercontent.com/btcpayserver/dockerfile-deps/WooCommerce/3.1.0/WooCommerce/3.1.0/linuxamd64.Dockerfile) | ️❌ | [✔️](https://raw.githubusercontent.com/btcpayserver/dockerfile-deps/WooCommerce/3.1.0/WooCommerce/3.1.0/linuxarm64v8.Dockerfile) | [Github](https://github.com/btcpayserver/dockerfile-deps) - [DockerHub](https://hub.docker.com/r/btcpayserver/woocommerce) |
| btcpayserver/postgres | 13.13 | [✔️](https://raw.githubusercontent.com/btcpayserver/dockerfile-deps/Postgres/13.13/Postgres/13.13/linuxamd64.Dockerfile) | [✔️](https://raw.githubusercontent.com/btcpayserver/dockerfile-deps/Postgres/13.13/Postgres/13.13/linuxarm32v7.Dockerfile) | [✔️](https://raw.githubusercontent.com/btcpayserver/dockerfile-deps/Postgres/13.13/Postgres/13.13/linuxarm64v8.Dockerfile) | [Github](https://github.com/btcpayserver/dockerfile-deps) - [DockerHub](https://hub.docker.com/r/btcpayserver/postgres) |
@ -375,7 +377,7 @@ Note that BTCPayServer developers will not spend excessive time testing your ima
| groestlcoin/eclair | v0.6.0 | [✔️](https://raw.githubusercontent.com/Groestlcoin/eclair/v0.6.0/Dockerfile) | ️❌ | ️❌ | [Github](https://github.com/Groestlcoin/eclair) - [DockerHub](https://hub.docker.com/r/groestlcoin/eclair) |
| groestlcoin/lnd | v0.10.0-grs | [✔️](https://raw.githubusercontent.com/Groestlcoin/lnd/v0.10.0-grs/Dockerfile) | ️❌ | ️❌ | [Github](https://github.com/Groestlcoin/lnd) - [DockerHub](https://hub.docker.com/r/groestlcoin/lnd) |
| btcpayserver/groestlcoin | 25.0 | [✔️](https://raw.githubusercontent.com/btcpayserver/dockerfile-deps/Groestlcoin/25.0/Groestlcoin/25.0/linuxamd64.Dockerfile) | [✔️](https://raw.githubusercontent.com/btcpayserver/dockerfile-deps/Groestlcoin/25.0/Groestlcoin/25.0/linuxarm32v7.Dockerfile) | [✔️](https://raw.githubusercontent.com/btcpayserver/dockerfile-deps/Groestlcoin/25.0/Groestlcoin/25.0/linuxarm64v8.Dockerfile) | [Github](https://github.com/btcpayserver/dockerfile-deps) - [DockerHub](https://hub.docker.com/r/btcpayserver/groestlcoin) |
| btcpayserver/elements | 22.1.1 | [✔️](https://raw.githubusercontent.com/btcpayserver/dockerfile-deps/Elements/22.1.1/Elements/22.1.1/linuxamd64.Dockerfile) | [✔️](https://raw.githubusercontent.com/btcpayserver/dockerfile-deps/Elements/22.1.1/Elements/22.1.1/linuxarm32v7.Dockerfile) | [✔️](https://raw.githubusercontent.com/btcpayserver/dockerfile-deps/Elements/22.1.1/Elements/22.1.1/linuxarm64v8.Dockerfile) | [Github](https://github.com/btcpayserver/dockerfile-deps) - [DockerHub](https://hub.docker.com/r/btcpayserver/elements) |
| btcpayserver/elements | 23.2.1 | [✔️](https://raw.githubusercontent.com/btcpayserver/dockerfile-deps/Elements/23.2.1/Elements/23.2.1/linuxamd64.Dockerfile) | [✔️](https://raw.githubusercontent.com/btcpayserver/dockerfile-deps/Elements/23.2.1/Elements/23.2.1/linuxarm32v7.Dockerfile) | [✔️](https://raw.githubusercontent.com/btcpayserver/dockerfile-deps/Elements/23.2.1/Elements/23.2.1/linuxarm64v8.Dockerfile) | [Github](https://github.com/btcpayserver/dockerfile-deps) - [DockerHub](https://hub.docker.com/r/btcpayserver/elements) |
| btcpayserver/litecoin | 0.21.2.1-2 | [✔️](https://raw.githubusercontent.com/btcpayserver/dockerfile-deps/Litecoin/0.21.2.1-2/Litecoin/0.21.2.1/linuxamd64.Dockerfile) | [✔️](https://raw.githubusercontent.com/btcpayserver/dockerfile-deps/Litecoin/0.21.2.1-2/Litecoin/0.21.2.1/linuxarm32v7.Dockerfile) | [✔️](https://raw.githubusercontent.com/btcpayserver/dockerfile-deps/Litecoin/0.21.2.1-2/Litecoin/0.21.2.1/linuxarm64v8.Dockerfile) | [Github](https://github.com/btcpayserver/dockerfile-deps) - [DockerHub](https://hub.docker.com/r/btcpayserver/litecoin) |
| wakiyamap/docker-monacoin | 0.20.2 | [✔️](https://raw.githubusercontent.com/wakiyamap/docker-bitcoin/master/monacoin/0.20.2/Dockerfile) | ️❌ | ️❌ | [Github](https://github.com/wakiyamap/docker-bitcoin) - [DockerHub](https://hub.docker.com/r/wakiyamap/docker-monacoin) |
| redis | 6.2.2-buster | [✔️](https://raw.githubusercontent.com/docker-library/redis/f1a8498333ae3ab340b5b39fbac1d7e1dc0d628c/5.0/Dockerfile) | ️❌ | ️❌ | [Github](https://github.com/docker-library/redis) - [DockerHub](https://hub.docker.com/_/redis) |
@ -392,7 +394,7 @@ Note that BTCPayServer developers will not spend excessive time testing your ima
| mempool/frontend | v2.5.0 | [✔️](https://raw.githubusercontent.com/mempool/mempool/v2.5.0/docker/frontend/Dockerfile) | [✔️](https://raw.githubusercontent.com/mempool/mempool/v2.5.0/docker/frontend/Dockerfile) | [✔️](https://raw.githubusercontent.com/mempool/mempool/v2.5.0/docker/frontend/Dockerfile) | [Github](https://github.com/mempool/mempool) - [DockerHub](https://hub.docker.com/r/mempool/frontend) |
| mempool/backend | v2.5.0 | [✔️](https://raw.githubusercontent.com/mempool/mempool/v2.5.0/docker/backend/Dockerfile) | [✔️](https://raw.githubusercontent.com/mempool/mempool/v2.5.0/docker/backend/Dockerfile) | [✔️](https://raw.githubusercontent.com/mempool/mempool/v2.5.0/docker/backend/Dockerfile) | [Github](https://github.com/mempool/mempool) - [DockerHub](https://hub.docker.com/r/mempool/backend) |
| mariadb | 10.11 | [✔️](https://raw.githubusercontent.com/docker-library/mariadb/master/10.11/Dockerfile) | ️❌ | ️❌ | [Github](https://github.com/docker-library/mariadb) - [DockerHub](https://hub.docker.com/_/mariadb) |
| kukks/nnostr-relay | v0.0.18 | [✔️](https://raw.githubusercontent.com/kukks/nnostr/Relay/v0.0.18/Relay/Dockerfile) | [✔️](https://raw.githubusercontent.com/kukks/nnostr/Relay/v0.0.18/Relay/Dockerfile) | [✔️](https://raw.githubusercontent.com/kukks/nnostr/Relay/v0.0.18/Relay/Dockerfile) | [Github](https://github.com/kukks/nnostr) - [DockerHub](https://hub.docker.com/r/kukks/nnostr-relay) |
| kukks/nnostr-relay | v0.0.23 | [✔️](https://raw.githubusercontent.com/kukks/nnostr/Relay/v0.0.23/Relay/Dockerfile) | [✔️](https://raw.githubusercontent.com/kukks/nnostr/Relay/v0.0.23/Relay/Dockerfile) | [✔️](https://raw.githubusercontent.com/kukks/nnostr/Relay/v0.0.23/Relay/Dockerfile) | [Github](https://github.com/kukks/nnostr) - [DockerHub](https://hub.docker.com/r/kukks/nnostr-relay) |
| sphinxlightning/sphinx-relay | v2.2.9 | [✔️](https://raw.githubusercontent.com/stakwork/sphinx-relay/v2.2.9/Dockerfile) | [✔️](https://raw.githubusercontent.com/stakwork/sphinx-relay/v2.2.9/Dockerfile) | [✔️](https://raw.githubusercontent.com/stakwork/sphinx-relay/v2.2.9/Dockerfile) | [Github](https://github.com/stakwork/sphinx-relay) - [DockerHub](https://hub.docker.com/r/sphinxlightning/sphinx-relay) |
| djbooth007/tallycoin_connect | v1.8.0 | [✔️](https://raw.githubusercontent.com/djbooth007/tallycoin_connect/v1.8.0/Dockerfile) | [✔️](https://raw.githubusercontent.com/djbooth007/tallycoin_connect/v1.8.0/Dockerfile.arm32v7) | [✔️](https://raw.githubusercontent.com/djbooth007/tallycoin_connect/v1.8.0/Dockerfile.arm64v8) | [Github](https://github.com/djbooth007/tallycoin_connect) - [DockerHub](https://hub.docker.com/r/djbooth007/tallycoin_connect) |
| 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) |

View File

@ -318,6 +318,14 @@ namespace DockerFileBuildHelper
dockerInfo.GitLink = "https://github.com/Vutov/docker-bitcoin";
dockerInfo.GitRef = "master";
break;
case "snapdrop":
dockerInfo.DockerFilePath = $"Snapdrop/{image.Tag}/Dockerfile";
dockerInfo.DockerFilePathARM32v7 = $"Snapdrop/{image.Tag}/Dockerfile";
dockerInfo.DockerFilePathARM64v8 = $"Snapdrop/{image.Tag}/Dockerfile";
dockerInfo.GitLink = "https://github.com/btcpayserver/dockerfile-deps";
dockerInfo.GitRef = $"Snapdrop/{image.Tag}";
dockerInfo.SupportedByUs = true;
break;
case "lightning":
dockerInfo.DockerFilePath = $"Dockerfile";
dockerInfo.DockerFilePathARM32v7 = "Dockerfile";

View File

@ -308,18 +308,18 @@ cd - && cd ..
# Build elements
# https://raw.githubusercontent.com/btcpayserver/dockerfile-deps/Elements/22.1.1/Elements/22.1.1/linuxamd64.Dockerfile
DOCKERFILE="Elements/22.1.1/linuxamd64.Dockerfile"
# https://raw.githubusercontent.com/btcpayserver/dockerfile-deps/Elements/22.1.1/Elements/22.1.1/linuxarm32v7.Dockerfile
[[ "$(uname -m)" == "armv7l" ]] && DOCKERFILE="Elements/22.1.1/linuxarm32v7.Dockerfile"
# https://raw.githubusercontent.com/btcpayserver/dockerfile-deps/Elements/22.1.1/Elements/22.1.1/linuxarm64v8.Dockerfile
[[ "$(uname -m)" == "aarch64" ]] && DOCKERFILE="Elements/22.1.1/linuxarm64v8.Dockerfile"
echo "Building btcpayserver/elements:22.1.1"
# https://raw.githubusercontent.com/btcpayserver/dockerfile-deps/Elements/23.2.1/Elements/23.2.1/linuxamd64.Dockerfile
DOCKERFILE="Elements/23.2.1/linuxamd64.Dockerfile"
# https://raw.githubusercontent.com/btcpayserver/dockerfile-deps/Elements/23.2.1/Elements/23.2.1/linuxarm32v7.Dockerfile
[[ "$(uname -m)" == "armv7l" ]] && DOCKERFILE="Elements/23.2.1/linuxarm32v7.Dockerfile"
# https://raw.githubusercontent.com/btcpayserver/dockerfile-deps/Elements/23.2.1/Elements/23.2.1/linuxarm64v8.Dockerfile
[[ "$(uname -m)" == "aarch64" ]] && DOCKERFILE="Elements/23.2.1/linuxarm64v8.Dockerfile"
echo "Building btcpayserver/elements:23.2.1"
git clone https://github.com/btcpayserver/dockerfile-deps elements
cd elements
git checkout Elements/22.1.1
git checkout Elements/23.2.1
cd "$(dirname $DOCKERFILE)"
docker build -f "$DOCKERFILE" -t "btcpayserver/elements:22.1.1" .
docker build -f "$DOCKERFILE" -t "btcpayserver/elements:23.2.1" .
cd - && cd ..
@ -782,18 +782,18 @@ cd - && cd ..
# Build nnostr-relay
# https://raw.githubusercontent.com/kukks/nnostr/Relay/v0.0.18/Relay/Dockerfile
# https://raw.githubusercontent.com/kukks/nnostr/Relay/v0.0.23/Relay/Dockerfile
DOCKERFILE="Relay/Dockerfile"
# https://raw.githubusercontent.com/kukks/nnostr/Relay/v0.0.18/Relay/Dockerfile
# https://raw.githubusercontent.com/kukks/nnostr/Relay/v0.0.23/Relay/Dockerfile
[[ "$(uname -m)" == "armv7l" ]] && DOCKERFILE="Relay/Dockerfile"
# https://raw.githubusercontent.com/kukks/nnostr/Relay/v0.0.18/Relay/Dockerfile
# https://raw.githubusercontent.com/kukks/nnostr/Relay/v0.0.23/Relay/Dockerfile
[[ "$(uname -m)" == "aarch64" ]] && DOCKERFILE="Relay/Dockerfile"
echo "Building kukks/nnostr-relay:v0.0.18"
echo "Building kukks/nnostr-relay:v0.0.23"
git clone https://github.com/kukks/nnostr nnostr-relay
cd nnostr-relay
git checkout Relay/v0.0.18
git checkout Relay/v0.0.23
cd "$(dirname $DOCKERFILE)"
docker build -f "$DOCKERFILE" -t "kukks/nnostr-relay:v0.0.18" .
docker build -f "$DOCKERFILE" -t "kukks/nnostr-relay:v0.0.23" .
cd - && cd ..
@ -813,6 +813,22 @@ docker build -f "$DOCKERFILE" -t "pihole/pihole:2023.05.2" .
cd - && cd ..
# Build snapdrop
# https://raw.githubusercontent.com/btcpayserver/dockerfile-deps/Snapdrop/1.0/Snapdrop/1.0/Dockerfile
DOCKERFILE="Snapdrop/1.0/Dockerfile"
# https://raw.githubusercontent.com/btcpayserver/dockerfile-deps/Snapdrop/1.0/Snapdrop/1.0/Dockerfile
[[ "$(uname -m)" == "armv7l" ]] && DOCKERFILE="Snapdrop/1.0/Dockerfile"
# https://raw.githubusercontent.com/btcpayserver/dockerfile-deps/Snapdrop/1.0/Snapdrop/1.0/Dockerfile
[[ "$(uname -m)" == "aarch64" ]] && DOCKERFILE="Snapdrop/1.0/Dockerfile"
echo "Building btcpayserver/snapdrop:1.0"
git clone https://github.com/btcpayserver/dockerfile-deps snapdrop
cd snapdrop
git checkout Snapdrop/1.0
cd "$(dirname $DOCKERFILE)"
docker build -f "$DOCKERFILE" -t "btcpayserver/snapdrop:1.0" .
cd - && cd ..
# Build sphinx-relay
# https://raw.githubusercontent.com/stakwork/sphinx-relay/v2.2.9/Dockerfile
DOCKERFILE="Dockerfile"

View File

@ -0,0 +1,14 @@
version: "3"
services:
snapdrop:
restart: unless-stopped
image: btcpayserver/snapdrop:1.0
container_name: snapdrop
expose:
- "8080"
btcpayserver:
environment:
BTCPAY_EXTERNALSERVICES: "Snapdrop:${BTCPAY_PROTOCOL:-https}://${BTCPAY_HOST}/snapdrop;"