Compare commits

...

813 Commits

Author SHA1 Message Date
Nicolas Dorier
70a6e3b4c4
Bump BTCPay 2.4.0 2026-06-25 22:00:03 +09:00
Nicolas Dorier
2fcbae7504
Revert "Bumping LND to 0.21.0-beta (#1058)"
This reverts commit 9f50d12b86.
2026-06-22 21:02:35 +09:00
rockstardev
9f50d12b86
Bumping LND to 0.21.0-beta (#1058) 2026-06-22 16:21:39 +09:00
macintoshhelper
5a10e94e91
update zcash fragment for NU 6.2 (#1055) 2026-06-15 09:26:50 +09:00
BitcoinMitchell
c545f02b04
refactor: Removed Torq (#1057) 2026-06-15 09:07:23 +09:00
Nicolas Dorier
a444532cef
Update switch-node.sh options in README 2026-05-21 15:18:58 +09:00
Léo Haf
615404fca7
Update Bitcoin Knots to v29.3.knots20260508 (#1054) 2026-05-14 10:50:22 +09:00
Nicolas Dorier
edf7533b39
Remove old code 2026-05-13 11:46:48 +09:00
Nicolas Dorier
209646a876
bump 26.2 2026-05-12 21:27:26 +09:00
Nicolas Dorier
f9e025087e
New switch-node.sh tool (#1053)
* Add bitcoin core 31.0

* Add switch-node.sh to switch node implementations
2026-05-12 19:54:32 +09:00
Nicolas Dorier
c50d83b7b8
bump litecoin 2026-05-09 18:41:05 +09:00
Nicolas Dorier
c53e2dd808
bump litecoin 2026-04-27 09:05:11 +09:00
Nicolas Dorier
847eeb27b9
bump 2026-04-24 17:34:42 +09:00
Nicolas Dorier
88ad6f201b
bump 2026-04-23 20:30:42 +09:00
Nicolas Dorier
e353eda9ce
bump nbx 2026-04-16 22:56:56 +09:00
Nicolas Dorier
0450edf79d
Update doc 2026-04-14 09:01:54 +09:00
Nicolas Dorier
ba2b76663e
bump NBX 2026-04-14 08:55:06 +09:00
JoeGruffins
ad1e82630f
multi: Add Decred (DCR) support. (#1052)
Adds compose fragments for running dcrwallet as an SPV wallet,
connecting directly to the Decred P2P network without a full node.
Requires the BTCPayServer Decred plugin for invoice and payment
handling.
2026-04-13 12:12:09 +09:00
d2ro
7e3e6766ac
disable nginx access_log (#1034) 2026-04-07 20:50:26 +09:00
Nicolas Dorier
9fe677e907
bump btcpay 2026-04-02 23:11:40 +09:00
Chukwuleta Tobechi
258870c47c
Bump shopify to 1.8 (#1050) 2026-03-31 16:16:08 +09:00
rockstardev
537c86ad55
Bumping LND to 0.19.3-beta-1 (#1048) 2026-03-26 08:48:05 +09:00
Chukwuleta Tobechi
78829a38c4
Update Shopify app deployer image version to 1.7 (#1047) 2026-03-23 18:54:43 +09:00
Nicolas Dorier
e5da3b2c88
Update docs 2026-03-20 10:34:14 +09:00
Nicolas Dorier
3bf5b000c8
bump dotnet 2026-03-20 10:31:38 +09:00
Nicolas Dorier
7af397cb58
Remove other version: 2026-03-20 10:25:10 +09:00
RecRanger
6f8b6bdc01
Remove deprecated docker-compose version: field (#1036) 2026-03-20 09:55:00 +09:00
Léo Haf
b44b49aa2c
Update Knots image to 29.3.knots20260210 (#1040) 2026-03-20 09:54:11 +09:00
Anthony Potdevin
6e03939bbb
Update Thunderhub version to v0.15.4 (#1045)
* Update Thunderhub version to v0.15.4

* Update Thunderhub image to version 0.15.4

* Fix tag format for thunderhub Docker image

* Update thunderhub version in README

Updated thunderhub version from base-v0.14.6 to base-0.15.4 in the README.
2026-03-20 09:51:43 +09:00
Pasta Lil Claw
31530ef588
chore: update Dash to 23.1.2 (#1044)
Co-authored-by: PastaClaw <thepastaclaw@users.noreply.github.com>
2026-03-20 09:51:21 +09:00
Nicolas Dorier
1a1e5b343c
bump btcpay 2026-03-15 20:50:58 +09:00
Nicolas Dorier
83d829ba29
Fix rare migration issue in postgres 2026-03-06 23:51:44 +09:00
Nicolas Dorier
880d9a7053
Reapply "bump btcpay"
This reverts commit 63786821bb.
2026-02-17 22:02:16 +09:00
Nicolas Dorier
63786821bb
Revert "bump btcpay"
This reverts commit 97b8abebcb.
2026-02-17 21:58:02 +09:00
Nicolas Dorier
97b8abebcb
bump btcpay 2026-02-17 21:57:08 +09:00
Nicolas Dorier
e091b30421
Update docs 2026-02-16 22:41:18 +09:00
codeman
d5c66cbcc4
Beldex Plugin Integration (#1042)
* created yml file for the beldex daemon and wallet

* beldex integration in btcpay-server

* build script for beldex image

* Update Docker image name for beldex

* Update Docker images to official registries

* Auto-load wallet with BDX plugin intead of wallet RPC

---------

Co-authored-by: victor-tucci <victor.tucci@beldex.io>
Co-authored-by: victor-tucci <80321576+victor-tucci@users.noreply.github.com>
2026-02-16 22:27:38 +09:00
Nicolas Dorier
240cda561a
If no bitcoin like currency is used, NBX shouldn't be deployed (#1041) 2026-02-15 22:08:02 +09:00
napoly
2536559731
Auto-load wallet with XMR plugin intead of wallet RPC (#1035) 2026-02-10 11:18:50 +09:00
Nicolas Dorier
0a72dcd676
Bump postgres 18.1 2026-02-03 18:06:10 +09:00
Nicolas Dorier
3bd29ae5a4
bump btcpay 2026-01-29 13:48:03 +09:00
Chukwuleta Tobechi
2deb883c16
Bump Shopify app deployer image version to 1.6 (#1038) 2026-01-18 23:58:09 +09:00
rockstardev
4cdadcf667
Adding explicit exit 0 to revert cleanup errors 2026-01-14 12:39:21 -06:00
rockstardev
a1a6b8a66e
Merge pull request #1037 from btcpayserver/feat/env-clean
Add BTCPAY_UPDATE_CLEAN environment option
2026-01-15 03:33:31 +09:00
rockstardev
2be4549094
Removing exit 0 and make it consistent style 2026-01-14 12:32:16 -06:00
rockstardev
2b0ad6ba33
Add BTCPAY_UPDATE_CLEAN environment option
This commit provides a less-intrusive pruning of all images after
running an update.

Ideally, there would be a better prune filter but that appears to
require more granular tracking of images; including
btcpayserver/docker-compose-generator (which only pulls from latest).

This option should suffice for the time being.

bf518660c7
2026-01-13 17:01:50 -06:00
Nicolas Dorier
68cfe745c1
Bump btcpayserver 2026-01-13 12:04:52 +09:00
Nicolas Dorier
829f564f33 bump btcpay 2026-01-02 16:51:03 +09:00
Nicolas Dorier
15b3e5f98b downgrade doge 2025-12-25 19:56:42 +09:00
Nicolas Dorier
2ff29f469e bump btcpay 2025-12-23 21:44:45 +09:00
Nicolas Dorier
7e0fa145cc bump btcpay 2025-12-18 23:01:37 +09:00
macintoshhelper
3e49a2063b
Update Zcash fragments for NU6.1 (#1033)
* update zcash for nu6.1

* update zebra 3.0.0 docker env variables for zcash

* update zebra env var address

---------

Co-authored-by: macintoshhelper <6757532+macintoshhelper@users.noreply.github.com>
2025-12-01 12:19:16 +09:00
armelinw
af3d32e5c7
Bump phoenixd to 0.6.3 (#1015) 2025-11-12 17:37:18 +09:00
Léo Haf
a42d187142
update Bitcoin Knots image (#1027) 2025-11-12 17:36:28 +09:00
nicolas.dorier
152065ce86
fix compose-bin in doc 2025-11-12 00:20:56 +09:00
nicolas.dorier
62013a05bd
bump docker-compose 2025-11-12 00:12:04 +09:00
rachyandco
cb53f9e9c6
bump zcash-walletd to 1.1.4 (#1025)
Co-authored-by: Rachyandco <alexis@nymtech.net>
2025-11-03 23:24:32 +09:00
napoly
4c95198375
bump monero and move init to docker exec (#1026) 2025-11-03 21:46:38 +09:00
rachyandco
819cf8d2f2
add backup script exclusion paths for DASH, LTCMWEB and ZEC (#1024)
Co-authored-by: Rachyandco <alexis@nymtech.net>
2025-11-02 11:29:43 +09:00
Nicolas Dorier
2ac3c8516c
Fix: Ungraceful shutdown of zcash and monero (#1023) 2025-11-01 22:39:58 +09:00
macintoshhelper
da970dad91
Correct BTCPAY_ZEC_WALLET_DAEMON_CONFIG_PATH (#1019)
* correct BTCPAY_ZEC_WALLET_DAEMON_CONFIG_PATH

* fix typo

---------

Co-authored-by: macintoshhelper <6757532+macintoshhelper@users.noreply.github.com>
2025-10-11 23:58:02 +09:00
macintoshhelper
6932fd11c4
add zec config path env var for btcpay container (#1018)
Co-authored-by: macintoshhelper <6757532+macintoshhelper@users.noreply.github.com>
2025-10-11 22:24:16 +09:00
macintoshhelper
2479f8bd93
Upgrade zcash-walletd Docker image for Orchard (#1017)
* upgrade zcash docker image for orchard with new db/config path

* pin zcash image versions

---------

Co-authored-by: macintoshhelper <6757532+macintoshhelper@users.noreply.github.com>
2025-10-08 15:41:31 +09:00
rockstardev
3663b667e9
Bumping LND to 0.19.3-beta (#1012) 2025-09-19 23:41:40 -05:00
rockstardev
67b4055898
Bumping LND to 0.19.3-beta 2025-09-19 23:40:21 -05:00
Chukwuleta Tobechi
b022c7ec1f
Bump shopify app deployer to 1.5 (#1010) 2025-09-16 16:52:46 +09:00
João Dias
0e633dc6c2
add jaonoctus utxo-set signature (#940) 2025-09-11 14:00:58 +02:00
sarmin89
ecbda1cdd8
Bump dogecoin v.1.14.9 (#983)
* Bump dogecoin v.1.14.9

Wait to merge until after https://github.com/btcpayserver/dockerfile-deps/pull/111 is merged

* Update docker-compose-generator/docker-fragments/dogecoin.yml

---------

Co-authored-by: Andrew Camilleri <evilkukka@gmail.com>
2025-09-11 13:59:23 +02:00
Deverick
d1fff34e73
Bump Monero image version to 0.18.4.2 (#1007) 2025-09-11 13:54:47 +02:00
Anthony Potdevin
b0a7f2c9f0
Bump ThunderHub (#1009)
* Update opt-add-thunderhub.yml

* Update build-all-images.sh

* Update README.md
2025-09-11 13:44:52 +02:00
Andrew Camilleri (Kukks)
ca60e0e18e
Make opt-lnd-grpc included by default
Closes #937
2025-09-11 13:41:25 +02:00
nicolas.dorier
e4f5214e3e
bump 2025-09-09 22:41:08 +09:00
nicolas.dorier
9fe3dae48f
bump nbx and btcpay dotnet version 2025-09-06 11:33:03 +09:00
Anthony Potdevin
c193cc6bdb
Bump Thunderhub version (#1006)
* Update opt-add-thunderhub.yml

* Update README.md

* Update build-all-images.sh
2025-08-27 15:36:11 +02:00
nicolas.dorier
5b4329c33b
Bump nbx 2025-08-25 10:29:01 +09:00
nicolas.dorier
cdb319d61f
bump nbx 2025-08-24 07:09:14 +09:00
napoly
880417c8b2
bump monero to 0.18.4.1 (#1004) 2025-08-23 01:31:57 +01:00
Deverick
329c7a8538
Refactor Monero: Use unified Dockerfile, switch to CMD, and update volume path (#1003)
* Replace entrypoint with command for monero

* Update volume for monerod to abstract data layer from app

* Migrate all Monero Images to use Dockerfile
2025-08-21 01:07:42 +01:00
Markus Petzsch
7fb46d125e
Bumping LND to 0.19.1-beta (#996) 2025-07-31 13:59:01 +02:00
rockstardev
54e2b1b669
bump btcpay to 2.2.0 2025-07-31 13:52:53 +02:00
nicolas.dorier
47787d68b0
bump cln 2025-07-16 16:21:35 +09:00
nicolas.dorier
2752963de5
Update source of zcash-walletd in the doc 2025-07-05 10:55:30 +09:00
nicolas.dorier
89a3d8f40c
Revert groestlcoin to 25.0 2025-07-04 22:42:05 +09:00
nicolas.dorier
09f1c1d83a
bump btcpay 2025-07-04 22:36:02 +09:00
nicolas.dorier
fe202ff85e
Revert "Downgrade monero"
This reverts commit f9a4e97fc4.
2025-07-03 10:13:49 +09:00
nicolas.dorier
f9a4e97fc4
Downgrade monero 2025-07-02 11:20:48 +09:00
macintoshhelper
e38ede5eef
Add Zcash support (#995)
* add zcash fragment with definition

* fix zcash port number

* fix zec db data and add zec lightwalletd fullnode opt

* fix zec lightwalletd zcash.conf error

* remove LWD_URL for main zec fragment

* set zcash docker image to latest

* revert zcash-walletd to 0.0.2

* move zec lwd_url back to zecrocks

* add zcash-fullnode exclusive fragment

* add fragment configs support

* fix compose generator configs

---------

Co-authored-by: macintoshhelper <6757532+macintoshhelper@users.noreply.github.com>
2025-07-01 11:15:52 +09:00
gruve-p
c2dad64194
Bump Groestlcoin Core to 29.0 and lightning (#856) 2025-06-27 13:58:42 +02:00
Seth For Privacy
9dc5ca2612 Bump Monero to v0.18.4.0 2025-06-27 13:56:24 +02:00
Anthony Potdevin
6bdd29295a
Update opt-add-thunderhub.yml (#997)
* Update opt-add-thunderhub.yml

* Update README.md

* Update build-all-images.sh
2025-06-25 09:21:11 +09:00
nicolas.dorier
f1905f9ec6
bump btcpay 2025-06-15 23:08:05 +09:00
nicolas.dorier
c6019f1e13
bump btcpay 2025-06-11 09:55:19 +09:00
Andrew Camilleri
6100430ba4
Update btcpayserver.yml 2025-06-10 21:56:28 +02:00
nicolas.dorier
14f086fe5b
bump btcpay 2025-06-09 22:00:54 +09:00
nicolas.dorier
e6f2c46ad0
Update doc 2025-05-27 22:50:34 +09:00
nicolas.dorier
187042c830
update doc 2025-05-27 22:48:16 +09:00
pm47
86ab6cdd21
Add Phoenixd support (#987)
* add phoenixd fragment

* define phoenixd as lightning implementation

* add btcpayserver section and hardcoded api password

* set correct phoenix datadir

* remove phoenixd->btcpayserver dependency

* use phoenixd 0.6.0

* added phoenix-cli scripts
2025-05-27 22:41:41 +09:00
nicolas.dorier
1b5b46a993
bump nbx 2025-05-15 10:37:19 +09:00
Nicolas Dorier
6dfd19bec6
Add nolimits (#991) 2025-05-12 12:52:07 +09:00
Léo Haf
4f5d44d18f
add knots as a bitcoind backend (#989)
* add knots fragment

* Switch to official image

Co-authored-by: Markus Petzsch <markus@petzsch.eu>

---------

Co-authored-by: Markus Petzsch <markus@petzsch.eu>
2025-05-11 18:23:00 +09:00
nicolas.dorier
f3a319e7f9
Add auth_basic/req off 2025-05-06 23:39:52 +09:00
rockstardev
9aa2d310f8
Not redirecting acme-challange url 2025-04-30 14:12:21 -05:00
nicolas.dorier
77f61eb386
bump btcpay 2025-04-28 23:02:52 +09:00
nicolas.dorier
c98570e60d
Fix error invalid chain XMR 2025-04-10 23:23:21 +09:00
nicolas.dorier
ea6c63f043
bump btcpay and nbx 2025-04-10 18:34:25 +09:00
nicolas.dorier
9ac85f25a5
bump shopify-app 2025-04-09 20:30:18 +09:00
nicolas.dorier
c09f6513b5
bump nbx 2025-04-04 22:31:33 +09:00
nicolas.dorier
4053153be3
bump cln 2025-03-31 22:02:41 +09:00
nicolas.dorier
6b02777496
bump btcpay 2025-03-31 10:22:29 +09:00
nicolas.dorier
3a102e9588
Bump shopify-app-deployer 2025-03-22 00:04:56 +09:00
nicolas.dorier
f97850780f
Fix pihole dashboard access 2025-03-20 23:57:01 +09:00
nicolas.dorier
b4586c1d5d
bump pihole 2025-03-20 23:33:04 +09:00
nicolas.dorier
732d676891
Fix doc 2025-03-08 22:38:44 +09:00
nicolas.dorier
6666e3fed2
Update docs for mweb 2025-03-08 22:37:11 +09:00
nicolas.dorier
2ae3621bfd
bump btcpay 2025-03-08 22:35:59 +09:00
Nicolas Dorier
db361e25e1
Add shopify plugin (#977) 2025-02-22 11:50:35 +09:00
nicolas.dorier
4f73dc89fc
bump cloudflare 2025-02-19 19:57:56 +09:00
Hector Chu
28a4597eea
Add Litecoin MWEB docker fragment (#974)
* Add MWEB docker fragment

* Add container name
2025-02-19 19:13:13 +09:00
nicolas.dorier
48c3cf19cf
Bump cloudflare
This reverts commit 3b04576e15.
2025-02-19 18:14:41 +09:00
nicolas.dorier
3b04576e15
Revert "bump cloudflare"
This reverts commit f60ad08740.
2025-02-19 18:10:04 +09:00
nicolas.dorier
f60ad08740
bump cloudflare 2025-02-19 16:26:44 +09:00
nicolas.dorier
0df726703e
Revert "Update Cloudflared"
This reverts commit 42aed95a48.
2025-02-19 15:46:19 +09:00
nicolas.dorier
42aed95a48
Update Cloudflared 2025-02-19 15:40:49 +09:00
rockstardev
279a93d676
Bumping LITD to 0.14.1-beta (#976) 2025-02-19 14:01:30 +09:00
rockstardev
6283e18276
Bumping LND to 0.18.5-beta (#975) 2025-02-19 13:53:40 +09:00
nicolas.dorier
f7b637f191
bump cloudflare 2025-02-18 22:56:38 +09:00
PastaPastaPasta
90c5813121
chore: update Dash to 22.0.0 (#970) 2025-02-18 15:53:13 +09:00
jackstar12
1538884868 feat: enable cln grpc interface 2025-02-14 19:02:48 +01:00
nicolas.dorier
fccaa7b06f
bump btcpay 2025-01-22 00:16:01 +09:00
Richard J. Safier
1f4de8a4bd
Version bump bitcoin to 27.1 (#920)
Version bump 27.1
2025-01-12 23:04:01 +09:00
rockstardev
ad675de966
Merge pull request #967 from petzsch/bump-lnd-v0.18.4-beta
Bumping LND to 0.18.4-beta
2025-01-11 00:43:05 -05:00
Markus Petzsch
2c674f8c69 Bumping LND to 0.18.4-beta 2025-01-08 09:09:59 +01:00
nicolas.dorier
bb69f874d8
Bump BTCPay 2.0 2024-12-23 23:16:27 +09:00
nicolas.dorier
02edbeaf8e
Bump clightning 2024-12-23 10:16:49 +09:00
nicolas.dorier
7df47fa680
Update postgres and nbxplorer 2024-12-23 10:10:39 +09:00
nicolas.dorier
f5c2648044
bump dotnet for the docker-fragments 2024-12-23 10:01:41 +09:00
Ishimwe Prince
8347685126
chore: setup monero tooling (#961)
* chore: setup interaction with monero-wallet-cli

* fix: add new line

* chore: add powershell script

* fix: clean up

* chore: add monero-wallet-cli to the tools
2024-12-18 14:57:23 +09:00
rockstardev
61405c1cbe
Merge pull request #957 from btcpayserver/feat/fast-sync
Updating FastSync UTXO set and location of it
2024-12-16 09:07:17 -06:00
d11n
9ca208c1ca
Lightning Terminal: Upgrade to v0.13.5 (#963)
Closes #962.
2024-12-10 16:35:43 +01:00
nicolas.dorier
78ebed8e8d
bump NBXplorer 2024-11-29 14:31:50 +09:00
rockstardev
e1b10ce9d7 Updating UTXO set and location of it 2024-11-20 19:53:11 -06:00
rockstardev
f23d0b0069
Merge pull request #956 from ShahanaFarooqui/feat/rtl-0.15.4
Bumping RTL to v0.15.4
2024-11-19 23:02:47 -06:00
rockstardev
d61050beae Bumping RTL to v0.15.4 2024-11-18 15:14:25 -08:00
nicolas.dorier
3a83d3c12c
bump BTCPay 2024-11-14 22:50:43 +09:00
nicolas.dorier
dba64bf230
bump NBXplorer 2024-11-14 22:33:07 +09:00
nicolas.dorier
a7670a0fb4
bump nbx 2024-11-13 15:46:32 +09:00
Seth For Privacy
f989152921
Bump Monero to v0.18.3.4 (#948) 2024-11-07 16:13:16 +09:00
nicolas.dorier
dfff69d3f5
bump 1.13.6 2024-11-04 13:19:51 +09:00
nicolas.dorier
d7e603a3a4
Bump NBXplorer 2024-10-26 10:24:20 +09:00
rockstardev
310dea5ce6 Bump LND version to 0.18.3 in related files 2024-10-18 12:14:10 -05:00
rockstardev
68ff5bd71f
Merge pull request #939 from btcpayserver/feat/lnd-v0.18.3-beta
Bumping LND to 0.18.3-beta
2024-10-16 22:18:39 -05:00
rockstardev
d2950ee293 Bumping LND to 0.18.3-beta 2024-10-15 18:29:11 -05:00
Mário Havel
f05723a629
update thunderhub to v0.13.31 (#932) 2024-09-25 16:48:23 +02:00
d11n
10b8315917
JoinMarket: Upgrade to v0.9.10 (#859) 2024-09-17 09:53:03 +02:00
nicolas.dorier
bbecf79956
bump 2024-09-17 16:20:14 +09:00
Andrew Camilleri
659ebb5b7c
format fix 2024-09-17 08:22:40 +02:00
Andrew Camilleri
9bb621f239
Update btcpay-setup.sh
closes #874
2024-09-17 08:21:55 +02:00
Andrew Camilleri
89fa3cab14
Update liquid.yml 2024-09-17 08:15:50 +02:00
WakiyamaP
371cfe0c10
Update ubuntu image on CircleCI (#899) 2024-09-03 21:48:17 +09:00
nicolas.dorier
396a48644b
Bump snapdrop 2024-08-31 13:32:07 +09:00
nicolas.dorier
9e7b4a25c2
bump nbx 2024-08-30 16:33:44 +09:00
nicolas.dorier
4c15cdf2d4
Bump nbx 2024-08-30 09:52:47 +09:00
d11n
5557e224bb
Mark BlueWallet LNDhub fragment as deprecated (#917)
* Mark BlueWallet LNDhub fragment as deprecated

See https://github.com/btcpayserver/btcpayserver/issues/6070#issuecomment-2205892096

* Add deprecated flag and skip those images in README generator

* Update generated files
2024-08-29 18:18:43 +09:00
nicolas.dorier
3c63fc3697
bump snapdrop 2024-08-22 18:51:43 +09:00
Seth For Privacy
ae7159b52e
Revert "Fix explicit wallet file paths (#909)" (#916)
This reverts commit a5540e58ed.
2024-07-29 19:37:13 +02:00
nicolas.dorier
1e08b52574
bump btcpay 2024-07-17 11:30:17 +09:00
napoly
a5540e58ed
Fix explicit wallet file paths (#909) 2024-07-15 22:13:06 +09:00
nicolas.dorier
cff45bc1db
bump btcpay 2024-07-15 22:12:00 +09:00
Andrew Camilleri
650e831dc1
Update bitcoin-clightning.yml (#906) 2024-07-10 09:49:09 +09:00
rockstardev
56446ba78c
Bumping LND to 0.18.1-beta (#911) 2024-07-09 16:34:32 +09:00
Seth For Privacy
aec5e1ed8a
Fix broken Monero wallet directory (#907) 2024-06-18 18:21:30 +02:00
nicolas.dorier
f23a2b254d
downgrade NBX 2024-06-15 04:33:16 +09:00
strophy
8a62590c00
chore: update to dash 20.1.0 (#888)
Co-authored-by: Andrew Camilleri <kukks@btcpayserver.org>
2024-06-14 08:52:25 +02:00
Benjamin Evans Chodroff
b4373ce274
Move from python-teos to rust-teos (#865)
* Update opt-add-teos.yml

Fixing TEOS to work with the new rust version (v0.2.0) and now running under teos user.

* remove txindex req for teos

---------

Co-authored-by: Andrew Camilleri <kukks@btcpayserver.org>
Co-authored-by: Andrew Camilleri <evilkukka@gmail.com>
2024-06-14 08:46:47 +02:00
napoly
fd15c1d9db
Monero version bump and setup fix (#903) 2024-06-14 08:44:38 +02:00
Andrew Camilleri
68472256a0
Bump btcpay 2024-06-13 14:56:27 +02:00
rockstardev
80ebc3aa70 Bumping LND to 0.18.0-beta 2024-06-10 14:23:09 +02:00
nicolas.dorier
5a5e2064b4
bump btcpay 2024-06-05 22:52:40 +09:00
Nicolas Dorier
96a5f1dead
Add snapdrop (#902) 2024-06-05 10:53:37 +09:00
Andrew Camilleri
272fb42882
Update opt-add-nostr-relay.yml 2024-05-15 12:21:00 +02:00
Andrew Camilleri
df229c21ec
Update opt-add-nostr-relay.yml 2024-05-15 11:26:59 +02:00
Andrew Camilleri
d1d3389a54
Update opt-add-nostr-relay.yml 2024-05-15 09:02:42 +02:00
Andrew Camilleri
5d61baf544
Update opt-add-nostr-relay.yml 2024-05-14 14:59:34 +02:00
Andrew Camilleri
d9babd66ca
Update opt-add-nostr-relay.yml 2024-05-14 11:53:38 +02:00
Andrew Camilleri
7b0f9e1404
Update liquid.yml 2024-05-13 10:21:51 +02:00
BitcoinMitchell
24b5213a20
Update README.md (#895)
Added missing .yml for `opt-lnd-autocompact`.
2024-04-28 19:00:10 +02:00
nicolas.dorier
72f7a3afb4
bump btcpay 2024-04-15 23:30:44 +09:00
Nicolas Dorier
0a1547b35f
Bump CLightning (#894) 2024-04-15 20:08:23 +09:00
nicolas.dorier
2fca39ca92
bump doge 2024-04-13 19:22:51 +09:00
Snoppy
a733148686
chore: fix typos (#890) 2024-03-30 10:20:14 +01:00
nicolas.dorier
1cd0faf93c
Update BTCPay 2024-03-28 22:48:33 +09:00
Dennis Reimann
632bebc827
Lightning Terminal: Downgrade to v0.12.3 (#885)
There's no working image for v0.12.4 yet.
2024-03-25 20:05:59 +01:00
d11n
0f19f7199f
Lightning Terminal: Upgrade to v0.12.4 (#885)
* Lightning Terminal: Upgrade to v0.12.3

* Lightning Terminal: Upgrade to v0.12.4
2024-03-25 18:08:46 +01:00
nicolas.dorier
5e2fde45a2
bump nbx 2024-03-06 19:29:01 +09:00
nicolas.dorier
ec8fea5ecf
bump nbx 2024-03-06 16:27:54 +09:00
Arvin
bcc01c95ad
Add trim_headers to liquid-default-prune config (#881)
This activates the 'trim_headers' option to be even lighter on RAM when syncing and running the node.

See for more:
https://blog.liquid.net/elements-22-1-1-optimize-your-node-for-lightweight-diy-hardware/
2024-02-29 18:12:28 +00:00
rockstardev
60973673be
Update README.md with new LND version 2024-02-14 11:15:26 -06:00
rockstardev
3570bcd7fe Bumping LND to 0.17.4-beta 2024-02-13 23:30:52 -05:00
nicolas.dorier
df71ca2d91
bump BTCPay 2024-02-01 10:17:25 +09:00
nicolas.dorier
489fc50bfd
Allow btcpay-setup.sh to run if no docker available 2024-01-30 18:13:02 +09:00
nicolas.dorier
a35ec6641e
fix build 2024-01-30 14:33:32 +09:00
nicolas.dorier@gmail.com
8f81178fde Use buildx for docker-compose-generator 2024-01-30 14:30:32 +09:00
nicolas.dorier
40f5ea5fe2
docker-compose-generator should include docker-compose install image 2024-01-30 14:22:44 +09:00
nicolas.dorier
27b7e0a43c
Fix possible update failure on xenial 2024-01-29 16:55:04 +09:00
nicolas.dorier
a4a56bb6da
Fix docker version detection 2024-01-29 16:47:55 +09:00
nicolas.dorier
9b30caa09c
bump nginx letsencrypt, fix error running /app/force_renew 2024-01-26 16:11:50 +09:00
nicolas.dorier
f278e00770
bump 2024-01-25 21:27:25 +09:00
Nicolas Dorier
4e8aa5e5c5
Increase shm_size for postgres container (#868)
This prevent VACUUM from failing with error
"could not resize shared memory segment "/PostgreSQL.1038930517" to 67128416 bytes: No space left on device"

This degrades the performances of the database
2024-01-10 19:48:43 +09:00
ktechmidas
0ce063e8f0
chore: update Dash to 20.0.2 (#855)
Co-authored-by: ktechmidas <daniel@ktechmidas.net>
2024-01-03 12:20:04 +09:00
nicolas.dorier
bff2102d42
Update README 2023-12-31 12:37:53 +09:00
nicolas.dorier
0c0e234ec2
bump nbx 2023-12-31 12:37:26 +09:00
rockstardev
51214ff47c Bumping LND to 0.17.3-beta 2023-12-28 10:56:10 -05:00
Nicolas Dorier
1ef9d11738
Update docker-compose (#863) 2023-12-26 18:55:47 +09:00
Nicolas Dorier
885de9496f
Fix potential real_ip_header is duplicate error (#862) 2023-12-26 15:18:04 +09:00
nicolas.dorier
723eba8f84
bump NBX 2023-12-25 14:23:31 +09:00
nicolas.dorier
202f6d4a8f
bump cloudflared 2023-12-23 11:59:11 +09:00
nicolas.dorier
b53d970148
Update btcpay 2023-12-22 14:31:08 +09:00
Anthony Potdevin
c406e70863
Update opt-add-thunderhub.yml (#860)
* Update opt-add-thunderhub.yml

* Update README.md

* Update build-all-images.sh
2023-12-22 06:27:57 +01:00
nicolas.dorier
16db1122bf
bump btcpay 2023-12-22 10:58:43 +09:00
nicolas.dorier
143fe21d54
bump btcpay 2023-12-22 00:02:01 +09:00
Nicolas Dorier
08d51c5fa6
Update README.md 2023-12-20 13:48:50 +09:00
nicolas.dorier
2f1309c06e
bump btcpay 2023-12-19 21:09:11 +09:00
nicolas.dorier
8e36ae8531
fix letsencrypt image for local btcpay 2023-12-15 10:28:21 +09:00
nicolas.dorier
01f545960e
FastSync Update UTXO Set 2023-12-14 20:23:00 +09:00
nicolas.dorier
e00698217d
Update key for updating libseccomp2 2023-12-14 16:03:53 +09:00
nicolas.dorier
4b3dafa71a
bump tor 2023-12-13 22:05:42 +09:00
nicolas.dorier
a9ab300997
bump docker-gen 2023-12-13 13:59:54 +09:00
nicolas.dorier
0f2316287e
Fix stuck docker update 2023-12-12 22:01:18 +09:00
nicolas.dorier
62c1092645
bump nbx 2023-12-12 19:13:47 +09:00
nicolas.dorier
73e2e999e6
bump letsencrypt 2023-12-12 18:42:33 +09:00
nicolas.dorier
d4548e36da
Do not update 20.10.10 docker 2023-12-12 18:34:22 +09:00
nicolas.dorier
6737d7b8d8
Do not update 20.10.10 docker 2023-12-12 18:32:17 +09:00
nicolas.dorier
976eebe892
bump nginx 2023-12-12 14:30:32 +09:00
nicolas.dorier
fe8ee001e3
bump Bitcoin 2023-12-12 13:01:25 +09:00
nicolas.dorier
92018fc41a
bump nbx 2023-12-11 19:14:02 +09:00
nicolas.dorier
aa55e7c525
bump .NET8.0 version of the docker-compose generator 2023-12-11 18:11:36 +09:00
nicolas.dorier
2a9cf197cf
Fix issue where docker doesn't update 2023-12-11 16:25:53 +09:00
nicolas.dorier
6b5841efdc
bump nbx 2023-11-29 09:15:53 +09:00
nicolas.dorier
5ea2e55848
bump bitcoin core 2023-11-28 10:32:39 +09:00
René Aaron
bac24e8d2b
Revert "Allow CORS for LND REST API" (#817)
This reverts commit 6dc2c783b1.
2023-11-28 10:16:02 +09:00
Anthony Potdevin
eb918756cf
Update opt-add-thunderhub.yml (#849)
* Update opt-add-thunderhub.yml

* Update version number in other files

---------

Co-authored-by: Dennis Reimann <mail@dennisreimann.de>
2023-11-25 09:00:58 +01:00
Nicolas Dorier
9308ca46a5
Update docker version during btcpay-update (#847) (#848)
* Update docker version during btcpay-update (#847)

* Bump NBX
2023-11-23 00:18:40 +09:00
nicolas.dorier
9b468dd133
Revert "Update docker version during btcpay-update (#847)"
This reverts commit 9f865a5240.
2023-11-22 12:50:59 +09:00
nicolas.dorier
33cb3de205
Revert "bump nbx"
This reverts commit d1556ed2f5.
2023-11-22 12:49:13 +09:00
nicolas.dorier
d1556ed2f5
bump nbx 2023-11-22 12:48:02 +09:00
Nicolas Dorier
9f865a5240
Update docker version during btcpay-update (#847) 2023-11-22 12:46:45 +09:00
nicolas.dorier
f2a1dc57d7
Add BTCPAY_LIGHTNING_HOST (Fix #845) 2023-11-21 11:09:37 +09:00
rockstardev
21b68be6b0
Bumping LND to 0.17.2-beta (#846) 2023-11-20 22:02:35 +01:00
rockstardev
4d3ba10516 Bumping LND to 0.17.1-beta 2023-11-20 07:26:39 -08:00
Andrew Camilleri
cd16b249d2
Update opt-add-nostr-relay.yml 2023-11-14 08:56:40 +01:00
nicolas.dorier
d42292a46d
bump postgres 2023-11-14 16:29:40 +09:00
nicolas.dorier
7a7da002c6
Bump nbx 2023-11-09 21:34:42 +09:00
Honza Pobořil
a53860c959
Move Traefik labels to services files (#731)
* Upgraded Traefik to 2.5.

* Added paths routes for some services.

* Removed not needed files copying.

* Updated README.

* Added new config.

* Fixed services paths.

* Fixed btctransmuter rule.

* Changed log level.

* Upgraded Traefik.

* Changed true values to strings to improve compatibility.

* Removed services configs from traefik.yml.

---------

Co-authored-by: Andrew Camilleri <kukks@btcpayserver.org>
2023-10-31 15:57:45 +01:00
nicolas.dorier
b2d8161e48
Bump RTL 2023-10-24 22:40:16 +09:00
nicolas.dorier
bd8001dbdb
bump btcpay 2023-10-18 20:08:41 +09:00
Seth For Privacy
354b8e6d81 Bump Monero to v0.18.3.1 2023-10-12 14:20:58 +02:00
Andrew Camilleri
2138b82c8f
Update monero.yml 2023-10-10 15:22:52 +02:00
nicolas.dorier
d3f3a4e6ed
bump 2023-10-08 12:49:01 +09:00
nicolas.dorier
8fc5e63f5f
Bump btcpay 2023-09-27 17:34:09 +09:00
nicolas.dorier
b6a457777a
bump lightning rest 2023-09-27 17:05:31 +09:00
d11n
bb9e077478 Upgrade LND to v0.16.4-beta-1
This update includes the watchtower RPC.
2023-09-23 08:38:55 -07:00
nicolas.dorier
52b8c8372a
bump btcpay 2023-09-22 23:46:40 +09:00
d11n
edc36109ca
Add info about opt-lnd-watchtower 2023-09-18 11:10:03 +02:00
d11n
9a46ddd0f2
Exclude SSH host keys from backup (#832)
Fixes #831.
2023-09-08 14:38:38 +02:00
Dennis Reimann
1d83d73685 LND: Add watchtower fragment
Adds optional support for running a [watchtower](https://github.com/lightningnetwork/lnd/blob/master/docs/watchtower.md#configuring-a-watchtower).
2023-09-07 05:32:58 -07:00
nicolas.dorier
74ec0cb466
bump btcpay 2023-09-02 23:25:59 +09:00
Dimi8146
f8949bb7ee
Update load-utxo-set.sh (#829)
adding extension to exec call
2023-09-02 06:31:02 +02:00
Andrew Camilleri
ebe005ae41
Update opt-add-nostr-relay.yml 2023-08-28 14:10:37 +02:00
nicolas.dorier
e06b6704ee
bump 2023-08-26 21:15:13 +09:00
nicolas.dorier
7c22e4312a
Revert "Revert "bump clightning""
This reverts commit 39c803e91f.
2023-08-25 17:50:19 +09:00
nicolas.dorier
39c803e91f
Revert "bump clightning"
This reverts commit ad63bc6e2d.
2023-08-25 13:23:44 +09:00
nicolas.dorier
ad63bc6e2d
bump clightning 2023-08-25 13:19:03 +09:00
nicolas.dorier
b1f304bd81
bump nbx 2023-08-23 15:35:08 +09:00
Anthony Potdevin
81d7390a7d
Update opt-add-thunderhub.yml (#825)
* Update opt-add-thunderhub.yml

* Update version

---------

Co-authored-by: Dennis Reimann <mail@dennisreimann.de>
2023-08-20 20:05:28 +02:00
Andrew Camilleri
954aa8d663
Update opt-add-cloudflared.yml 2023-08-18 14:10:13 +02:00
Andrew Camilleri
c4d62d6d74
Update btcpayserver.yml 2023-08-11 19:55:13 +02:00
Markus Petzsch
23813c1596
update pihole to 2023.05.2 (#823) 2023-08-08 22:37:48 +02:00
ndeet
4da0691fab
Rename c-lightning to CLN. (#821) 2023-08-01 17:21:33 +03:00
Andrew Camilleri
19a4d077d6
Update btcpayserver.yml 2023-07-29 10:04:59 +02:00
Pavlenex
3472aa3a3b
Merge pull request #819 from btcpayserver/Kukks-patch-3
Update btcpayserver.yml
2023-07-27 18:01:51 +02:00
Andrew Camilleri
c58fbdff15
Update btcpayserver.yml 2023-07-27 15:21:55 +02:00
rockstardev
0e04f101ae Bumping LND to 0.16.4-beta 2023-07-09 09:06:47 -05:00
Andrew Camilleri
891960997b
Update monero.yml 2023-07-03 10:59:36 +02:00
nicolas.dorier
6dc2c783b1
Allow CORS for LND REST API 2023-06-30 15:05:54 +09:00
rockstardev
5fecdd6570
Bumping LND to 0.16.3-beta (#807) 2023-06-30 09:11:43 +09:00
jahway603
5d1a55b3b1
Update README.md to include upgrade instructions (#811)
Update README.md to include upgrade instructions
2023-06-29 09:43:59 +09:00
Kukks
a5ee4d9460
Revert "Update monero.yml"
This reverts commit a06b72c469.
2023-06-28 10:38:17 +02:00
Andrew Camilleri
a06b72c469
Update monero.yml 2023-06-28 10:06:53 +02:00
Anthony Potdevin
284ddef293
Update opt-add-thunderhub.yml (#793) 2023-06-28 16:00:04 +09:00
nicolas.dorier
ccbcef3112
bump btcpay 2023-06-27 22:24:46 +09:00
Andrew Camilleri
0dae254dd4
remove spark and charge (#808) 2023-06-27 22:22:15 +09:00
rockstardev
51aa8443a2 Providing fragment to turn on LND database autocompacting 2023-06-27 13:07:37 +02:00
nicolas.dorier
20364b34a9
bump RTL for eclair and LND 2023-06-27 09:05:13 +09:00
nicolas.dorier
5a1b11f594
bump lightning rest api 2023-06-27 09:02:35 +09:00
nicolas.dorier
c20d6972e6
bump lightning rest api 2023-06-27 09:02:20 +09:00
Seth For Privacy
33dcc077ff
Bump Monero to v0.18.2.2 (#798) 2023-06-26 16:37:07 +09:00
gruve-p
03cb105f45
Bump GRS core and lightning (#797) 2023-06-26 16:33:56 +09:00
nicolas.dorier
01e0643dd2
bump cln 2023-06-26 14:42:32 +09:00
strophy
cd0a73435c
chore: update to dash 19.2.0 (#800) 2023-06-22 16:10:28 +09:00
d11n
cbbb94e7b0
Use path consistently in examples (#799)
* Use path consistently in examples

Closes btcpayserver/btcpayserver-doc#1292.

* Add note

* Make it more concise
2023-06-14 10:24:39 +02:00
Andrew Camilleri
b7b1fe1b83
Update btcpayserver.yml 2023-06-07 18:20:10 +02:00
Andrew Camilleri
fc379bcb87
Update opt-add-nostr-relay.yml 2023-06-06 17:53:08 +02:00
nicolas.dorier
bb5636ca1a
bump bitcoin and btcpay 2023-06-02 18:26:30 +09:00
nicolas.dorier
3c83736e0e
bump btcpay 2023-06-01 21:25:52 +09:00
nicolas.dorier
9565e833cb
bump nbx 2023-05-30 10:53:43 +09:00
Kukks
0571ca0c40
try remove whitespace 2023-05-25 13:56:58 +02:00
Andrew Camilleri
1f38a87fcf
Update liquid.yml 2023-05-25 12:47:32 +02:00
Markus Petzsch
b3ece8c4cc
bump mempool to v2.5.0 (#775)
* bump mempool to v2.5.0

* bump mempool to v2.5.0

* add mempool Lightning Explorer Support

just for local testing so far. Hopefully thats how it can be done.

* bump mariadb to 10.11

as there is no Dockerfile folder for just 10.

* fix strange docker-compose boolean problem

* rpc-file-mode=0666 for c-lightning socket

beware that this change is a risk when run outside a container.

* hopefully fix writable cache dir error

* remove mempool_api_datadir cache folder

* enable lightning for gui of mempool

* fix typo

* try readonly.macraoon instead of admin

* correct REST API URL and port

* fixed LND_REST Proto to http; increased LND_TIMEOUT because of errors on RPI
2023-05-23 14:46:00 +09:00
Markus Petzsch
bf22e49f18
exclude blocks and chainstate from doge backup (#792) 2023-05-22 06:16:45 +02:00
nicolas.dorier
fde700b1ae
bump bitcoin core 2023-05-20 21:43:53 +09:00
d11n
7501bc2a4f Fix typo in btcpay-admin.sh
Fixes #788.
2023-05-16 17:49:40 +02:00
Andrew Camilleri
3fd96b170f
Update opt-add-nostr-relay.yml 2023-05-15 15:36:11 +02:00
Andrew Camilleri
6560a108f1
Update opt-add-nostr-relay.yml 2023-05-15 11:46:38 +02:00
Andrew Camilleri
fad08a54af
Update opt-add-nostr-relay.yml 2023-05-11 13:06:45 +02:00
d11n
cc658a9a9e
Upgrade Lightning Terminal to v0.9.2 (#781)
* Upgrade Lightning Terminal to v0.9.2

* Fix LiT datadir

Closes #787.

* nginx: Fix LiT location
2023-05-11 09:31:56 +02:00
Andrew Camilleri
f0e0b2cf11
Update opt-add-nostr-relay.yml 2023-05-10 16:12:39 +02:00
Andrew Camilleri
283a1ad899
Update opt-add-nostr-relay.yml 2023-05-10 12:08:46 +02:00
strophy
e2075eeea6
chore: update to dash 19.0.0 (#776) 2023-05-10 17:53:02 +09:00
Jacob Burrell
f502b9f1bb
Update lightning-terminal.md (#786) 2023-05-09 22:23:16 +02:00
nicolas.dorier
cec19acb95
bump nbx 2023-05-09 22:11:12 +09:00
nicolas.dorier
2d1f4047a5
bump btcpay 2023-05-09 08:51:57 +09:00
rockstardev
d0ed0686e1 Bumping LND to 0.16.2-beta 2023-04-29 11:36:17 -05:00
nicolas.dorier
99ca971a2b
bump btcpay 2023-04-27 14:36:50 +09:00
rockstardev
825cdbe8c6
Bumping LND to 0.16.1-beta (#778) 2023-04-27 14:31:46 +09:00
nicolas.dorier
6906424e01
Fix RTL setups 2023-04-18 11:47:11 +09:00
nicolas.dorier
f0577479f2
bump btcpay 2023-04-17 11:14:28 +09:00
Kukks
1caddfe78c
Revert "Update RTL and cln rest"
This reverts commit 260dc480f1.

# Conflicts:
#	README.md
2023-04-16 13:46:28 +02:00
Kukks
44acbcc269
Revert "bump RTL to 0.13.6"
This reverts commit 67825b0740.

# Conflicts:
#	README.md
2023-04-16 13:42:56 +02:00
Max Edwards
182b8e91b8 bump torq to v0.20.3 2023-04-14 12:09:47 +02:00
d11n
ff95b6301d
Thunderhub: Do not pin the hash (#772) 2023-04-14 08:47:29 +02:00
Henrique Albuquerque
c3238f3b3f
Fix typo (#771) 2023-04-14 06:48:44 +02:00
nicolas.dorier
5fef63b6b0
Update README 2023-04-14 09:45:53 +09:00
nicolas.dorier
6c5769a32d
bump btcpay 2023-04-13 21:09:43 +09:00
CoinForensics
b2200966c3
enable rpcmiddleware in LND (#766) 2023-04-11 17:34:07 +02:00
d11n
9c1d4a5bbf
Backup docs: Fix directory 2023-04-03 09:58:27 +02:00
Markus Petzsch
6e9b85a9c8
bump thunderhub to 0.13.18 (#764) 2023-03-31 10:27:34 +02:00
Kukks
260dc480f1 Update RTL and cln rest 2023-03-29 10:54:21 +02:00
Markus Petzsch
67825b0740 bump RTL to 0.13.6
closes #761
2023-03-29 10:50:30 +02:00
maxwedwards
ea76fd8a63
Updated Torq to v0.19.1 (#760) 2023-03-21 20:03:03 +01:00
nicolas.dorier
8d55c3f0ba
bump btcpay 2023-03-15 10:47:09 +09:00
Andrew Camilleri
4c06c65774
nginx: no trailing slash for nostr relay 2023-03-14 14:31:45 +01:00
Andrew Camilleri
06e7aebe43
bump relay 2023-03-14 14:27:33 +01:00
Andrew Camilleri
c5c14af07b
add volume 2023-03-14 13:53:02 +01:00
Andrew Camilleri
53138dae86
update nostr relay 2023-03-14 11:49:39 +01:00
nicolas.dorier
b98bcfb307
Change URL of fastsync images 2023-03-13 19:07:11 +09:00
nicolas.dorier
68984cba53
bump postgres 2023-03-10 09:21:59 +09:00
nicolas.dorier
6d38d64328
bump btcpay 2023-03-08 22:05:22 +09:00
nicolas.dorier
25e8c3df02
bump 1.8.2 2023-03-08 09:00:22 +09:00
nicolas.dorier
b3acf37d99
update cln 2023-03-06 15:10:59 +09:00
nicolas.dorier
2d3128505d
bump btcpay 2023-03-03 21:32:46 +09:00
nicolas.dorier
0aae273855
bump btcpay 2023-03-01 23:58:46 +09:00
d11n
5169ae8f75
Upgrade Lightning Terminal to v0.8.6 (#756) 2023-02-25 10:48:17 +01:00
nicolas.dorier
478fb9e00b
bump nginx 2023-02-17 11:00:13 +09:00
nicolas.dorier
2c7887b39e
bump btcpay 2023-02-16 17:51:29 +09:00
nicolas.dorier
2f4b25b31e
bump btcpay 2023-02-13 23:55:11 +09:00
nicolas.dorier
688ed586b4
bump nbx 2023-02-13 21:35:41 +09:00
nicolas.dorier
876ec137f9
Bump btcpay 2023-02-11 21:05:59 +09:00
nicolas.dorier
82bfb21c24
bump nbx 2023-02-11 19:47:49 +09:00
d11n
50ba88162a
Upgrade Tallycoin Connect to v1.8.0 (#752) 2023-02-10 16:28:15 +01:00
Andrew Camilleri
7222649ccf
bump btcpay 2023-02-10 09:56:32 +01:00
nicolas.dorier
e0b7c58ea1
bump btcpay 2023-02-10 16:14:14 +09:00
nicolas.dorier
f9f23180e8
bump btcpay 2023-02-09 09:51:20 +09:00
nicolas.dorier
00e9a994bf
bump btcpay 2023-02-08 22:12:44 +09:00
nicolas.dorier
5369a4d5ac
bump nbx 2023-02-07 15:21:16 +09:00
nicolas.dorier
10be1beaec
bump nbx 2023-02-02 14:21:43 +09:00
nicolas.dorier
42beb4278e
bump btcpay 2023-01-25 12:46:55 +09:00
maxwedwards
da12521b3f
Bumped Torq to v0.17.3 (#751) 2023-01-24 06:32:07 +01:00
nicolas.dorier
e5143b81fb
bump NBX 2023-01-20 10:44:28 +09:00
nicolas.dorier
3b2245a702
bump btcpay 2023-01-20 10:43:32 +09:00
nicolas.dorier
9b75c020f3
Bump nbx 2023-01-16 10:15:10 +09:00
maxwedwards
7147ea6613
Bumped Torq to v0.16.3 (#750) 2023-01-11 22:54:29 +01:00
nicolas.dorier
31c4fb7fbb
Fix auto corrupted peers.dat 2023-01-06 12:57:28 +09:00
Markus Petzsch
7a0b2d3a25
Update petzsch-utxo-sets.asc (#746)
verified and signed
2023-01-05 17:02:35 +01:00
Nicolas Dorier
56eb724094
Activate mempoolfullrbf on BTCPay deployments (#736) 2023-01-05 20:39:21 +09:00
maxwedwards
c5fc2fc5ca
Bumped Torq to v0.15.4 (#740) 2023-01-05 18:37:21 +09:00
B
109e3fbb87
Update baspeters.utxo-sets (#745)
Yo yo

verified and signed ;
2023-01-05 18:36:51 +09:00
Bitkarrot
c8accdb915
add bitkarrot utxo-set signature (#689) 2023-01-05 10:21:08 +09:00
nicolas.dorier
7f276daa58
Bump utxo snapshot 2023-01-04 12:14:01 +09:00
Markus Petzsch
9bc5766904
Bump RTL 0.13.3 (#742)
* bump RTL to 0.13.3

closes #741

* Update README.md - bump RTL

closes #741

* Update build-all-images script

Co-authored-by: Dennis Reimann <mail@dennisreimann.de>
2023-01-02 12:06:54 +01:00
nicolas.dorier
02cc2b11db
bump btcpay 2022-12-23 18:09:53 +09:00
nicolas.dorier
8baf963f19
bump btcpay 2022-12-16 17:47:24 +09:00
Max Edwards
15f75362ee bumped Torq to v0.15.2 2022-12-15 06:56:16 +01:00
d11n
810e4c8290
Add uninstall script (#734) 2022-12-14 15:43:04 +09:00
nicolas.dorier
92cee83794
Bump clightning 2022-12-14 11:52:50 +09:00
gruve-p
a6de926c89
Bump GRS core and lightning (#737) 2022-12-13 16:06:06 +09:00
nicolas.dorier
2b0aca3168
bump bitcoin core 2022-12-12 23:29:37 +09:00
nicolas.dorier
bbe148f026
bump nbx 2022-12-12 20:59:49 +09:00
nicolas.dorier
96875d0205
update doc 2022-12-12 16:27:17 +09:00
nicolas.dorier
9cd1e49321
bump nbx 2022-12-12 16:27:00 +09:00
nicolas.dorier
684711c794
bump NBXplorer 2022-12-09 12:50:48 +09:00
nicolas.dorier
29f3b65fb4
bump clightning 2022-12-08 13:44:35 +09:00
nicolas.dorier
0a73105640
bump nbx 2022-12-08 10:43:37 +09:00
nicolas.dorier
0dc6e2ef95
bump spark 2022-12-06 22:17:37 +09:00
Nicolas Dorier
6107d8b123
Bump clightning (#735) 2022-12-06 22:13:25 +09:00
nicolas.dorier
f7da465d6f
bump liquid 2022-11-30 21:31:55 +09:00
nicolas.dorier
3c5a83115d
bump btcpay 2022-11-29 15:11:53 +09:00
nicolas.dorier
031489d66a
bump bitcoin core 2022-11-28 22:29:55 +09:00
maxwedwards
7391d15601
Add opt-add-torq (#725) 2022-11-28 13:19:28 +01:00
Andrew Camilleri
0dd7cfb7fe
Merge pull request #730 from dennisreimann/dbcommands
Add info about plugin db schemas
2022-11-27 17:21:09 +01:00
Dennis Reimann
34246d8d25
Add info about plugin db schemas 2022-11-27 16:05:21 +01:00
Pavlenex
7591c3cb8b
Merge pull request #729 from ShrootBuck/patch-1
Formatting typo
2022-11-27 13:15:45 +01:00
ShrootBuck
be0c18c5e2
Update README.md 2022-11-26 15:09:17 -07:00
nicolas.dorier
6caa1b9460
bump btcpay 2022-11-25 23:08:46 +09:00
Andrew Camilleri
f65dfd31f7
Merge pull request #728 from ShahanaFarooqui/rtl-update 2022-11-24 07:04:53 +01:00
ShahanaFarooqui
07e43b4cf9 Update RTL v0.13.2
Update RTL v0.13.2
2022-11-23 17:26:09 -08:00
nicolas.dorier
b5410f7130
bump elements 2022-11-23 22:24:47 +09:00
nicolas.dorier
8d76d27ee2
bump liquid (Fix https://github.com/btcpayserver/btcpayserver/issues/4332) 2022-11-23 19:43:25 +09:00
nicolas.dorier
ff088f61b2
Remove mention of eth in crypto-definitions 2022-11-19 19:31:35 +09:00
Markus Petzsch
23895ff91e Enable resume of partially downloaded utxo-sets
closes #718
2022-11-18 16:46:58 +01:00
Gregor Pogačnik
882b50e266
LND's verrpc should also be exposed via nginx (#720)
* LND's verrpc should also be exposed via nginx

* add walletrpc too
2022-11-16 18:50:06 +09:00
nicolas.dorier
0462a375a5
bump NBX 2022-11-16 08:23:04 +09:00
nicolas.dorier
d766b25bc1
bump NBX 2022-11-15 23:49:51 +09:00
nicolas.dorier
b61c66cdf3
bump nbx 2022-11-15 23:08:29 +09:00
nicolas.dorier
e50ed907c9
bump nbx 2022-11-14 21:08:11 +09:00
d11n
d60236b2a9
Upgrade LND to include Loop upgrade (#717)
See [details](https://github.com/btcpayserver/lnd/releases/tag/basedon-v0.15.4-beta-1)
2022-11-04 22:50:53 +09:00
nicolas.dorier
97ebeec06a
bump nbx 2022-11-02 13:30:21 +09:00
nicolas.dorier
110b162acc
bump tor 2022-11-02 11:40:12 +09:00
nicolas.dorier
20f3c1e291
Fix Readme generator 2022-11-01 22:22:23 +09:00
nicolas.dorier
4d968e3ba3
Bump lnd 2022-11-01 22:02:09 +09:00
Andrew Camilleri
7e2c60be07
Update dash.yml 2022-10-30 10:44:53 +01:00
Andrew Camilleri
9911fa999e
Merge pull request #710 from RiccardoMasutti/patch-3 2022-10-30 09:37:25 +01:00
Andrew Camilleri
8cad0c32b3
Merge branch 'master' into patch-3 2022-10-30 09:37:01 +01:00
Andrew Camilleri
f5faa0d0ca
Merge pull request #714 from dennisreimann/tallycoin-connect-v1.7.5 2022-10-30 09:29:43 +01:00
Andrew Camilleri
d2e81724ba
Merge pull request #516 from btcpayserver/mempool 2022-10-30 09:28:59 +01:00
nicolas.dorier
e265d0d182
Add missing ltc in crypto definition 2022-10-28 08:49:13 +09:00
nicolas.dorier
b595fe3216
Update CI 2022-10-28 00:38:01 +09:00
nicolas.dorier
867f34ac3c
Remove lnd and clightning from LND 2022-10-28 00:31:17 +09:00
Andreas Tasch
9e1f8c2d9d
Exclude _data of coins; adding Liquid, Dash, Monero. (#712)
* Exclude _data of coins; adding Liquid, Dash, Monero.

* Make sure Dash wallet and other stuff gets backuped too.
2022-10-27 21:23:58 +09:00
nicolas.dorier
dd3cc12aad
bump nbx 2022-10-24 23:51:11 +09:00
nicolas.dorier
e687dd162e
bump litecoin 2022-10-20 22:54:27 +09:00
Dennis Reimann
22a635a7f3
Upgrade Tallycoin Connect
Also switches to the official image. @djbooth007 is now the source for the Docker images, which up to now I maintained for my fork.
2022-10-20 13:28:50 +02:00
nicolas.dorier
b2b2ced877
bump nbx 2022-10-20 18:25:57 +09:00
nicolas.dorier
8d80b2eb63
bump lnd 2022-10-19 22:10:55 +09:00
d11n
592210e941
Backup: Add optional MariaDB (#706) 2022-10-18 20:33:15 +02:00
nicolas.dorier
b944945fb2
bump nbx 2022-10-18 22:26:25 +09:00
nicolas.dorier
ab402fa51e
bump bitcoin core 2022-10-18 22:21:03 +09:00
nicolas.dorier
b85041e25e
bump woocommerce 2022-10-13 09:56:53 +09:00
d11n
f8eae35674
Update Production/nginx.tmpl 2022-10-12 12:55:52 +02:00
d11n
c0a5e89091
Update Production/nginx.tmpl 2022-10-12 12:55:52 +02:00
d11n
4bedfc3439
Update Production/nginx.tmpl
Co-authored-by: Markus Petzsch <markus@petzsch.eu>
2022-10-12 12:55:52 +02:00
Dennis Reimann
831d7a561b
Final updates 2022-10-12 12:55:52 +02:00
Dennis Reimann
b3701ebad3
Update mempool fragment 2022-10-12 12:55:52 +02:00
Kukks
110c1caa01
Add Mempool Explorer 2022-10-12 12:55:52 +02:00
nicolas.dorier
58ab26b58b
bump nbx 2022-10-11 23:32:08 +09:00
Riccardo Masutti
4b90268ce3
Remove port 9030 2022-10-10 13:08:51 +02:00
Riccardo Masutti
bb3fb86964
Remove Tor Relay 9030 port (deprecated) 2022-10-10 13:07:29 +02:00
nicolas.dorier
b0e8eb43ba
bump lnd 2022-10-10 16:43:46 +09:00
nicolas.dorier
1c9134194f
bump btcpay 2022-10-08 19:43:50 +09:00
nicolas.dorier
6c5ce5ab4a
Make sshd config change handle tab as well 2022-10-06 10:46:07 +09:00
nicolas.dorier
b00c0a9800
Make sure PermitRootLogin is not set to 'no' during btcpay-update 2022-10-05 13:56:41 +09:00
nicolas.dorier
529aa0d62c
bump nbx 2022-09-27 21:57:20 +09:00
d11n
c733e49ded
Backup: Exclude blockchain indexes
They grow very large and can be replicated in case of restore.
2022-09-27 12:41:38 +02:00
nicolas.dorier
f3242d0035
fix small litecoin corruption in some cases 2022-09-26 23:50:05 +09:00
nicolas.dorier
29e4963d18
bump btcpay 2022-09-26 23:22:45 +09:00
Andrew Camilleri
10e3e343df
Merge pull request #705 from btcpayserver/backup-exlude-datadirs
Backup: Exclude ElectrumX datadir and LND graph
2022-09-24 16:10:52 +02:00
d11n
7d4f4cea6b
Backup: Exclude ElectrumX datadir and LND graph
Both tend to grow very large and can be replicated in case of restore.
2022-09-24 13:04:24 +02:00
Andrew Camilleri
8783ba8cf1
Merge pull request #704 from sethforprivacy/master 2022-09-23 16:43:03 +02:00
d11n
18748e6dd6
Fix anonymous datadirs (#691)
* Update LiT datadir

Uses the same folder as [in the LiT Dockerfile](https://github.com/lightninglabs/lightning-terminal/blob/master/Dockerfile#L62) to prevent the creation of anonymous volumes as [described here](https://stackoverflow.com/a/62654594/183537).

* Update Monero datadirs

Uses the same folder as [in the Monero Dockerfile](https://github.com/btcpayserver/dockerfile-deps/blob/master/Monero/0.18.0.0/linuxarm64v8.Dockerfile#L41) to prevent the creation of anonymous volumes as [described here](https://stackoverflow.com/a/62654594/183537).
2022-09-23 16:33:33 +02:00
nicolas.dorier
4caa52c502
bump nbx 2022-09-22 15:24:44 +09:00
nicolas.dorier
23fb1bd26e
bump NBX 2022-09-22 13:20:00 +09:00
nicolas.dorier
95917972ae
Revert "Bump Monero to v0.18.1.1 (#703)"
This reverts commit 2bee91b6cc.
2022-09-21 21:24:42 +09:00
nicolas.dorier
ef72d5a246
Update doc 2022-09-21 21:23:40 +09:00
Seth For Privacy
2bee91b6cc
Bump Monero to v0.18.1.1 (#703) 2022-09-21 21:22:19 +09:00
sethforprivacy
8a88f829c5
Bump Monero to v0.18.1.1 2022-09-20 15:39:27 -04:00
nicolas.dorier
70622e6a21
Update doc and monero 2022-09-20 10:39:19 +09:00
d11n
a387f05c42
Upgrade Bitcoin Core to v23.0 (#695)
Co-authored-by: Nicolas Dorier <nicolas.dorier@gmail.com>
2022-09-20 10:25:07 +09:00
Dennis Reimann
bf791e8d11
Remove broken link 2022-09-16 10:58:43 +02:00
Andrew Camilleri
6f78a5fc06
Merge pull request #697 from sethforprivacy/master 2022-09-16 10:58:02 +02:00
Andrew Camilleri
0f62469b99
Merge pull request #687 from btcpayserver/Kukks-patch-2 2022-09-15 08:30:06 +02:00
Andrew Camilleri
9f96a7b74e
Merge pull request #700 from strophy/update-dash-18.0.1 2022-09-15 08:29:44 +02:00
nicolas.dorier
88dced5b34
bump nbx 2022-09-12 16:33:27 +09:00
Andrew Camilleri
5a7ec36d7c
Merge pull request #702 from dennisreimann/lndhub-fix-701 2022-08-29 15:50:06 +02:00
Dennis Reimann
dfce1f56e2
LNDhub: Overrides for entrypoint and command to fix file permissions
The copied cert and macaroon belong to the root user and the LNDhub app is run as user lndhub. We need to override the entrypoint and command to change the ownership of those files and then start the app.

Fixes #701.
2022-08-29 15:35:16 +02:00
Kukks
905259b822
bump btcpay 2022-08-26 10:26:31 +02:00
strophy
358750769d
chore: mark arm32v7 unsupported
Co-authored-by: thephez <thephez@users.noreply.github.com>
2022-08-23 13:20:13 +10:00
Andrew Camilleri
8e464848e4
Merge pull request #694 from dennisreimann/cleanups 2022-08-21 07:16:09 +02:00
strophy
90ab0df17c chore: update to dash 18.0.1 2022-08-19 14:20:20 +10:00
Andrew Camilleri
82a2b8f219
bump btcpay 2022-08-18 13:16:26 +02:00
Kukks
8ed79b20ad
bump btcpay 2022-08-18 08:26:17 +02:00
Andrew Camilleri
6941e7ce0b
Merge pull request #699 from dennisreimann/patch-1
Apply client_max_body_size to all server settings
2022-08-17 19:48:16 +02:00
d11n
1c26632a39
Apply client_max_body_size to all server settings
Fixes btcpayserver/btcpayserver#4018. Previously, the setting was only part of the `is_https` branch.
2022-08-17 12:31:19 +02:00
sethforprivacy
a8488307a1
Update Monero image tag for multi-arch builds 2022-08-12 09:44:28 -04:00
Andrew Camilleri
0499d39aa4
Merge pull request #696 from sethforprivacy/master
Bump Monero to v0.18.1.0
2022-08-12 06:45:28 +02:00
sethforprivacy
49bf819211
Bump Monero to v0.18.1.0 2022-08-11 07:35:06 -04:00
Kukks
35be274b44
bump btcpay 2022-08-10 10:21:40 +02:00
Kukks
f4d44ed6e9
fix build script 2022-08-10 10:20:57 +02:00
Dennis Reimann
4d2d811a9c
Use current Tor fragment version in Tor Relay 2022-08-09 13:53:06 +02:00
Dennis Reimann
f8d71a0bd0
Remove duplicate builds 2022-08-09 13:52:39 +02:00
Andrew Camilleri
18f5e6e029
Merge pull request #693 from dennisreimann/updates 2022-08-09 11:30:36 +02:00
Dennis Reimann
bb5e60e5c0
Update Sphinx Relay to v2.2.9 2022-08-09 11:25:07 +02:00
Dennis Reimann
5332d6f510
Update Lightning Terminal to v0.6.7 2022-08-09 11:24:38 +02:00
Dennis Reimann
d6b19373c5
Update LNDhub to v1.4.1 2022-08-09 11:23:46 +02:00
Andrew Camilleri
f147c5a0ae
Merge pull request #692 from dennisreimann/monero 2022-08-09 10:25:49 +02:00
Dennis Reimann
49193cbc29
Update Monero repo 2022-08-09 10:23:55 +02:00
Andrew Camilleri
6eed520521
Merge pull request #690 from dennisreimann/backup 2022-08-09 07:53:59 +02:00
Dennis Reimann
542c43a3a6
Init backup with bash profile script
Makes it work with cronjob
2022-08-08 21:14:34 +02:00
Dennis Reimann
b99667390c
Backup should not include blockchain data
Fixes #688.
2022-08-08 18:36:59 +02:00
Kukks
7fd3549b4b
bump btcpay 2022-08-06 17:16:03 +02:00
Andrew Camilleri
f997d847c3
Update opt-txindex.yml 2022-08-04 15:13:38 +02:00
nicolas.dorier
3a05cf3a61
bump btcpay 2022-08-04 13:50:55 +09:00
nicolas.dorier
4ad0ae18c7
Bump btcpay 2022-08-03 22:18:10 +09:00
nicolas.dorier
12b6758b51
bump nbx 2022-07-29 14:53:22 +09:00
nicolas.dorier
ecf09d75cd
Update NBX 2022-07-28 17:42:53 +09:00
nicolas.dorier
1b44a9b704
Update NBX 2022-07-28 17:35:25 +09:00
rockstardev
9077cbfae8
Bump LND to v0.15.0-beta (#686) 2022-07-28 09:07:18 +09:00
nicolas.dorier
846a052efb
bump doge 2022-07-25 22:16:47 +09:00
kiwi_
d5c765e7cc
FastSync Sign newzealandhodl (#681)
FastSync Sign
2022-07-25 09:54:49 +09:00
nicolas.dorier
afa60a8891
bump btcpay 2022-07-23 20:59:34 +09:00
Pavlenex
3c4f44ed5a
Merge pull request #685 from Bangalisch/FastSyncDocs
Fast sync docs
2022-07-22 17:07:21 +02:00
Bangalisch
212828944a Extra img. 2022-07-22 01:19:26 +02:00
Bangalisch
1980e4bc0c FastSync Updates to docs.
FastSync Updates to docs.
2022-07-22 01:17:41 +02:00
Seth For Privacy
2c7a0c7f22
Bump Monero to v0.18.0.0 (#683) 2022-07-21 08:34:28 +02:00
nicolas.dorier
14cdf434a7
bump woocommerce 2022-07-20 23:09:46 +09:00
nicolas.dorier
a86e25254f
Bump NBX 2022-07-20 23:05:02 +09:00
nicolas.dorier
e06898a433
Bump litecoin 2022-07-20 10:44:20 +09:00
Markus Petzsch
e25e8fde0d
FastSync sign: petzsch (#682) 2022-07-20 10:26:21 +09:00
B
e5c80f2ba3
Fast sync sign Bas_02 (#673)
* Fast sync sign

* del copy change

* i think its good now.

Changed the tars checked before signing :)
2022-07-15 13:10:41 +09:00
RexHolliday
ab0f31ee0e
Fast sync sign stackinsatz (#679)
* Fast sync sign

* update fast sync

Co-authored-by: meerkat <meerkat@pop-os.localdomain>
2022-07-15 13:09:57 +09:00
britttttk
a52add49ae
Add brittkelly utxo-set signature (#680) 2022-07-15 13:09:10 +09:00
nicolas.dorier
4cea7deda6
Bump BTCPay 2022-07-15 12:52:05 +09:00
Steve
a1a5e8f180
Fastsync (#678)
* Add sbrooks24 utxo-set signature

* Update sbrooks24.utxo-sets

* adding utxo-sets for checking

* updating utxo-sets

* updating sigs/sbrooks24.utxo-sets.asc

* removing utxo-sets

Co-authored-by: Stephen Brooks <stephenbrooks@Stephens-MacBook-Pro.local>
2022-07-15 09:46:34 +09:00
Nicolas Dorier
73505ab4fd
Revert "Fast sync sign (#675)" (#677)
This reverts commit 5250e2c275.
2022-07-15 09:28:45 +09:00
Nicolas Dorier
7159d9577e
Revert "Fast sync sign hodloevsky (#674)" (#676)
This reverts commit 94df868a5d.
2022-07-15 09:27:20 +09:00
Steve
94df868a5d
Fast sync sign hodloevsky (#674)
* Add sbrooks24 utxo-set signature

* Update sbrooks24.utxo-sets

Co-authored-by: Stephen Brooks <stephenbrooks@Stephens-MacBook-Pro.local>
2022-07-15 09:26:28 +09:00
RexHolliday
5250e2c275
Fast sync sign (#675)
Co-authored-by: meerkat <meerkat@pop-os.localdomain>
2022-07-15 09:25:19 +09:00
Jonathan Underwood
26fc8ec24b
Add signature for FastSync JUnderwood (#672) 2022-07-13 16:04:51 +09:00
nicolas.dorier
5f670096c5
Update Fastsync snapshot 2022-07-12 21:54:35 +09:00
nicolas.dorier
89d2d2096b
bump BTCPay 2022-07-11 23:46:36 +09:00
nicolas.dorier
09b6dc6af3
bump nbx 2022-07-10 11:37:28 +09:00
nicolas.dorier
07519d810e
Bump BTCPay 2022-07-08 17:13:14 +09:00
nicolas.dorier
400bb3de2b
bump tor 2022-07-05 13:43:47 +09:00
d11n
a6e103c0eb
Fix cloudflared fragment link (#670) 2022-07-04 16:08:46 +09:00
nicolas.dorier
e1799f4176
Fix broken link 2022-07-03 22:11:15 +09:00
B
be65253bd7
Updates and grammarly on Cloudflare Tunnel (#669)
* Updates and grammarly on Cloudflare Tunnel

Yo yo

Saw the comments on my previous attemp on the docs directory. Here's portions of my screenshots + Grammarly check over the text :)

* Update docs/cloudflare-tunnel.md

Co-authored-by: Andrew Camilleri <evilkukka@gmail.com>

* typo fix

Co-authored-by: Andrew Camilleri <evilkukka@gmail.com>
2022-07-03 12:29:34 +09:00
Nicolas Dorier
f04530c032
Cloudflare-tunnel: Pass the original client's IP address to BTCPayServer (#668) 2022-07-01 22:08:07 +09:00
Nicolas Dorier
d8a9cb5b40
Update cloudflare-tunnel.md 2022-07-01 17:18:31 +09:00
Jin Eguchi
ece211cd8e
Fix CI error(stop docker.socket) (#666) 2022-07-01 16:08:29 +09:00
Daniel Pereyra Costas
a44871f1ae
Expose to clearnet using Cloudflare Argo Tunnel (#667)
* added env variable for Cloudflare tunnel and docker fragment

* Persist cloudfare tunnel token

* Use cross platform docker image

* Rename fragment

* Add docs

* Additional docs

* Update doc

* Update doc

* Update doc

Co-authored-by: nicolas.dorier <nicolas.dorier@gmail.com>
2022-07-01 10:03:06 +09:00
Md. Sumon Islam
a703e26324
Fix CentOS7 Compatibility (#492)
* Update btcpay-setup.sh

fixes: Installation error with docker in Centos 7

* better way to check git dir

* Update btcpay-setup.sh

* Update btcpay-setup.sh
2022-06-27 15:07:16 +09:00
maxwedwards
7e648d296d
updated nginx location for LND's GRPC API (#663)
Co-authored-by: Nicolas Dorier <nicolas.dorier@gmail.com>
2022-06-27 12:15:45 +09:00
maxwedwards
f8cb3b60c6
updated timeout on LND GRPC for long lived streams (#662) 2022-06-27 12:13:53 +09:00
gruve-p
4554f842fb
Add Groestlcoin Core 23.0 (#661) 2022-06-27 10:41:12 +09:00
nicolas.dorier
f4d7a12488
Attempt at fixing traeffik 2022-06-19 12:42:23 +09:00
nicolas.dorier
9d0edbfa12
Remove traefik label 2022-06-19 12:15:31 +09:00
nicolas.dorier
a073a5f7b3
bump postgres 2022-06-19 12:10:09 +09:00
Andrew Camilleri
08f7c0bb62
fix helipad nginx rules 2022-06-08 13:36:21 +02:00
Andrew Camilleri
7c0e92dabf
bump helipad 2022-06-08 13:34:40 +02:00
Pavlenex
514b6812c0
Merge pull request #658 from ndeet/patch-1
Fix more broken links of old BackupRestore location.
2022-06-07 23:20:25 +02:00
Andreas Tasch
c41a96a940
Fix more broken links of old BackupRestore location. 2022-06-07 13:53:11 +02:00
Pavlenex
7f1893db16
Merge pull request #657 from ndeet/patch-1
Fix broken local link that worked only in btcpayserver-doc repo.
2022-06-07 12:46:24 +02:00
Andreas Tasch
68e61ccf78
Fix broken local link that worked only in btcpayserver-doc repo. 2022-06-07 12:12:33 +02:00
d11n
384f4883b2
Backup script and docs finetuning (#655)
* Remove restore directory after restore

* Backup bitcoin folder, excluding blocks and chainstate

* Deprecate and warn about the old backup process

* Update log messages

* Add backup documentation
2022-06-06 15:11:09 +09:00
Honza Pobořil
c176745bc3
Upgraded and refactored Traefik (#585) 2022-06-02 16:35:42 +02:00
d11n
e87ef5d0b0
Backup and restore process (#641)
* Make db dump more modular

* Add basic backup and restore scripts

* Exit on error

* Exit with error code in case of missing file

* Determine volumes location programatically

A bit hacky, maybe there's a better way - open for suggestions!

* gzip database dump

* Restore database

* Fail on pipe errors

* Encrypt backup using gpg; improve log messages

* Ensure database container is up during dump and import

* Restore volumes
2022-06-02 16:43:05 +09:00
nicolas.dorier
f2a0f889f5
bump btcpay 2022-05-28 21:23:25 +09:00
Taylor Helsper
80f93152c7
Add ability to set port when using no proxy (#625) 2022-05-28 13:10:27 +02:00
d11n
92442b05ce
Backup script fixes (#634)
Previous version didn't include the postgresql.sql file, because of the exclude rule. Also, as the dump is now included, we exclude the contents of the postgres container.
2022-05-25 20:56:59 +09:00
nicolas.dorier
36d0108e06
bump nbx, btcpay 2022-05-25 19:37:55 +09:00
Andrew Camilleri
a0548fb688
Update bitcoin-clightning.yml 2022-05-12 13:38:16 +02:00
Andrew Camilleri
141aefb76d
Update bitcoin-clightning.yml (#649) 2022-05-12 13:35:40 +02:00
Andrew Camilleri
81e3ab7d0d
Update bitcoin-clightning.yml 2022-05-12 09:15:17 +02:00
nicolas.dorier
9e939eb68c
bump nbx 2022-05-12 12:30:06 +09:00
nicolas.dorier
fe08922f32
update doc 2022-05-11 23:22:23 +09:00
nicolas.dorier
cac2c625e8
bump nbx 2022-05-11 23:20:12 +09:00
Seth For Privacy
028ee4c6b1
Bump Monero to v0.17.3.2 (#636) 2022-05-10 08:18:48 +02:00
Anthony Potdevin
fc0e82ceb9
Update opt-add-thunderhub.yml (#645) 2022-05-10 08:18:27 +02:00
nicolas.dorier
30205e366a
bump btpcay 2022-05-09 21:06:01 +09:00
nicolas.dorier
c0951fdaea
bump nbx 2022-05-05 13:56:24 +09:00
d11n
cbed7ea0f1
RTL: Upgrade to v0.12.3 (#638)
This contains the cookie not being generated bugfix, see Ride-The-Lightning/RTL#994.

Fixes btcpayserver/btcpayserver#3700.
2022-05-04 10:20:38 +02:00
nicolas.dorier
ed82dbb2bb
bump nbx 2022-05-03 16:21:46 +09:00
nicolas.dorier
2366cd1dcb
Bump BTCPay 2022-04-30 13:09:10 +09:00
nicolas.dorier
da15954703
bump btcpay 2022-04-28 22:27:55 +09:00
nicolas.dorier
7753d35627
Revert "bump btcpay"
This reverts commit ef490b56fa.
2022-04-28 22:20:00 +09:00
nicolas.dorier
ef490b56fa
bump btcpay 2022-04-28 22:16:31 +09:00
Andrew Camilleri
80bbcd0707
Update bitcoin-clightning.yml (#631) 2022-04-28 13:42:43 +02:00
Andrew Camilleri
eb0108be40
tmp fix for monero 2022-04-27 10:58:41 +02:00
Seth For Privacy
c4f3e7bbee
Bump Monero to v0.17.3.0 (#627) 2022-04-26 15:22:45 +02:00
nicolas.dorier
bb86a31287
Bump NBX 2022-04-19 14:47:35 +09:00
nicolas.dorier
e0e6d638ee
Update NBX 2022-04-14 16:05:11 +09:00
nicolas.dorier
585b1bd28e
bump nbx 2022-04-12 13:44:56 +09:00
nicolas.dorier
fad2f5d6d7
bump NBX 2022-04-08 15:19:51 +09:00
nicolas.dorier
35d45701cf
bump nbx 2022-04-07 17:24:01 +09:00
nicolas.dorier
b98be1f820
bump nbx 2022-04-06 19:04:57 +09:00
nicolas.dorier
dfff0d855a
bump NBX
;
2022-04-06 16:37:37 +09:00
nicolas.dorier
58b8753660
Bump RTL 2022-04-06 12:46:08 +09:00
nicolas.dorier
75a58ca9e3
bump 2022-04-06 10:37:38 +09:00
nicolas.dorier
05c99c6c7d
Bump nbx 2022-04-05 23:40:38 +09:00
nicolas.dorier
980cab388a
bump 2022-04-05 22:28:19 +09:00
nicolas.dorier
6d5a0a042d
bump 2022-04-05 13:36:47 +09:00
nicolas.dorier
9e5e6c8fa1
bump nbx 2022-04-04 23:46:25 +09:00
Nicolas Dorier
d0543d6829
Update dogecoin.yml 2022-04-04 18:17:06 +09:00
Nicolas Dorier
575785abf1
Migrate NBX to postgres (#622)
* Migrate NBX to postgres

* bump

* bump

* Add applicatoin name to connectoin string

* Add link postgres

* Change Max Pool Size

* maxPool size
2022-04-04 15:50:02 +09:00
Andrew Camilleri
8f1f4c6089
Update liquid.yml 2022-04-04 05:14:30 +02:00
Kukks
4d547fdf4c
bump btcpay 2022-04-01 13:25:07 +02:00
Kukks
f00163b4a5
bump btcpay 2022-03-31 13:47:52 +02:00
nicolas.dorier
a65e7db685
Set random_page_cost=1.0 for postgres 2022-03-20 13:16:20 +09:00
d11n
213af0a631
Upgrade Tallycoin Connect to v1.7.3 (#611) 2022-03-09 12:40:50 +01:00
Kukks
207c38ceab Bump liquid 2022-03-08 08:31:35 +01:00
nicolas.dorier
bbe4c6c8f1
Bump postgres 2022-03-04 22:03:47 +09:00
nicolas.dorier
81f662382d
bump joinmarket 2022-03-04 21:45:45 +09:00
rockstardev
9694822def
Bump LND to v0.14.2-beta (#615) 2022-03-03 14:35:25 +09:00
Kukks
9dcfda6f66 bump btcpay 2022-03-02 12:09:20 +00:00
nicolas.dorier
b021fc2e1f
Bump btcpay 2022-02-21 17:25:44 +09:00
d11n
4493419211
Update Sphinx Relay to v2.2.5 (#604)
Co-authored-by: Andrew Camilleri <kukks@btcpayserver.org>
2022-02-18 10:22:15 +01:00
d11n
edc9b72101
Update Tallycoin Connect to v1.7.2 (#606) 2022-02-18 10:20:39 +01:00
d11n
3c29295678
Update Lightning Terminal to v0.6.3 (#605) 2022-02-18 10:20:26 +01:00
Andrew Camilleri
1f139e8057
Update opt-add-helipad.yml 2022-02-16 14:29:29 +01:00
d11n
79df28b6ed
Upgrade LiT to v0.6.2 (includes bugfix) (#602)
* Upgrade Lightning Terminal to v0.6.2-alpha

Closes btcpayserver/btcpayserver#3459

* Add LIT_PASSWD to .env

* Fix and simplify LiT nginx config

See lightninglabs/lightning-terminal#306.

Fixes btcpayserver/btcpayserver-docker#601

* Mount correct LiT data directory

Fixes btcpayserver/btcpayserver-docker#592
2022-02-16 22:24:05 +09:00
nicolas.dorier
febdf5a686
Change listened queue of eclair 2022-02-16 18:23:21 +09:00
nicolas.dorier
62192cd9ff
Bump eclair 2022-02-16 11:44:51 +09:00
nicolas.dorier
f9e57b20aa
Bump btcpay 2022-02-15 15:20:49 +09:00
Anthony Potdevin
f07963a3a0
Update opt-add-thunderhub.yml (#593) 2022-02-13 14:45:21 +09:00
gruve-p
40a7c82df4
Several GRS updates & bump to 22.0 (#539) 2022-02-13 14:17:18 +09:00
nicolas.dorier
518b62357a
Revert "Bump RTL"
This reverts commit 8582e453c3.
2022-02-10 14:36:45 +09:00
nicolas.dorier
8582e453c3
Bump RTL 2022-02-10 13:12:36 +09:00
nicolas.dorier
32d278eae1
Bump btcpay 2022-02-08 13:50:47 +09:00
nicolas.dorier
df53db8def
bump btcpay 2022-02-02 20:45:20 +09:00
nicolas.dorier
fdc5836cab
Revert "Revert "Bump joinmarket""
This reverts commit 0ee725e7b8.
2022-01-30 19:24:56 +09:00
nicolas.dorier
0ee725e7b8
Revert "Bump joinmarket"
This reverts commit 8853ad8ebd.
2022-01-30 18:32:06 +09:00
nicolas.dorier
8853ad8ebd
Bump joinmarket 2022-01-30 18:13:56 +09:00
nicolas.dorier
ec7aa328b7
Revert "Add Monero to opt-save-storage to run pruned node, default Monerod to full node (#558)"
This reverts commit c9cb35a507.
2022-01-29 22:40:37 +09:00
Anthony Potdevin
934a8ace42
Update opt-add-thunderhub.yml (#587) 2022-01-29 22:34:13 +09:00
nicolas.dorier
3ee627466c
bump btcpay 2022-01-28 23:19:40 +09:00
Andrew Camilleri
9db78dc76b
Update opt-add-nostr-relay.yml 2022-01-28 11:28:30 +01:00
CRYPTO GRAMPY™
c9cb35a507
Add Monero to opt-save-storage to run pruned node, default Monerod to full node (#558)
* Default Monerod to full node, add MONEROD_EXTRA_ARGS environment config and add Monerod pruned blockchain to opt-save-storage

* Update opt-save-storage.yml
2022-01-28 15:16:37 +09:00
nicolas.dorier
10bd88da37
load-utxo-set should check for pruning 2022-01-28 11:02:19 +09:00
Andrew Camilleri
61c059fc68
bump btcpay 2022-01-27 17:24:52 +01:00
nicolas.dorier
40f429d46b
Bump nbx and btcpay 2022-01-27 22:31:54 +09:00
Jonathan Underwood
da8a307265
Add signature for FastSync JUnderwood (#586) 2022-01-27 18:52:58 +09:00
nicolas.dorier
8e1b3d7588
NicolasDorier signs utxoset 2022-01-27 18:07:43 +09:00
nicolas.dorier
eb1a28d10e
Update the utxo-snapshot 2022-01-27 00:10:49 +09:00
nicolas.dorier
88c90e0e73
bump nbx 2022-01-19 12:10:18 +09:00
Andrew Camilleri
107dd36242
add nostr relay (#584) 2022-01-18 15:37:13 +01:00
nicolas.dorier
c629f3b779
Remove lottrue bitcoin image 2022-01-13 19:02:35 +09:00
nicolas.dorier
f02e4bbd39
Update Eclair 2022-01-13 19:01:26 +09:00
Andrew Camilleri
36619b3f98
Add PodcastIndex helipad (#567) 2022-01-12 16:50:17 +01:00
Jin Eguchi
4dcbeaf193
Fix error of CircleCI (#564) 2022-01-03 22:08:02 +09:00
Andrew Camilleri
d73cab1ebb
rebump liquid 2021-12-28 15:06:53 +01:00
Andrew Camilleri
7ed86a14a5
downgrade elements 2021-12-28 14:43:18 +01:00
nicolas.dorier
8726ba6f2f
Update litecoin 2021-12-24 15:30:18 +09:00
nicolas.dorier
9bc5eea2ee
Update doc 2021-12-24 15:09:13 +09:00
vasudev
40c1cb4322
Dogecoin Update 1.14.5 (#572) 2021-12-24 15:08:31 +09:00
Andrew Camilleri
4c038bc3bd
bump liquid 2021-12-19 10:30:49 +01:00
nicolas.dorier
bfa73fcf18
bump btcpay 2021-12-14 12:20:00 +09:00
d11n
c470bb278e
Update Lightning Terminal (#562)
Co-authored-by: Andrew Camilleri <kukks@btcpayserver.org>
2021-12-13 12:06:04 +01:00
Jin Eguchi
595a71100e
Bump monacoin to 0.20.2 (#563) 2021-12-13 12:04:26 +01:00
nicolas.dorier
6920b800bc
Update EPS 2021-12-13 11:18:38 +09:00
nicolas.dorier
32074e05c2
fix litecoin 2021-12-09 18:27:14 +09:00
nicolas.dorier
9760747959
Update Litecoin 2021-12-09 18:20:56 +09:00
d11n
3d6d2a81db
Add Lightning Terminal fragment (#512)
* Add Lightning Terminal fragment

* Remove mappings and variables

* Version update

* Update contrib/build-all-images.sh

Co-authored-by: Oliver Gugger <gugger@gmail.com>

* Update docker version

* Add Lightning Terminal to fragments list

* Upgrade LiT to v0.6.0

Co-authored-by: Oliver Gugger <gugger@gmail.com>
2021-12-01 20:38:02 +09:00
nicolas.dorier
8b07b2b47d
bump woocommerce 2021-11-29 17:51:33 +09:00
nicolas.dorier
f0c424f177
bump clightning 2021-11-25 23:01:37 +09:00
nicolas.dorier
0e0f8e7dce
bump lnd 2021-11-25 14:20:55 +09:00
nicolas.dorier
ee2c3f2fcd
bump LND and BTCPay 2021-11-20 22:46:35 +09:00
nicolas.dorier
9bc6fa7bdd
bump btcpay 2021-11-15 22:55:59 +09:00
nicolas.dorier
b41a5e4664
update NBXplorer 2021-11-11 00:06:16 +09:00
nicolas.dorier
903d0617ef
bump btcpay 2021-11-10 00:23:19 +09:00
nicolas.dorier
4eff3f4c1c
Update libseccomp2 on any arm32 buster hosts 2021-11-09 11:26:00 +09:00
Andrew Camilleri
afafca2f26
Update opt-add-btctransmuter.yml 2021-11-05 11:13:22 +01:00
nicolas.dorier
d102e2f042
bump BTCPay 2021-11-05 12:37:26 +09:00
nicolas.dorier
ae64ff21fa
Bump BTCPay 2021-11-05 00:37:34 +09:00
nicolas.dorier
1539961223
Automatically update libseccomp2 on rapsberry pi 4 2021-11-01 20:01:11 +09:00
d11n
688e1ec46f
Upgrade Tallycoin Connect (#541)
* Upgrade Tallycoin Connect

Now it also supports arm32v7 and arm64v8 architectures.

* Correct Dockerfile repo

* Add images to Docker file builder helper

* Fix GitHub link
2021-11-01 17:07:16 +09:00
Anthony Potdevin
343b9c667e
Bump ThunderHub version (#547) 2021-10-31 23:18:07 +09:00
nicolas.dorier
29a547a759
bump btcpay 2021-10-30 14:07:25 +09:00
nicolas.dorier
0682ba1311
Make sure only one lightning implementation is selected 2021-10-30 00:08:38 +09:00
nicolas.dorier
1b7c038aff
bump 2021-10-29 23:48:50 +09:00
nicolas.dorier
92b93ca74d
bump nbxplorer 2021-10-23 21:46:24 +09:00
nicolas.dorier
f936fb0f23
bump postgres 2021-10-22 15:02:02 +09:00
nicolas.dorier
6af4e80e78
bump postgres 2021-10-22 13:52:39 +09:00
nicolas.dorier
a8ff18fb73
update postgres 2021-10-22 13:29:34 +09:00
nicolas.dorier
730d42cf91
Update jm 2021-10-22 12:36:53 +09:00
nicolas.dorier
b153b84953
Switch to our own postgres container 2021-10-21 13:38:36 +09:00
rockstardev
8b3f0368a8
Bump LND to v0.13.3-beta (#540) 2021-10-20 22:07:57 +09:00
nicolas.dorier
650de8f647
update doc 2021-10-20 16:48:59 +09:00
nicolas.dorier
07451713fd
Merge branch 'master' of https://github.com/btcpayserver/btcpayserver-docker into master 2021-10-20 16:48:06 +09:00
d11n
ec8359199e
Upgrade Tallycoin Connect (#541)
Now it also supports arm32v7 and arm64v8 architectures.
2021-10-20 16:47:47 +09:00
nicolas.dorier
8d8c131c14
Bump joinmarket to fix receive-payjoin 2021-10-20 11:48:06 +09:00
nicolas.dorier
ed98cf4455
Bump joinmarket to fix receive-payjoin 2021-10-20 11:14:15 +09:00
nicolas.dorier
16bb5c5bae
Bump NBX 2021-10-11 20:36:33 +09:00
nicolas.dorier
463410a772
Remove bitcoin taproot cc 2021-10-08 12:25:45 +09:00
nicolas.dorier
daa889dc2a
Revert "Revert "bump bitcoin core 22.0, fix issue about corrupt settings.json""
This reverts commit dcf0e554b4.
2021-10-08 12:13:21 +09:00
nicolas.dorier
dcf0e554b4
Revert "bump bitcoin core 22.0, fix issue about corrupt settings.json"
This reverts commit a092054f86.
2021-10-08 11:06:55 +09:00
nicolas.dorier
a092054f86
bump bitcoin core 22.0, fix issue about corrupt settings.json 2021-10-08 11:05:39 +09:00
Kukks
e3b7d57868 Revert "Bump transmuter"
This reverts commit 82803987b3.
2021-10-06 15:34:56 +02:00
Andrew Camilleri
82803987b3
Bump transmuter 2021-10-05 14:19:58 +02:00
xpayserver
3721c651d6
Add chatwoot support system (#353)
Co-authored-by: Andrew Camilleri <kukks@btcpayserver.org>
2021-10-04 08:52:53 +02:00
d11n
4df7243b4d
Improve NDLC disclaimer (#538) 2021-10-04 08:48:50 +02:00
nicolas.dorier
915569e49f
Add joinmarket for arm64 and arm32 2021-10-04 14:58:52 +09:00
nicolas.dorier
425ca5880f
Bump Tor Relay to latest stable release (4.5.9) 2021-10-03 11:13:36 +09:00
nicolas.dorier
c7eb720dd5
Update woocommerce 2021-10-03 10:55:41 +09:00
nicolas.dorier
384a0a9038
Add documentation if postgres update fail on rapsberry pi 4 2021-10-03 01:01:22 +09:00
nicolas.dorier
5b82a9a6ae
Fix postgres update for arm7 2021-10-02 20:43:31 +09:00
nicolas.dorier
c6d45bfa04
Fix postgres update for arm32 2021-10-02 13:17:56 +09:00
nicolas.dorier
6cc3583205
Do not parse settings.json 2021-10-02 12:31:06 +09:00
nicolas.dorier
360cff9a02
Handle postgres migration for old install 2021-10-01 22:20:05 +09:00
nicolas.dorier
1585bc3a90
Fix doc 2021-10-01 16:28:48 +09:00
nicolas.dorier
478b4c26b2
Fix doc 2021-10-01 16:27:21 +09:00
nicolas.dorier
5dc207409b
Fix jm.sh doc 2021-10-01 16:26:29 +09:00
nicolas.dorier
069be073e0
Use supervisord for joinmarket 2021-10-01 16:19:44 +09:00
nicolas.dorier
57a21629fe
Warning 2021-10-01 13:05:29 +09:00
nicolas.dorier
9e534b4324
Revert "Revert "Upgrade postgres""
This reverts commit d321c09ba0.
2021-09-30 20:50:37 +09:00
nicolas.dorier
d321c09ba0
Revert "Upgrade postgres"
This reverts commit 97414993dc.
2021-09-30 19:58:15 +09:00
Pavlenex
bc3699ba67
Merge pull request #537 from dennisreimann/docs
Docs improvements
2021-09-30 11:29:47 +02:00
Dennis Reimann
3c98599e60
Markdown formatting 2021-09-30 11:14:08 +02:00
Dennis Reimann
81a17317e1
Fix video link and preview image for docs 2021-09-30 11:13:45 +02:00
Dennis Reimann
54bd6eedef
Fix instructions link for docs 2021-09-30 11:13:12 +02:00
Dennis Reimann
91d33b513a
Fix firefly link 2021-09-30 11:12:48 +02:00
nicolas.dorier
97414993dc
Upgrade postgres 2021-09-29 12:40:34 +09:00
nicolas.dorier
97a18ecbf8
Activate gzip 2021-09-29 12:24:48 +09:00
nicolas.dorier
65a37e2509
Add joinmarket support 2021-09-28 22:14:42 +09:00
nicolas.dorier
611da529bf
Bump Bitcoin core 2021-09-28 12:45:57 +09:00
Andrew Camilleri
33fd9d2ffc
Revert "Provide plugin directory for Clightning" (#535) 2021-09-27 13:41:09 +02:00
nicolas.dorier
caf31976c3
bump btcpay 2021-09-26 14:44:07 +09:00
nicolas.dorier
2f00fe98e0
Update Lightning-Rest 2021-09-25 00:16:16 +09:00
nicolas.dorier
0eaf203419
Set Default ACME production 2021-09-24 12:44:29 +09:00
Mike Olthoff
ecddf1e599
Update dogecoin.yml (#533) 2021-09-23 11:10:57 +02:00
Andrew Camilleri
d09338b2e5
Feat/fireflyiii (#344)
* Adding Firefly-iii opt fragment

* Adding environment variable to force creation of db

* Instructing postgres to create database

* Switching exposing default port, running create db command

* Remove grep command for postgres container

* Removing database creation on postgres container start

* Adding required App Key env variable

* Updating nginx rewriting

* Updating firefly nginx confugration traying to make it work with subdirectory

https://github.com/firefly-iii/firefly-iii/issues/2848#issuecomment-557845301

* Trying to rewrite

* Reconfiguring nginx to pass headers

* Updating docker fragment

* Last try

* Allowing firefly iii to be hosted on other domain

* Fixing docker compose env variables

* Exposing ports for external communication

* Ports exposing

* Updating firefly host reference

* Matching service name and VIRTUAL_HOST_NAME

* Getting nginx to redirect to port 8080

* update and adapt

* Adapt firefly to be with dedicated domain

* Adapt Docker file builder to support non github builds

* Make firefly init create db only if not exists + run full recommended upgrade procedure

Co-authored-by: rockstardev <rockstardev@users.noreply.github.com>
2021-09-23 18:04:11 +09:00
d11n
8dfd554f58
Script fix (#520) 2021-09-23 07:49:18 +02:00
Downet
d7b6e47b5a
Bumping RTL to 0.11.2 due to bug with peering (#523) 2021-09-23 07:48:32 +02:00
Andrew Camilleri
29df796a99
Update bitcoin-clightning.yml 2021-09-22 13:25:55 +02:00
nicolas.dorier
ce0f217935
Update nbx 2021-09-21 20:53:14 +09:00
nicolas.dorier
84d79fd41b
Make btcpay-restart properly restart everything (Fix #524) 2021-09-21 16:58:10 +09:00
Andrew Camilleri
baf3cbe5c7
Provide plugin directory for Clightning (#518) 2021-09-21 09:35:04 +02:00
Jonathan Underwood
d9ba5a29b4
Update signature for fastsync (#526) 2021-09-21 12:57:15 +09:00
britttttk
1866e0fd73
Update FastSync sig for 699714 and testnet (#532) 2021-09-21 12:56:59 +09:00
Andrew Camilleri
aa16f1ab28
Bump NBX (#528) 2021-09-20 12:39:26 +02:00
Seth Simmons
3bf838f800
Bump Monero to v0.17.2.3 (#522)
Co-authored-by: Seth Simmons <sethsimmons@users.noreply.github.com>
Co-authored-by: Seth Simmons <sethsimmons@pm.me>
Co-authored-by: Seth Simmons <ssimmons2@theark.cloud>
2021-09-15 07:54:03 +02:00
nicolas.dorier
c2ba4399bc
New utxo-set for FastSync 2021-09-11 19:50:59 +09:00
nicolas.dorier
ddc35d58bc
bump 2021-09-11 14:04:04 +09:00
nicolas.dorier
216a0ab9cb
bump nbx 2021-09-10 21:40:06 +09:00
nicolas.dorier
c6bed37ff2
Bump RTL 2021-09-10 15:03:19 +09:00
nicolas.dorier
53adb9582b
Revert "Revert "Bump btcpay""
This reverts commit 40f2765684.
2021-09-10 00:17:26 +09:00
nicolas.dorier
40f2765684
Revert "Bump btcpay"
This reverts commit 64fe7dbddc.
2021-09-09 22:23:16 +09:00
nicolas.dorier
64fe7dbddc
Bump btcpay 2021-09-09 22:21:15 +09:00
nicolas.dorier
4a429e8c6f
bump nbx 2021-09-02 18:37:21 +09:00
nicolas.dorier
b0ce3e1102
bump nbx 2021-09-02 13:31:00 +09:00
nicolas.dorier
616494e3c4
bump nnbx 2021-09-02 13:05:00 +09:00
Andrew Camilleri
5b133ea587 Update bitcoin-clightning.yml 2021-09-01 12:59:56 +02:00
nicolas.dorier
33b01ba992
bump nbx 2021-09-01 16:57:50 +09:00
nicolas.dorier
fb7f2ff60c
bump nbx 2021-08-31 21:23:27 +09:00
Andrew Camilleri
4d9072c36d Update liquid.yml 2021-08-31 09:43:32 +02:00
nicolas.dorier
7fb8b69624
Update NBX 2021-08-31 16:32:40 +09:00
nicolas.dorier
1364529cd8
bump btcpay 2021-08-31 16:28:28 +09:00
Dennis Reimann
80323309e6 Update Sphinx Relay to v2.2.0 2021-08-30 10:26:11 +02:00
Dennis Reimann
11e36a3d78 Update Tallycoin Connect to v1.4.0 2021-08-30 10:21:11 +02:00
nicolas.dorier
989ca7ab9c
Bump RTL 2021-08-30 14:09:28 +09:00
strophy
eff6cb9d32
chore: update to dash 0.17.0.3 (#509)
* chore: update to dash 0.17.0.3

* chore: update dash.conf defaults
2021-08-24 11:21:39 +09:00
Kukks
8083d0a1d1 Update docker builder 2021-08-19 14:25:24 +02:00
Kukks
e6f6568b91 Bump RTL and Clightning-rest
Only for clightning, separate PR for lnd
2021-08-19 14:25:24 +02:00
nicolas.dorier
7a732e9c4a
bump 2021-08-13 16:11:49 +09:00
rockstardev
dade557853
Hotfix for problems with LND 0.13.1 (#508)
* Revert "Revert "Bump LND to v0.13.1-beta-withloop (#506)""

This reverts commit b9777f975d.

* Fetching version that waits for proper wallet unlock state before proceeding
2021-08-13 12:49:46 +09:00
nicolas.dorier
b9777f975d
Revert "Bump LND to v0.13.1-beta-withloop (#506)"
This reverts commit 7574612a68.
2021-08-13 00:37:04 +09:00
nicolas.dorier
40715684e1
Update doc 2021-08-12 18:26:08 +09:00
Andrew Camilleri
88794fee09
bump Clightning to 0.10.1 (#507) 2021-08-12 18:22:27 +09:00
rockstardev
7574612a68
Bump LND to v0.13.1-beta-withloop (#506) 2021-08-12 17:11:41 +09:00
Nicolas Dorier
71d967082c
Bump BTCPay/NBX (#505) 2021-08-12 17:07:35 +09:00
Richard Safier
d60a4e6430 Save LND_WTCLIENT_SWEEP_FEE to environment file 2021-07-19 08:32:49 +02:00
Richard Safier
b2c7a3e6ea remove quotes from wtclient fragment 2021-07-19 08:32:49 +02:00
Richard Safier
e0bb3b82b0 Add ability to customize watchtower sweep fee 2021-07-19 08:32:49 +02:00
Richard Safier
bff1bc4ab2 Add opt-lnd-wtclient fragment description in README 2021-07-19 08:32:49 +02:00
Richard Safier
f027bc36dd Add fragment to enable LND watchtower client 2021-07-19 08:32:49 +02:00
Dennis Reimann
4f9005fbce Finalize Tallycoin Connect integration 2021-07-19 08:29:15 +02:00
Dennis Reimann
b1b0fe8151 Update to latest tallycoin_connect version 2021-07-19 08:29:15 +02:00
Dennis Reimann
4b7fffe0c7 Add Tallycoin Connect fragment 2021-07-19 08:29:15 +02:00
Andrew Camilleri
2cd474b809
bump transmuter 2021-07-12 08:53:00 +02:00
nicolas.dorier
51d09765bd
Revert "Revert "Update tor""
This reverts commit a7701414d3.
2021-06-15 12:27:03 +09:00
nicolas.dorier
a7701414d3
Revert "Update tor"
This reverts commit 365e990740.
2021-06-15 11:59:43 +09:00
nicolas.dorier
365e990740
Update tor 2021-06-15 11:58:05 +09:00
Patrick
776fdbeeb1
S3 backup provider (#438)
* Add S3 backup provider

Allows upload to S3

* Update backup.sh

* Update backup.sh

Co-authored-by: britttttk <39231115+britttttk@users.noreply.github.com>

* Update backup.sh

Co-authored-by: britttttk <39231115+britttttk@users.noreply.github.com>
2021-06-14 12:09:13 +02:00
Dennis Reimann
aac6173d81 Upgrade Sphinx Relay to v2.1.3 2021-06-05 18:50:09 +02:00
nicolas.dorier
51b700209b
opt-*-memory supported by doge 2021-05-26 13:33:44 +09:00
Andrew Camilleri
92d9d840bc
Separate default liquid prune to own fragment (#457)
This allows users who dont want to prune their liquid node to exclude the pruning fragment. (allows rescanning for utxos)
2021-05-26 13:29:06 +09:00
Dali
b05e633dbb
Update BitCore version to 0.90.9.10 (#474)
Co-authored-by: dalijolijo <dalijolijo@v220200132547106119.bestsrv.de>
2021-05-26 13:28:26 +09:00
gruve-p
72ca972f0b
Bump GRS Core and c-lightning (#484)
* Bump GRS Core and c-lightning

* Update eclair
2021-05-26 13:27:59 +09:00
nicolas.dorier
ece80920ee
Update doc 2021-05-26 13:19:00 +09:00
Anthony Potdevin
4ff671f50f
chore: bump thunderhub (#479) 2021-05-26 13:13:29 +09:00
Mike Olthoff
51b97527f6
update dogecoin (#483) 2021-05-26 13:13:02 +09:00
rockstardev
3c2c742607
Removing unnecessary folder navigation 2021-05-23 21:43:29 -05:00
rockstardev
e88f4a5e49 Add Taproot Client Opt In Option 2021-05-23 21:42:23 -05:00
nicolas.dorier
dcb9060b35
bump btcpay 2021-05-19 20:37:10 +09:00
rockstardev
c7219c5b47 Changing lnd host and bumping loop version 2021-05-16 13:28:24 -05:00
nicolas.dorier
5fec2aa642
bump btcpay 2021-05-14 18:00:43 +09:00
Mike Olthoff
a3669f5101 Update lnd_recreate_volume.sh
references to parent directory are now 2 levels deep.
2021-05-13 00:08:11 -05:00
rockstardev
f90a038fa0 Adding LND listening on localhost for port 10009 since our scripts depend on it 2021-05-12 23:16:16 -05:00
maltokyo
420ae328b1
Add Bluewallet LNDHub (#472)
* Add Bluewallet LND Hub to BTCPay Server

Anyone else want to use native Bluewallet Lightning with their BTC Pay Server, this will enable it.

* Add Bluewallet LND Hub to BTCPay Server

Use non-custodial LND Lightning directly from your Bluewallet, and freely let others open accounts on your node.

* Update README.md

* Update opt-add-bluewallet-lndhub.yml

* Update opt-add-bluewallet-lndhub.yml

* Testing defects fixed

Remove init (not compatible with v3 of docker-compose)

Update compatibility table

* Update README.md

* Nginx RP Fixes

* Update nginx.tmpl

* Fixed stylesheet and QR code display issues

* Requested changes from Kukks

* Add missing images to docker builder and build

* move required key to bottom of fragment

Co-authored-by: Andrew Camilleri <kukks@btcpayserver.org>
Co-authored-by: Kukks <evilkukka@gmail.com>
2021-05-11 09:56:31 +02:00
rockstardev
9fca47533b
Signing FastSync UTXO set utxo-snapshot-bitcoin-mainnet-680891.tar 2021-05-09 13:50:37 -05:00
Anthony Potdevin
5ce5dab872
chore: bump thunderhub (#475)
* chore: bump thunderhub

* fix: remove hash
2021-05-06 13:37:07 +02:00
d11n
aaae850790
Add Sphinx Relay opt fragment (#458)
* Add Sphinx Relay opt fragment

* Integrate keysend via existing opt

* Mount lnd datadir readonly

* Update Sphinx Relay and env vars

* Add Sphinx Relay docs

* Update Sphinx Relay
2021-05-05 11:53:25 +02:00
nicolas.dorier
7d8bcaf0d1
bump bitcoin core 2021-05-02 16:04:27 +09:00
nicolas.dorier
58903f8453
bumping thub 2021-05-01 18:13:37 +09:00
nicolas.dorier
c79724d5cb
bump thunderhub 2021-05-01 18:11:33 +09:00
nicolas.dorier
0aee07f932
bump thunderhub 2021-05-01 18:09:53 +09:00
Anthony Potdevin
d417a4f231
chore: bump thunderhub (#440)
* chore: bump thunderhub

* chore: bump thunderhub
2021-05-01 18:09:11 +09:00
Jonathan Underwood
01faebc02f
Add new fastsync sig (#471) 2021-05-01 18:07:15 +09:00
nicolas.dorier
cd47c95271
Add NicolasDorier utxo-set signature 2021-04-30 17:02:56 +09:00
Andrew Camilleri
26eacfdbcb
Add fido2 cred removal in admin script (#467) 2021-04-29 12:06:54 +02:00
nicolas.dorier
d8bccf7253
bump btcpay 2021-04-29 19:02:40 +09:00
rockstardev
a86252dde1
Moving sh scripts related to LND into separate directory (#466)
* Moving sh scripts related to LND into separate directory

* Updating permissions on tools, giving +x
2021-04-29 15:36:37 +09:00
rockstardev
9cfcbc943c
Bumping to v0.12.1-beta container and enabling Loop usage (#450)
* Bumping to v0.12.1-beta container and enabling Loop usage

* Adding environment variables for rest listen and loop

* Starting lnd listeners on specific host

* Restoring tlsextradomain and fixing bitcoin-lnd.yml params

* Adding tool to recreate tls certificate in LND container

* Using new version of LND 0.12.1-beta container with 15s wait

* Tool will restart only LND container

* Updating README file with appropriate version of LND

Co-authored-by: rockstardev <rockstardev@users.noreply.github.com>
2021-04-28 18:37:12 +09:00
nicolas.dorier
e26733a869
bump nbx 2021-04-23 16:07:13 +09:00
nicolas.dorier
79e9602df2
Update NBX 2021-04-19 13:13:10 +09:00
Seth Simmons
0c5d47621c
Bump Monero to v0.17.2.0 (#459)
* Bump Monero version and migrate to DNSBL

* Bump Monero to v0.17.1.9

* Bump Monero to v0.17.2.0

Co-authored-by: Seth Simmons <sethsimmons@users.noreply.github.com>
Co-authored-by: Seth Simmons <sethsimmons@pm.me>
Co-authored-by: Seth Simmons <ssimmons2@theark.cloud>
2021-04-16 08:12:31 +02:00
Andrew Camilleri
4b6ae57607
Revert "Bump Spark Wallet (#448)" (#462)
This reverts commit fba469105c.
2021-04-16 08:10:17 +02:00
Andrew Camilleri
fba469105c
Bump Spark Wallet (#448)
* Bump Spark Wallet

* Update bitcoin-clightning.yml
2021-04-16 08:07:26 +02:00
Andrew Camilleri
e6079ad7a3
bump liquid (#461) 2021-04-16 08:03:22 +02:00
nicolas.dorier
d703473f51
Update docker compose 2021-04-06 12:33:22 +09:00
Pavlenex
4b192beed0
Merge pull request #454 from Zaxounette/doc/btcpay-clean.sh
Document btcpay-clean.sh in README.md
2021-04-01 09:27:13 +02:00
Zaxounette
cdccc20239 Document btcpay-clean.sh in README.md 2021-04-01 05:42:17 +02:00
nicolas.dorier
5ad43e3f60
bump btcpay 2021-04-01 12:15:32 +09:00
nicolas.dorier
ac8a09068e
bump btcpay 2021-03-31 00:13:56 +09:00
Nicolas Dorier
8a916b0d5c
bump charge (#452) 2021-03-30 18:03:48 +09:00
nicolas.dorier
84ab8f7c67
fix nginx 2021-03-27 11:38:33 +09:00
177 changed files with 5740 additions and 1948 deletions

View File

@ -3,6 +3,7 @@ jobs:
cansetup:
machine:
enabled: true
image: ubuntu-2204:current
steps:
- checkout
- run:
@ -11,62 +12,19 @@ jobs:
sudo ./test-install.sh
# Define in CircleCi Project Variables: $DOCKERHUB_REPO, $DOCKERHUB_USER, $DOCKERHUB_PASS
# Publish jobs require those variables
amd64:
machine:
enabled: true
docker:
docker:
- image: cimg/base:stable
steps:
- checkout
- setup_remote_docker
- checkout
- run:
command: |
cd docker-compose-generator
sudo docker login --username=$DOCKERHUB_USER --password=$DOCKERHUB_PASS
sudo docker build --pull -t $DOCKERHUB_REPO:latest-amd64 -f linuxamd64.Dockerfile .
sudo docker push $DOCKERHUB_REPO:latest-amd64
arm32v7:
machine:
enabled: true
steps:
- checkout
- run:
command: |
sudo docker run --rm --privileged multiarch/qemu-user-static:register --reset
#
cd docker-compose-generator
sudo docker login --username=$DOCKERHUB_USER --password=$DOCKERHUB_PASS
sudo docker build --pull -t $DOCKERHUB_REPO:latest-arm32v7 -f linuxarm32v7.Dockerfile .
sudo docker push $DOCKERHUB_REPO:latest-arm32v7
arm64v8:
machine:
enabled: true
steps:
- checkout
- run:
command: |
sudo docker run --rm --privileged multiarch/qemu-user-static:register --reset
#
cd docker-compose-generator
sudo docker login --username=$DOCKERHUB_USER --password=$DOCKERHUB_PASS
sudo docker build --pull -t $DOCKERHUB_REPO:latest-arm64v8 -f linuxarm64v8.Dockerfile .
sudo docker push $DOCKERHUB_REPO:latest-arm64v8
multiarch:
machine:
enabled: true
image: circleci/classic:201808-01
steps:
- run:
command: |
# Turn on Experimental features
sudo mkdir $HOME/.docker
sudo sh -c 'echo "{ \"experimental\": \"enabled\" }" >> $HOME/.docker/config.json'
#
sudo docker login --username=$DOCKERHUB_USER --password=$DOCKERHUB_PASS
#
sudo docker manifest create --amend $DOCKERHUB_REPO:latest $DOCKERHUB_REPO:latest-amd64 $DOCKERHUB_REPO:latest-arm32v7 $DOCKERHUB_REPO:latest-arm64v8
sudo docker manifest annotate $DOCKERHUB_REPO:latest $DOCKERHUB_REPO:latest-amd64 --os linux --arch amd64
sudo docker manifest annotate $DOCKERHUB_REPO:latest $DOCKERHUB_REPO:latest-arm32v7 --os linux --arch arm --variant v7
sudo docker manifest annotate $DOCKERHUB_REPO:latest $DOCKERHUB_REPO:latest-arm64v8 --os linux --arch arm64 --variant v8
sudo docker manifest push $DOCKERHUB_REPO:latest -p
docker login --username=$DOCKERHUB_USER --password=$DOCKERHUB_PASS
docker buildx create --use
DOCKER_BUILDX_OPTS="--platform linux/amd64,linux/arm64,linux/arm/v7 --push"
docker buildx build $DOCKER_BUILDX_OPTS -t $DOCKERHUB_REPO:latest .
workflows:
version: 2
@ -76,23 +34,7 @@ workflows:
filters:
branches:
only: master
- amd64:
filters:
branches:
only: dcg-latest
- arm32v7:
filters:
branches:
only: dcg-latest
- arm64v8:
filters:
branches:
only: dcg-latest
- multiarch:
requires:
- amd64
- arm32v7
- arm64v8
- docker:
filters:
branches:
only: dcg-latest

View File

@ -2,7 +2,9 @@
set -e
systemctl stop docker.socket
apt-get remove docker-ce
rm -rf /usr/bin/docker
rm -rf /usr/local/bin/docker-compose
cd ../..
@ -24,4 +26,4 @@ timeout 1m bash .circleci/test-connectivity.sh
# Testing scripts are not crashing and installed
btcpay-up.sh
btcpay-down.sh
btcpay-down.sh

3
.gitignore vendored
View File

@ -297,8 +297,7 @@ Production/.env
.vscode/
*docker-compose.generated.yml
Generated/acme.json
Generated/traefik_logs/
Generated/chatwoot_config.env
Generated/error

View File

@ -1,5 +1,4 @@
*.yml
nginx.tmpl
*.toml
*.json
pull-images.sh
pull-images.sh

2
Generated/zcash.conf Normal file
View File

@ -0,0 +1,2 @@
rpcpassword=none
rpcbind=zebra

View File

@ -18,6 +18,7 @@ The relevant environment variables are:
* `NBITCOIN_NETWORK`: The blockchain identifier used by NBitcoin (eg., `regtest`, `testnet`, `mainnet`)
* `BTCPAY_HOST`: The external url used to access the NGINX server from internet. This domain name must point to this machine for Let's Encrypt to create your certificate. (typically with a CNAME or A record)
* `BTCPAY_LIGHTNING_HOST`: The hostname announced for your node on the lightning network (by default, the `BTCPAY_HOST` will be used)
* `BTCPAY_ROOTPATH`: The root path directory where BTCPay is accessed, more information below. (default: /)
* `LETSENCRYPT_EMAIL`: The email Let's Encrypt will use to notify you about certificate expiration.
* `ACME_CA_URI`: Let's encrypt API endpoint (`staging` for a staging certificate, `production` for a production one)

View File

@ -1,207 +0,0 @@
version: "3"
# DO NOT USE THOSE ARE DEPRECATED
services:
nginx:
restart: unless-stopped
image: nginx:stable
container_name: nginx
ports:
- "80:80"
- "443:443"
volumes:
- "nginx_conf:/etc/nginx/conf.d"
- "nginx_vhost:/etc/nginx/vhost.d"
- "nginx_html:/usr/share/nginx/html"
- "nginx_certs:/etc/nginx/certs:ro"
links:
- btcpayserver
nginx-gen:
restart: unless-stopped
image: btcpayserver/docker-gen:0.7.5
container_name: nginx-gen
volumes:
- "/var/run/docker.sock:/tmp/docker.sock:ro"
- "./nginx.tmpl:/etc/docker-gen/templates/nginx.tmpl:ro"
- "nginx_conf:/etc/nginx/conf.d"
- "nginx_vhost:/etc/nginx/vhost.d"
- "nginx_html:/usr/share/nginx/html"
- "nginx_certs:/etc/nginx/certs:ro"
entrypoint: /usr/local/bin/docker-gen -notify-sighup nginx -watch -wait 5s:30s /etc/docker-gen/templates/nginx.tmpl /etc/nginx/conf.d/default.conf
links:
- nginx
letsencrypt-nginx-proxy-companion:
restart: unless-stopped
image: jrcs/letsencrypt-nginx-proxy-companion
container_name: letsencrypt-nginx-proxy-companion
volumes:
- "/var/run/docker.sock:/var/run/docker.sock:ro"
- "nginx_conf:/etc/nginx/conf.d"
- "nginx_vhost:/etc/nginx/vhost.d"
- "nginx_html:/usr/share/nginx/html"
- "nginx_certs:/etc/nginx/certs:rw"
environment:
NGINX_DOCKER_GEN_CONTAINER: "nginx-gen"
NGINX_PROXY_CONTAINER: "nginx"
ACME_CA_URI: ${ACME_CA_URI:-staging}
links:
- nginx-gen
btcpayserver:
restart: unless-stopped
image: nicolasdorier/btcpayserver:1.0.2.106
expose:
- "49392"
environment:
BTCPAY_POSTGRES: User ID=postgres;Host=postgres;Port=5432;Database=btcpayserver${NBITCOIN_NETWORK:-regtest}
BTCPAY_NETWORK: ${NBITCOIN_NETWORK:-regtest}
BTCPAY_BIND: 0.0.0.0:49392
BTCPAY_EXTERNALURL: ${BTCPAY_PROTOCOL:-https}://${BTCPAY_HOST}/
BTCPAY_ROOTPATH: ${BTCPAY_ROOTPATH:-/}
BTCPAY_SSHTRUSTEDFINGERPRINTS: ${BTCPAY_SSHTRUSTEDFINGERPRINTS}
BTCPAY_SSHKEYFILE: ${BTCPAY_SSHKEYFILE}
VIRTUAL_NETWORK: nginx-proxy
VIRTUAL_PORT: 49392
VIRTUAL_HOST: ${BTCPAY_HOST}
VIRTUAL_HOST_NAME: "btcpay"
SSL_POLICY: Mozilla-Modern
LETSENCRYPT_HOST: ${BTCPAY_HOST}
LETSENCRYPT_EMAIL: ${LETSENCRYPT_EMAIL:-<no value>}
BTCPAY_LTCEXPLORERURL: http://nbxplorer:32838/
BTCPAY_CHAINS: "ltc,btc"
BTCPAY_LTCLIGHTNING: "type=clightning;server=unix://etc/clightning_litecoin/lightning-rpc"
BTCPAY_BTCEXPLORERURL: http://nbxplorer:32838/
BTCPAY_BTCLIGHTNING: "type=clightning;server=unix://etc/clightning_bitcoin/lightning-rpc"
links:
- nbxplorer
- postgres
- clightning_litecoin
- clightning_bitcoin
volumes:
- "btcpay_datadir:/datadir"
- "nbxplorer_datadir:/root/.nbxplorer"
- "clightning_litecoin_datadir:/etc/clightning_litecoin"
- "clightning_bitcoin_datadir:/etc/clightning_bitcoin"
nbxplorer:
restart: unless-stopped
image: nicolasdorier/nbxplorer:1.0.2.31
expose:
- "32838"
environment:
NBXPLORER_NETWORK: ${NBITCOIN_NETWORK:-regtest}
NBXPLORER_BIND: 0.0.0.0:32838
NBXPLORER_CHAINS: "ltc,btc"
NBXPLORER_LTCRPCURL: http://litecoind:43782/
NBXPLORER_LTCNODEENDPOINT: litecoind:39388
NBXPLORER_BTCRPCURL: http://bitcoind:43782/
NBXPLORER_BTCNODEENDPOINT: bitcoind:39388
volumes:
- "nbxplorer_datadir:/datadir"
- "litecoin_datadir:/root/.litecoin"
- "bitcoin_datadir:/root/.bitcoin"
links:
- litecoind
- bitcoind
postgres:
restart: unless-stopped
image: postgres:9.6.5
volumes:
- "postgres_datadir:/var/lib/postgresql/data"
litecoind:
restart: unless-stopped
container_name: btcpayserver_litecoind
image: nicolasdorier/docker-litecoin:0.16.3
environment:
BITCOIN_EXTRA_ARGS: |
rpcport=43782
${NBITCOIN_NETWORK:-regtest}=1
port=39388
zmqpubrawblock=tcp://0.0.0.0:28332
zmqpubrawtx=tcp://0.0.0.0:28333
whitelist=0.0.0.0/0
expose:
- "43782"
- "39388"
- "28332"
- "28333"
volumes:
- "litecoin_datadir:/data"
clightning_litecoin:
image: nicolasdorier/clightning:v0.6.1
container_name: btcpayserver_clightning_litecoin
restart: unless-stopped
environment:
LIGHTNINGD_NETWORK: ${NBITCOIN_NETWORK:-regtest}
LIGHTNINGD_CHAIN: ltc
LIGHTNINGD_EXPLORERURL: "http://nbxplorer:32838/"
LIGHTNINGD_OPT: |
bitcoin-datadir=/etc/litecoin
bitcoin-rpcconnect=litecoind
bind-addr=0.0.0.0:9735
announce-addr=${BTCPAY_HOST}:9736
network=${NBITCOIN_NETWORK:-regtest}
alias=${LIGHTNING_ALIAS}
chain=ltc
volumes:
- "clightning_litecoin_datadir:/root/.lightning"
- "litecoin_datadir:/etc/litecoin"
- "nbxplorer_datadir:/root/.nbxplorer"
ports:
- "9736:9735"
links:
- nbxplorer
- litecoind
bitcoind:
restart: unless-stopped
container_name: btcpayserver_bitcoind
image: nicolasdorier/docker-bitcoin:0.16.3
environment:
BITCOIN_EXTRA_ARGS: |
rpcport=43782
${NBITCOIN_NETWORK:-regtest}=1
port=39388
whitelist=0.0.0.0/0
zmqpubrawblock=tcp://0.0.0.0:28332
zmqpubrawtx=tcp://0.0.0.0:28333
expose:
- "43782"
- "39388"
- "28332"
- "28333"
volumes:
- "bitcoin_datadir:/data"
clightning_bitcoin:
image: nicolasdorier/clightning:v0.6.1
container_name: btcpayserver_clightning_bitcoin
restart: unless-stopped
environment:
LIGHTNINGD_NETWORK: ${NBITCOIN_NETWORK:-regtest}
LIGHTNINGD_CHAIN: btc
LIGHTNINGD_EXPLORERURL: "http://nbxplorer:32838/"
LIGHTNINGD_OPT: |
bitcoin-datadir=/etc/bitcoin
bitcoin-rpcconnect=bitcoind
announce-addr=${BTCPAY_HOST}:9735
bind-addr=0.0.0.0:9735
network=${NBITCOIN_NETWORK:-regtest}
alias=${LIGHTNING_ALIAS}
chain=btc
volumes:
- "clightning_bitcoin_datadir:/root/.lightning"
- "bitcoin_datadir:/etc/bitcoin"
- "nbxplorer_datadir:/root/.nbxplorer"
ports:
- "9735:9735"
links:
- nbxplorer
- bitcoind
volumes:
nginx_conf:
nginx_vhost:
nginx_html:
nginx_certs:
postgres_datadir:
btcpay_datadir:
nbxplorer_datadir:
litecoin_datadir:
clightning_litecoin_datadir:
bitcoin_datadir:
clightning_bitcoin_datadir:

View File

@ -1,149 +0,0 @@
version: "3"
# DO NOT USE THOSE ARE DEPRECATED
services:
nginx:
restart: unless-stopped
image: nginx:stable
container_name: nginx
ports:
- "80:80"
- "443:443"
volumes:
- "nginx_conf:/etc/nginx/conf.d"
- "nginx_vhost:/etc/nginx/vhost.d"
- "nginx_html:/usr/share/nginx/html"
- "nginx_certs:/etc/nginx/certs:ro"
links:
- btcpayserver
nginx-gen:
restart: unless-stopped
image: btcpayserver/docker-gen:0.7.5
container_name: nginx-gen
volumes:
- "/var/run/docker.sock:/tmp/docker.sock:ro"
- "./nginx.tmpl:/etc/docker-gen/templates/nginx.tmpl:ro"
- "nginx_conf:/etc/nginx/conf.d"
- "nginx_vhost:/etc/nginx/vhost.d"
- "nginx_html:/usr/share/nginx/html"
- "nginx_certs:/etc/nginx/certs:ro"
entrypoint: /usr/local/bin/docker-gen -notify-sighup nginx -watch -wait 5s:30s /etc/docker-gen/templates/nginx.tmpl /etc/nginx/conf.d/default.conf
links:
- nginx
letsencrypt-nginx-proxy-companion:
restart: unless-stopped
image: jrcs/letsencrypt-nginx-proxy-companion
container_name: letsencrypt-nginx-proxy-companion
volumes:
- "/var/run/docker.sock:/var/run/docker.sock:ro"
- "nginx_conf:/etc/nginx/conf.d"
- "nginx_vhost:/etc/nginx/vhost.d"
- "nginx_html:/usr/share/nginx/html"
- "nginx_certs:/etc/nginx/certs:rw"
environment:
NGINX_DOCKER_GEN_CONTAINER: "nginx-gen"
NGINX_PROXY_CONTAINER: "nginx"
ACME_CA_URI: ${ACME_CA_URI:-staging}
links:
- nginx-gen
btcpayserver:
restart: unless-stopped
image: nicolasdorier/btcpayserver:1.0.2.106
expose:
- "49392"
environment:
BTCPAY_POSTGRES: User ID=postgres;Host=postgres;Port=5432;Database=btcpayserver${NBITCOIN_NETWORK:-regtest}
BTCPAY_NETWORK: ${NBITCOIN_NETWORK:-regtest}
BTCPAY_BIND: 0.0.0.0:49392
BTCPAY_EXTERNALURL: ${BTCPAY_PROTOCOL:-https}://${BTCPAY_HOST}/
BTCPAY_ROOTPATH: ${BTCPAY_ROOTPATH:-/}
BTCPAY_SSHTRUSTEDFINGERPRINTS: ${BTCPAY_SSHTRUSTEDFINGERPRINTS}
BTCPAY_SSHKEYFILE: ${BTCPAY_SSHKEYFILE}
VIRTUAL_NETWORK: nginx-proxy
VIRTUAL_PORT: 49392
VIRTUAL_HOST: ${BTCPAY_HOST}
VIRTUAL_HOST_NAME: "btcpay"
SSL_POLICY: Mozilla-Modern
LETSENCRYPT_HOST: ${BTCPAY_HOST}
LETSENCRYPT_EMAIL: ${LETSENCRYPT_EMAIL:-<no value>}
BTCPAY_LTCEXPLORERURL: http://nbxplorer:32838/
BTCPAY_CHAINS: "ltc,btc"
BTCPAY_BTCEXPLORERURL: http://nbxplorer:32838/
links:
- nbxplorer
- postgres
volumes:
- "btcpay_datadir:/datadir"
- "nbxplorer_datadir:/root/.nbxplorer"
nbxplorer:
restart: unless-stopped
image: nicolasdorier/nbxplorer:1.0.2.31
expose:
- "32838"
environment:
NBXPLORER_NETWORK: ${NBITCOIN_NETWORK:-regtest}
NBXPLORER_BIND: 0.0.0.0:32838
NBXPLORER_CHAINS: "ltc,btc"
NBXPLORER_LTCRPCURL: http://litecoind:43782/
NBXPLORER_LTCNODEENDPOINT: litecoind:39388
NBXPLORER_BTCRPCURL: http://bitcoind:43782/
NBXPLORER_BTCNODEENDPOINT: bitcoind:39388
volumes:
- "nbxplorer_datadir:/datadir"
- "litecoin_datadir:/root/.litecoin"
- "bitcoin_datadir:/root/.bitcoin"
links:
- litecoind
- bitcoind
postgres:
restart: unless-stopped
image: postgres:9.6.5
volumes:
- "postgres_datadir:/var/lib/postgresql/data"
litecoind:
restart: unless-stopped
container_name: btcpayserver_litecoind
image: nicolasdorier/docker-litecoin:0.16.3
environment:
BITCOIN_EXTRA_ARGS: |
rpcport=43782
${NBITCOIN_NETWORK:-regtest}=1
port=39388
zmqpubrawblock=tcp://0.0.0.0:28332
zmqpubrawtx=tcp://0.0.0.0:28333
whitelist=0.0.0.0/0
expose:
- "43782"
- "39388"
- "28332"
- "28333"
volumes:
- "litecoin_datadir:/data"
bitcoind:
restart: unless-stopped
container_name: btcpayserver_bitcoind
image: nicolasdorier/docker-bitcoin:0.16.3
environment:
BITCOIN_EXTRA_ARGS: |
rpcport=43782
${NBITCOIN_NETWORK:-regtest}=1
port=39388
whitelist=0.0.0.0/0
zmqpubrawblock=tcp://0.0.0.0:28332
zmqpubrawtx=tcp://0.0.0.0:28333
expose:
- "43782"
- "39388"
- "28332"
- "28333"
volumes:
- "bitcoin_datadir:/data"
volumes:
nginx_conf:
nginx_vhost:
nginx_html:
nginx_certs:
postgres_datadir:
btcpay_datadir:
nbxplorer_datadir:
litecoin_datadir:
bitcoin_datadir:

View File

@ -1,123 +0,0 @@
version: "3"
services:
nginx:
restart: unless-stopped
image: nginx:stable
container_name: nginx
ports:
- "80:80"
- "443:443"
volumes:
- "nginx_conf:/etc/nginx/conf.d"
- "nginx_vhost:/etc/nginx/vhost.d"
- "nginx_html:/usr/share/nginx/html"
- "nginx_certs:/etc/nginx/certs:ro"
links:
- btcpayserver
nginx-gen:
restart: unless-stopped
image: btcpayserver/docker-gen:0.7.5
container_name: nginx-gen
volumes:
- "/var/run/docker.sock:/tmp/docker.sock:ro"
- "./nginx.tmpl:/etc/docker-gen/templates/nginx.tmpl:ro"
- "nginx_conf:/etc/nginx/conf.d"
- "nginx_vhost:/etc/nginx/vhost.d"
- "nginx_html:/usr/share/nginx/html"
- "nginx_certs:/etc/nginx/certs:ro"
entrypoint: /usr/local/bin/docker-gen -notify-sighup nginx -watch -wait 5s:30s /etc/docker-gen/templates/nginx.tmpl /etc/nginx/conf.d/default.conf
links:
- nginx
letsencrypt-nginx-proxy-companion:
restart: unless-stopped
image: jrcs/letsencrypt-nginx-proxy-companion
container_name: letsencrypt-nginx-proxy-companion
volumes:
- "/var/run/docker.sock:/var/run/docker.sock:ro"
- "nginx_conf:/etc/nginx/conf.d"
- "nginx_vhost:/etc/nginx/vhost.d"
- "nginx_html:/usr/share/nginx/html"
- "nginx_certs:/etc/nginx/certs:rw"
environment:
NGINX_DOCKER_GEN_CONTAINER: "nginx-gen"
NGINX_PROXY_CONTAINER: "nginx"
ACME_CA_URI: ${ACME_CA_URI:-staging}
links:
- nginx-gen
btcpayserver:
restart: unless-stopped
image: nicolasdorier/btcpayserver:1.0.2.106
expose:
- "49392"
environment:
BTCPAY_POSTGRES: User ID=postgres;Host=postgres;Port=5432;Database=btcpayserver${NBITCOIN_NETWORK:-regtest}
BTCPAY_NETWORK: ${NBITCOIN_NETWORK:-regtest}
BTCPAY_BIND: 0.0.0.0:49392
BTCPAY_EXTERNALURL: ${BTCPAY_PROTOCOL:-https}://${BTCPAY_HOST}/
BTCPAY_ROOTPATH: ${BTCPAY_ROOTPATH:-/}
BTCPAY_SSHTRUSTEDFINGERPRINTS: ${BTCPAY_SSHTRUSTEDFINGERPRINTS}
BTCPAY_SSHKEYFILE: ${BTCPAY_SSHKEYFILE}
VIRTUAL_NETWORK: nginx-proxy
VIRTUAL_PORT: 49392
VIRTUAL_HOST: ${BTCPAY_HOST}
VIRTUAL_HOST_NAME: "btcpay"
SSL_POLICY: Mozilla-Modern
LETSENCRYPT_HOST: ${BTCPAY_HOST}
LETSENCRYPT_EMAIL: ${LETSENCRYPT_EMAIL:-<no value>}
BTCPAY_CHAINS: "btc"
BTCPAY_BTCEXPLORERURL: http://nbxplorer:32838/
links:
- nbxplorer
- postgres
volumes:
- "btcpay_datadir:/datadir"
- "nbxplorer_datadir:/root/.nbxplorer"
nbxplorer:
restart: unless-stopped
image: nicolasdorier/nbxplorer:1.0.2.31
expose:
- "32838"
environment:
NBXPLORER_NETWORK: ${NBITCOIN_NETWORK:-regtest}
NBXPLORER_BIND: 0.0.0.0:32838
NBXPLORER_CHAINS: "btc"
NBXPLORER_BTCRPCURL: http://bitcoind:43782/
NBXPLORER_BTCNODEENDPOINT: bitcoind:39388
volumes:
- "nbxplorer_datadir:/datadir"
- "bitcoin_datadir:/root/.bitcoin"
links:
- bitcoind
postgres:
restart: unless-stopped
image: postgres:9.6.5
volumes:
- "postgres_datadir:/var/lib/postgresql/data"
bitcoind:
restart: unless-stopped
container_name: btcpayserver_bitcoind
image: nicolasdorier/docker-bitcoin:0.16.3
environment:
BITCOIN_EXTRA_ARGS: |
rpcport=43782
${NBITCOIN_NETWORK:-regtest}=1
port=39388
whitelist=0.0.0.0/0
zmqpubrawblock=tcp://0.0.0.0:28332
zmqpubrawtx=tcp://0.0.0.0:28333
expose:
- "43782"
- "39388"
- "28332"
- "28333"
volumes:
- "bitcoin_datadir:/data"
volumes:
nginx_conf:
nginx_vhost:
nginx_html:
nginx_certs:
postgres_datadir:
btcpay_datadir:
nbxplorer_datadir:
bitcoin_datadir:

View File

@ -1,4 +1,4 @@
{{ $CurrentContainer := where $ "ID" .Docker.CurrentContainerID | first }}
{{ $CurrentContainer := where $ "ID" .Docker.CurrentContainerID | first }}
{{ define "upstream" }}
{{ if .Address }}
{{/* If we got the containers from swarm and this container's port is published to host, use host IP:PORT */}}
@ -18,27 +18,45 @@
server 127.0.0.1 down;
{{ end }}
{{ end }}
{{ end }}
{{ define "redirects" }}
{{ if eq $.HostName "btcpay" }}
{{ range $container := $.Containers }}
{{ $serviceName := (index $container.Labels "com.docker.compose.service") }}
{{ if (eq $serviceName "lnd_bitcoin") }}
location /lnrpc {
location ~* ^/(lnrpc|routerrpc|verrpc|walletrpc)\. {
grpc_read_timeout 6000s;
grpc_send_timeout 6000s;
grpc_pass grpcs://lnd_bitcoin:10009;
}
location /lnd-rest/btc/ {
rewrite ^/lnd-rest/btc/(.*) /$1 break;
proxy_pass http://lnd_bitcoin:8080/;
}
{{ end }}
{{ if $container.Env.REAL_IP_HEADER }}
{{ range $containerNetwork := $container.Networks }}
set_real_ip_from {{ $containerNetwork.IP }};
{{ end }}
{{ if (ne $container.Env.REAL_IP_HEADER "X-Real-IP") }}
real_ip_header {{ $container.Env.REAL_IP_HEADER }};
{{ end }}
{{ end }}
{{ if (eq $serviceName "bitcoin_rtl") }}
location /rtl/ {
proxy_pass http://bitcoin_rtl:3000/rtl/;
}
{{ end }}
{{ if (eq $serviceName "joinmarket") }}
location /obwatch/ {
proxy_pass http://joinmarket:62601/;
}
{{ end }}
{{ if (eq $serviceName "bitcoin_thub") }}
location /thub {
proxy_pass http://bitcoin_thub:3000/thub;
@ -62,11 +80,11 @@
location /lightning-charge/btc/ {
proxy_pass http://clightning_bitcoin_charge:9112/;
}
{{ end }}
{{ if (eq $serviceName "clightning_bitcoin_rest") }}
{{ end }}
{{ if (eq $serviceName "clightning_bitcoin") }}
location /clightning-rest/btc/ {
rewrite ^/clightning-rest/btc/(.*) /$1 break;
proxy_pass http://clightning_bitcoin_rest:3001/;
proxy_pass http://clightning_bitcoin:3010/;
}
{{ end }}
{{ if (eq $serviceName "clightning_groestlcoin_spark") }}
@ -79,7 +97,7 @@
proxy_pass http://clightning_groestlcoin_charge:9112/;
}
{{ end }}
{{ if (eq $serviceName "btctransmuter") }}
location /btctransmuter/ {
proxy_set_header Connection "";
@ -93,7 +111,76 @@
proxy_pass http://btctransmuter;
}
{{ 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 "helipad") }}
location /helipad/ {
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;
sub_filter_once off;
sub_filter_types *;
sub_filter 'src="/' 'src="/helipad/';
sub_filter 'href="/' 'href="/helipad/';
sub_filter '/image' '/helipad/image';
sub_filter '/pew' '/helipad/pew';
sub_filter '/boosts' '/helipad/boosts';
sub_filter '/api/v1/helipad' '/helipad/api/v1/helipad';
proxy_pass http://helipad:2112/;
}
{{ end }}
{{ if (eq $serviceName "lnd_lit") }}
location /lit/ {
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-Proto $scheme;
proxy_pass http://lnd_lit:8080/;
}
location ~* ^/(ln|loop|pool|lit)rpc\. {
proxy_pass http://lnd_lit:8080;
}
{{ end }}
{{ if (eq $serviceName "sphinxrelay") }}
location /sphinxrelay/ {
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-Proto $scheme;
proxy_pass http://sphinxrelay:3300/;
}
{{ end }}
{{ if (eq $serviceName "tallycoin_connect") }}
location /tallycoin-connect/ {
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-Proto $scheme;
proxy_pass http://tallycoin_connect:8123/;
}
{{ end }}
{{ if (eq $serviceName "configurator") }}
location /configurator/ {
proxy_set_header Connection "";
@ -106,7 +193,81 @@
proxy_set_header X-Forwarded-Proto https;
proxy_pass http://configurator;
}
{{ end }}
{{ 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 "";
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_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "Upgrade";
proxy_pass http://nnostr-relay;
}
{{ end }}
{{ if (eq $serviceName "mempool_web") }}
# https://github.com/mempool/mempool/tree/master/production/nginx
location /mempool/ {
proxy_pass http://mempool_web:8080/;
# Bypass gzip, so that we can apply sub_filter, which does not work with proxy compressed response.
# Details: https://www.nginx.com/resources/wiki/modules/substitutions/#directives
proxy_set_header Accept-Encoding "";
sub_filter_types *;
sub_filter_once off;
sub_filter 'base href="/' 'base href="/mempool/';
sub_filter '/api/' '/mempool/api/';
sub_filter '/resources' '/mempool/resources';
# mainnet API
location /mempool/api/v1/ws {
proxy_pass http://mempool_api:8999;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "Upgrade";
}
location /mempool/api/v1/ {
proxy_pass http://mempool_api:8999/api/v1/;
}
location /mempool/api/ {
proxy_pass http://mempool_api:8999/api/v1/;
}
}
location ~ "^/[a-z]{2}/mempool" {
rewrite ^/(.*)/mempool $scheme://$server_name/mempool/$1/ redirect;
}
{{ end }}
{{ end }}
{{ end }}
@ -164,7 +325,9 @@ map $scheme $proxy_x_forwarded_ssl {
https on;
}
gzip_types text/plain text/css application/javascript application/json application/x-javascript text/xml application/xml application/xml+rss text/javascript;
gzip on;
gzip_min_length 1000;
gzip_types image/svg+xml text/plain text/css application/javascript application/json application/x-javascript text/xml application/xml application/xml+rss text/javascript;
log_format vhost '$host $remote_addr - $remote_user [$time_local] '
'"$request" $status $body_bytes_sent '
@ -196,8 +359,6 @@ proxy_buffers 4 256k;
proxy_busy_buffers_size 256k;
client_header_buffer_size 500k;
large_client_header_buffers 4 500k;
http2_max_field_size 500k;
http2_max_header_size 500k;
# Mitigate httpoxy attack (see README for details)
proxy_set_header Proxy "";
@ -210,18 +371,17 @@ server {
{{ if $enable_ipv6 }}
listen [::]:80;
{{ end }}
access_log /var/log/nginx/access.log vhost;
return 503;
}
{{ if (and (exists "/etc/nginx/certs/default.crt") (exists "/etc/nginx/certs/default.key")) }}
server {
server_name _; # This is just an invalid value which will never trigger on a real hostname.
listen 443 ssl http2;
listen 443 ssl;
{{ if $enable_ipv6 }}
listen [::]:443 ssl http2;
listen [::]:443 ssl;
{{ end }}
access_log /var/log/nginx/access.log vhost;
http2 on;
return 503;
ssl_session_tickets off;
@ -270,10 +430,18 @@ upstream {{ $upstream_name }} {
{{ $onionHost := read (printf "/var/lib/tor/hidden_services/%s/hostname" $hiddenHostName) }}
{{ if ne $onionHost "" }}
server {
client_max_body_size 100M;
server_name {{ trim $onionHost }};
listen 80 ;
proxy_set_header X-Forwarded-Host $host;
access_log /var/log/nginx/access.log vhost;
proxy_set_header X-Forwarded-Host $http_host;
proxy_set_header Host $http_host;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection $proxy_connection;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $proxy_x_forwarded_proto;
proxy_set_header X-Forwarded-Ssl $proxy_x_forwarded_ssl;
proxy_set_header X-Forwarded-Port $proxy_x_forwarded_port;
{{ if (exists "/etc/nginx/vhost.d/default") }}
include /etc/nginx/vhost.d/default;
{{ end }}
@ -336,23 +504,41 @@ server {
{{ if $enable_ipv6 }}
listen [::]:80 {{ $default_server }};
{{ end }}
access_log /var/log/nginx/access.log vhost;
return 301 https://$host$request_uri;
# Allow acme challenge requests without redirect
location ^~ /.well-known/acme-challenge/ {
auth_basic off;
auth_request off;
allow all;
root /usr/share/nginx/html;
try_files $uri =404;
break;
}
# Redirect all other requests to HTTPS
location / {
return 301 https://$host$request_uri;
}
}
{{ end }}
server {
proxy_set_header X-Forwarded-Host $host;
proxy_set_header X-Forwarded-Port 443;
proxy_set_header X-Forwarded-Proto $proxy_x_forwarded_proto;
proxy_set_header X-Forwarded-Host $http_host;
proxy_set_header Host $http_host;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection $proxy_connection;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $proxy_x_forwarded_proto;
proxy_set_header X-Forwarded-Ssl $proxy_x_forwarded_ssl;
proxy_set_header X-Forwarded-Port $proxy_x_forwarded_port;
client_max_body_size 100M;
server_name {{ $host }};
listen 443 ssl http2 {{ $default_server }};
listen 443 ssl {{ $default_server }};
{{ if $enable_ipv6 }}
listen [::]:443 ssl http2 {{ $default_server }};
listen [::]:443 ssl {{ $default_server }};
{{ end }}
access_log /var/log/nginx/access.log vhost;
http2 on;
{{ if eq $network_tag "internal" }}
# Only allow traffic from internal clients
@ -446,12 +632,12 @@ server {
{{ if or (not $is_https) (eq $https_method "noredirect") }}
server {
client_max_body_size 100M;
server_name {{ $host }};
listen 80 {{ $default_server }};
{{ if $enable_ipv6 }}
listen [::]:80 {{ $default_server }};
{{ end }}
access_log /var/log/nginx/access.log vhost;
{{ if eq $network_tag "internal" }}
# Only allow traffic from internal clients
@ -490,12 +676,13 @@ server {
{{ if (and (not $is_https) (exists "/etc/nginx/certs/default.crt") (exists "/etc/nginx/certs/default.key")) }}
server {
client_max_body_size 100M;
server_name {{ $host }};
listen 443 ssl http2 {{ $default_server }};
listen 443 ssl {{ $default_server }};
{{ if $enable_ipv6 }}
listen [::]:443 ssl http2 {{ $default_server }};
listen [::]:443 ssl {{ $default_server }};
{{ end }}
access_log /var/log/nginx/access.log vhost;
http2 on;
{{/* Enable usage of self-signed SSL certificate if .local hostname */}}
{{ if hasSuffix "local" $host }}
{{ if eq $network_tag "internal" }}
@ -545,4 +732,4 @@ server {
{{ end }}
{{ if $.Env.ADDITIONAL_NGINX_CONFIG }}
{{ $.Env.ADDITIONAL_NGINX_CONFIG}}
{{ end }}
{{ end }}

View File

@ -0,0 +1,71 @@
#!/usr/bin/env bash
set -Eeo pipefail
shopt -s extglob
CURRENT_PGVERSION=""
EXPECTED_PGVERSION="$PG_MAJOR"
if [[ -f "/var/lib/postgresql/data/PG_VERSION" ]]; then
CURRENT_PGVERSION="$(cat /var/lib/postgresql/data/PG_VERSION)"
fi
if [[ "$CURRENT_PGVERSION" != "$EXPECTED_PGVERSION" ]] && \
[[ "$CURRENT_PGVERSION" != "" ]]; then
sed -i "s/$/ $CURRENT_PGVERSION/" /etc/apt/sources.list.d/pgdg.list
if ! apt-get update; then
echo "apt-get update failed. Are you using raspberry pi 4? If yes, please follow https://blog.samcater.com/fix-workaround-rpi4-docker-libseccomp2-docker-20/"
exit 1
fi
if ! apt-get install -y --no-install-recommends \
postgresql-$CURRENT_PGVERSION \
postgresql-contrib-$CURRENT_PGVERSION; then
# On arm32, postgres doesn't ship those packages, so we download
# the binaries from an archive we built from the postgres 9.6.20 image's binaries
FALLBACK="https://aois.blob.core.windows.net/public/$CURRENT_PGVERSION-$(uname -m).tar.gz"
FALLBACK_SHARE="https://aois.blob.core.windows.net/public/share-$CURRENT_PGVERSION-$(uname -m).tar.gz"
echo "Failure to install postgresql-$CURRENT_PGVERSION and postgresql-contrib-$CURRENT_PGVERSION trying fallback $FALLBACK"
apt-get install -y wget
pushd . > /dev/null
cd /usr/lib/postgresql
wget $FALLBACK
tar -xvf *.tar.gz
rm -f *.tar.gz
cd /usr/share/postgresql
wget $FALLBACK_SHARE
tar -xvf *.tar.gz
rm -f *.tar.gz
popd > /dev/null
echo "Successfully installed PG utilities via the fallback"
fi
export PGBINOLD="/usr/lib/postgresql/$CURRENT_PGVERSION/bin"
export PGDATABASE="/var/lib/postgresql/data"
export PGDATAOLD="/var/lib/postgresql/data/$CURRENT_PGVERSION"
export PGDATANEW="/var/lib/postgresql/data/$EXPECTED_PGVERSION"
mkdir -p "$PGDATANEW" "$PGDATAOLD"
find "$PGDATABASE" -maxdepth 1 -mindepth 1 \
-not -wholename "$PGDATAOLD" \
-not -wholename "$PGDATANEW" \
-exec mv {} "$PGDATAOLD/" \;
chmod 700 "$PGDATAOLD" "$PGDATANEW"
chown postgres .
chown -R postgres "$PGDATAOLD" "$PGDATANEW" "$PGDATABASE"
if [ ! -s "$PGDATANEW/PG_VERSION" ]; then
PGDATA="$PGDATANEW" eval "gosu postgres initdb $POSTGRES_INITDB_ARGS"
fi
gosu postgres pg_upgrade
rm $PGDATANEW/*.conf
mv $PGDATANEW/* "$PGDATABASE"
mv $PGDATAOLD/*.conf "$PGDATABASE"
rm -r "$PGDATANEW"
./delete_old_cluster.sh
rm ./analyze_new_cluster.sh
fi
if [ -f "docker-entrypoint.sh" ]; then
exec ./docker-entrypoint.sh "$@"
else
exec docker-entrypoint.sh "$@"
fi

242
README.md
View File

@ -15,12 +15,12 @@ You will find below information about how you can install BTCPay Server easily i
As you can see, BTCPay depends on several pieces of infrastructure, mainly:
* A lightweight block explorer (NBXplorer),
* A database (PostgreSQL or SQLite),
* A database (PostgreSQL),
* A full node (eg. Bitcoin Core)
There can be more dependencies if you support more than just standard Bitcoin transactions, including:
* [C-Lightning](https://github.com/ElementsProject/lightning)
* [Core Lightning (CLN)](https://github.com/ElementsProject/lightning)
* [LitecoinD](https://github.com/litecoin-project/litecoin) and other coin daemons
* And more...
@ -44,7 +44,7 @@ First, make sure you have a domain name pointing to your host `A record`, with p
Let's assume your domain is `btcpay.EXAMPLE.com`.
The setup below assumes you want to support Bitcoin, c-lightning, HTTPS automatically configured by Nginx. It also enables node pruning, which you can [modify](#generated-docker-compose) or ignore if you have enough disk space for a full node. Finally, your domain is `btcpay.EXAMPLE.com` should reflect your actual domain name.
The setup below assumes you want to support Bitcoin, Core Lightning (CLN), HTTPS automatically configured by Nginx. It also enables node pruning, which you can [modify](#generated-docker-compose) or ignore if you have enough disk space for a full node. Finally, your domain is `btcpay.EXAMPLE.com` should reflect your actual domain name.
[Environment variables](#environment-variables) can be tailored to your needs. Some variables require additional storage space.
@ -98,14 +98,15 @@ Check out this video if you're interested in learning more about setting up [BTC
* `BTCPAY_ADDITIONAL_HOSTS`: Optional, specify additional domains to your BTCPayServer with https support if enabled. (eg. example2.com,example3.com)
* `REVERSEPROXY_HTTP_PORT`: The public port the reverse proxy binds to for HTTP traffic (default: 80)
* `REVERSEPROXY_HTTPS_PORT`: The public port the reverse proxy binds to for HTTPS traffic (default: 443)
* `REVERSEPROXY_DEFAULT_HOST`: Optional, if using a reverse proxy nginx, specify which website should be presented if the server is accessed by its IP.
* `REVERSEPROXY_DEFAULT_HOST`: Optional, if using a reverse proxy nginx, specify which website should be presented if the server is accessed by its IP or by an unrecognized domain name.
* `NOREVERSEPROXY_HTTP_PORT`: Optional, if not using a reverse proxy, specify which port should be opened for HTTP traffic. (default: 80)
* `NBITCOIN_NETWORK`: The type of network to use (eg. `mainnet`, `testnet`, or `regtest`. Default: `mainnet`)
* `LIGHTNING_ALIAS`: An alias for your lightning network node, if used
* `BTCPAYGEN_CRYPTO1`: First supported crypto currency (eg. `btc`, `ltc`. Default: `btc`)
* `BTCPAYGEN_CRYPTO1`: First supported crypto currency (eg. `btc`, `ltc`, `none`. Default: `btc`)
* `BTCPAYGEN_CRYPTO2`: Second supported crypto currency (eg. `btc`, `ltc`. Default: `(empty)`)
* `BTCPAYGEN_CRYPTON`: N'th supported crypto currency where N is 9 at maximum. (eg. `btc`, `ltc`. Default: `(empty)`)
* `BTCPAYGEN_REVERSEPROXY`: Specify reverse proxy to use; NGinx has HTTPS support. (eg. `nginx`, `traefik`, `(empty)`. Default: `nginx`)
* `BTCPAYGEN_LIGHTNING`: Lightning network implementation to use (eg. `clightning`, `lnd`, Default: `(empty)`)
* `BTCPAYGEN_LIGHTNING`: Lightning network implementation to use (eg. `clightning`, `lnd`, `phoenixd` Default: `(empty)`)
* `BTCPAYGEN_SUBNAME`: The subname of the generated docker-compose file, where the full name is `Generated/docker-compose.SUBNAME.yml` (Default: `generated`)
* `BTCPAYGEN_ADDITIONAL_FRAGMENTS`: Semicolon-separated list of additional fragments you want to use (eg. `opt-save-storage`)
* `LETSENCRYPT_EMAIL`: An email will be sent to this address if certificate expires and fails to renew automatically (eg. `me@example.com`)
@ -113,6 +114,7 @@ Check out this video if you're interested in learning more about setting up [BTC
* `BTCPAY_ENABLE_SSH`: Optional, gives BTCPay Server SSH access to the host by allowing it to edit authorized_keys of the host, it can be used for managing the authorized_keys or updating BTCPay Server directly through the website. (Default: false)
* `BTCPAYGEN_DOCKER_IMAGE`: Optional, Specify which generator image to use if you have customized the C# generator. Set to `btcpayserver/docker-compose-generator:local` to build the generator locally at runtime.
* `BTCPAY_IMAGE`: Optional, Specify which btcpayserver image to use if you have a customized btcpayserver.
* `BTCPAY_UPDATE_CLEAN`: Clean (prune) all old BTCPayServer images after an update. WARNING: also removes all non-BTCPayServer images! (default: true)
* `BTCPAYGEN_EXCLUDE_FRAGMENTS`: Semicolon-separated list of fragments you want to forcefully exclude (eg. `litecoin-clightning`)
* `TOR_RELAY_NICKNAME`: If tor relay is activated with opt-add-tor-relay, the relay nickname
* `TOR_RELAY_EMAIL`: If tor relay is activated with opt-add-tor-relay, the email for Tor to contact you regarding your relay
@ -122,23 +124,28 @@ Additionally, there are specific environment variables for some addons:
* `LIBREPATRON_HOST`: If libre patron is activated with [opt-add-librepatron](docker-compose-generator/docker-fragments/opt-add-librepatron.yml), the hostname of your libre patron website (eg. `librepatron.example.com`)
* `ZAMMAD_HOST`: If zammad is activated with [opt-add-zammad](docker-compose-generator/docker-fragments/opt-add-zammad.yml), the hostname of your zammad website (eg. `zammad.example.com`)
* `WOOCOMMERCE_HOST`: If woocommerce is activated with [opt-add-woocommerce](docker-compose-generator/docker-fragments/opt-add-woocommerce.yml), the hostname of your woocommerce website (eg. `store.example.com`)
* `EPS_XPUB`: If Electrum Personal Server (EPS) is activated with [opt-add-electrum-ps](docker-compose-generator/docker-fragments/opt-add-electrum-ps.yml), you must set the Extended Public Key (XPUB, YPUB or ZPUB) of the wallet you want to use, before first run of the EPS server. If you accidently start EPS without this, it will not work properly as the model of EPS is to monitor only specified wallets.
* `EPS_XPUB`: If Electrum Personal Server (EPS) is activated with [opt-add-electrum-ps](docker-compose-generator/docker-fragments/opt-add-electrum-ps.yml), you must set the Extended Public Key (XPUB, YPUB or ZPUB) of the wallet you want to use, before first run of the EPS server. If you accidentally start EPS without this, it will not work properly as the model of EPS is to monitor only specified wallets.
* If Bitcoin Wallet Tracker is activated with [opt-add-bwt](docker-compose-generator/docker-fragments/opt-add-bwt.yml), you can use `BWT_XPUB`/`BWT_XPUB_*` (to set your XPUB/YPUB/ZPUB), `BWT_DESCRIPTOR`/`BWT_DESCRIPTOR_*` (for script descriptors), `BWT_RESCAN_SINCE` (set to the wallet creation date in YYYY-MM-DD to speed up the rescan), `BWT_BITCOIND_WALLET` and `BWT_GAP_LIMIT`.
* `LND_WTCLIENT_SWEEP_FEE`: If LND watchtower is activated with [opt-lnd-wtclient](docker-compose-generator/docker-fragments/opt-lnd-wtclient.yml), you can use `LND_WTCLIENT_SWEEP_FEE` to change the sweep fee used in constructing the justice transaction (default is 10 sat/byte)
* `FIREFLY_HOST`: If fireflyiii is activated with [opt-add-fireflyiii](docker-compose-generator/docker-fragments/opt-add-fireflyiii.yml), the hostname of your fireflyiii website (eg. `firefly.example.com`)
* `CLOUDFLARE_TUNNEL_TOKEN`: Used to expose your instance to clearnet with a Cloudflare Argo Tunnel (if cloudflare tunnel is activated with [opt-add-cloudflared](docker-compose-generator/docker-fragments/opt-add-cloudflared.yml), for setup instructions [see documentation](docs/cloudflare-tunnel.md))
# Tooling
A wide variety of useful scripts are available once BTCPay is installed:
* `bitcoin-cli.sh`: Access your Bitcoin node instance (for RPC)
* `bitcoin-lightning-cli.sh`: Access your C-Lightning node instance (for RPC)
* `bitcoin-lightning-cli.sh`: Access your CLN node instance (for RPC)
* `changedomain.sh`: Change the domain of your BTCPayServer (remember to disable 2FA/U2F first, as you risk being unable to log in to your account)
* `btcpay-update.sh`: Update BTCPayServer to the latest version
* `btcpay-up.sh`: Run `docker-compose up`
* `btcpay-down.sh`: Run `docker-compose down`
* `btcpay-setup.sh`: Change the settings of your server
* `btcpay-clean.sh`: Purge any unused docker images
* `. ./btcpay-setup.sh`: Information about additional parameters
* `. ./btcpay-setup.sh -i`: Set up your BTCPayServer
* `btcpay-restart.sh`: Restart your BTCPayServer
* `switch-node.sh default|bitcoincore|bitcoinknots`: Switch your Bitcoin node implementation
# Under the hood
@ -154,8 +161,11 @@ Available `BTCPAYGEN_ADDITIONAL_FRAGMENTS` currently are:
* [opt-save-storage-s](docker-compose-generator/docker-fragments/opt-save-storage-s.yml) will keep around 6 months of blocks (prune BTC for 50 GB)
* [opt-save-storage-xs](docker-compose-generator/docker-fragments/opt-save-storage-xs.yml) will keep around 3 months of blocks (prune BTC for 25 GB)
* [opt-save-storage-xxs](docker-compose-generator/docker-fragments/opt-save-storage-xxs.yml) will keep around 2 weeks of blocks (prune BTC for 5 GB) (lightning not supported)
* [opt-lnd-autocompact](docker-compose-generator/docker-fragments/opt-lnd-autocompact.yml) will activate auto compacting of LND database.
* [opt-lnd-autopilot](docker-compose-generator/docker-fragments/opt-lnd-autopilot.yml) will activate auto pilot on LND. (5 channels, 60% of allocation)
* [opt-lnd-keysend](docker-compose-generator/docker-fragments/opt-lnd-keysend.yml) will activate keysend on LND.
* [opt-lnd-wtclient](docker-compose-generator/docker-fragments/opt-lnd-wtclient.yml) will activate the watchtower client on LND. `LND_WTCLIENT_SWEEP_FEE` can be used to override the default 10 sat/byte justice transaction fee
* [opt-lnd-watchtower](docker-compose-generator/docker-fragments/opt-lnd-watchtower.yml) will activate the LND watchtower RPC
* [opt-save-memory](docker-compose-generator/docker-fragments/opt-save-memory.yml) will decrease the default dbcache at the expense of longer synchronization time. (Useful if your machine is less than 2GB)
* [opt-more-memory](docker-compose-generator/docker-fragments/opt-more-memory.yml) will increase the default dbcache to make synchronization faster (Useful if your machine is has around 4GB)
* [opt-add-btcqbo](docker-compose-generator/docker-fragments/opt-add-btcqbo.yml) will allow you to create an invoice on Quickbooks which include a way for your customer to pay on BTCPay Server (More information on this [github repository](https://github.com/JeffVandrewJr/btcqbo/), this add-on is maintained by [JeffVandrewJr](https://github.com/JeffVandrewJr), see more on [this video](https://www.youtube.com/watch?v=srgwL9ozg6c))
@ -165,17 +175,31 @@ Available `BTCPAYGEN_ADDITIONAL_FRAGMENTS` currently are:
* [opt-add-btctransmuter](docker-compose-generator/docker-fragments/opt-add-btctransmuter.yml), for a self-hosted IFTTT style service for crypto services such as fiat settlement. (More information on this [github repository](https://github.com/btcpayserver/btcTransmuter/)
* [opt-txindex](docker-compose-generator/docker-fragments/opt-txindex.yml), to enable txindex=1 in bitcoin.conf if you require txindexing for Bisq, DOJO, etc.
* [opt-expose-unsafe](docker-compose-generator/docker-fragments/opt-expose-unsafe.yml), to unsafely expose bitcoind P2P port 8333 if you require P2P for Bisq, DOJO, Esplora, etc. WARNING: ONLY USE ON TRUSTED LAN OR WITH FIREWALL RULES WHITELISTING SPECIFIC HOSTS
* [opt-add-tor-relay](docker-compose-generator/docker-fragments/opt-add-tor-relay.yml), for a non-exit tor relay. Make sure to have ports 9001 and 9030 accessible externally. [Please read the legal implications of running a tor relay](https://community.torproject.org/relay/community-resources/eff-tor-legal-faq) and [what resources are used to operate the relay](https://trac.torproject.org/projects/tor/wiki/TorRelayGuide#RelayRequirements).
* [opt-add-electrumx](docker-compose-generator/docker-fragments/opt-add-electrumx.yml), to integrate a full ElectrumX server (from official source) with BTCPay, using the BTCPay server's full bitcoin node for complete privacy when using your own Electrum wallet. You can also open port 50002 up to the internet on your router etc, to be part of the ElectrumX network, helping other Electrum wallet users to get connected. The bitcoin option `-txindex` is mandatory for ElectrumX, and this fragment will enable it on your BTCPay server automatically - NO need to use the fragment opt-txindex.yml.
* [opt-add-electrum-ps](docker-compose-generator/docker-fragments/opt-add-electrum-ps.yml), to integrate Electrum Personal Server (EPS) with BTCPay (EPS is a single-user alternative to the ElectrumX Server option above). EPS will also use the BTCPay server's full bitcoin node for complete privacy when using your own Electrum wallet, for your own personal use (i.e. other users cannot use your server to verify transactions). Also, the bitcoin option `-txindex` is NOT mandatory for EPS, and it will run on a pruned node (unlike ElectrumX). You will need to add your XPUB/YPUB/ZPUB as environment variable `EPS_XPUB` before enabling EPS for the first time (see above section on environment variables, and see [full documentation](https://docs.btcpayserver.org/ElectrumPersonalServer/) for details).
* [opt-add-tor-relay](docker-compose-generator/docker-fragments/opt-add-tor-relay.yml), for a non-exit tor relay. Make sure to have port 9001 accessible externally. [Please read the legal implications of running a tor relay](https://community.torproject.org/relay/community-resources/eff-tor-legal-faq) and [what resources are used to operate the relay](https://trac.torproject.org/projects/tor/wiki/TorRelayGuide#RelayRequirements).
* [opt-add-electrumx](docker-compose-generator/docker-fragments/opt-add-electrumx.yml), to integrate a full ElectrumX server (from official source) with BTCPay, using the BTCPay server's full bitcoin node for complete privacy when using your own Electrum wallet. You can also open port 50002 up to the internet on your router etc, to be part of the ElectrumX network, helping other Electrum wallet users to get connected. The bitcoin option `-txindex` is mandatory for ElectrumX, and this fragment will enable it on your BTCPay server automatically - No need to use the fragment opt-txindex.yml.
* [opt-add-electrum-ps](docker-compose-generator/docker-fragments/opt-add-electrum-ps.yml), to integrate Electrum Personal Server (EPS) with BTCPay (EPS is a single-user alternative to the ElectrumX Server option above). EPS will also use the BTCPay server's full bitcoin node for complete privacy when using your own Electrum wallet, for your own personal use (i.e. other users cannot use your server to verify transactions). Also, the bitcoin option `-txindex` is NOT mandatory for EPS, and it will run on a pruned node (unlike ElectrumX). You will need to add your XPUB/YPUB/ZPUB as environment variable `EPS_XPUB` before enabling EPS for the first time (see above section on environment variables, and see [full documentation](https://docs.btcpayserver.org/ElectrumPersonalServer/) for details).
* [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-ndlc](docker-compose-generator/docker-fragments/opt-add-ndlc.yml) ([See the documentation](docs/ndlc.md))
* [opt-add-lightning-terminal](docker-compose-generator/docker-fragments/opt-add-lightning-terminal.yml) for [Lightning Terminal/LiT](https://github.com/lightninglabs/lightning-terminal). Maintained by [dennisreimann](https://github.com/dennisreimann).
* [opt-add-mempool](docker-compose-generator/docker-fragments/opt-add-mempool.yml) for [Mempool](https://github.com/mempool/mempool). Maintained by [dennisreimann](https://github.com/dennisreimann).
* [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-tallycoin-connect](docker-compose-generator/docker-fragments/opt-add-tallycoin-connect.yml) for [Tallycoin Connect](https://github.com/djbooth007/tallycoin_connect). 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).
* [opt-add-teos](docker-compose-generator/docker-fragments/opt-add-teos.yml) for [The Eye Of Satoshi](https://github.com/talaia-labs/python-teos), a BOLT13 Lightning Watchtower. Use port 9814 on your server or Tor to connect.
* [opt-add-chatwoot](docker-compose-generator/docker-fragments/opt-add-chatwoot.yml) for open source chat support system. ([See the documentation](docs/chatwoot.md))
* [opt-add-zammad](docker-compose-generator/docker-fragments/opt-add-zammad.yml) for [Zammad](https://zammad.com/features), a web based open source helpdesk/customer support system with many features to manage customer communication via several channels like telephone, facebook, twitter, chat and e-mails
* [opt-monero-expose](docker-compose-generator/docker-fragments/opt-monero-expose.yml) to expose monero node's RPC port at 127.0.0.1:18081 to connect your own wallet. Use f.e. ssh port forwarding to forward to your own computer.
* [opt-add-fireflyiii](docker-compose-generator/docker-fragments/opt-add-fireflyiii.yml) ([See the documentation](docs/fireflyiii.md))
* [opt-add-joinmarket](docker-compose-generator/docker-fragments/opt-add-joinmarket.yml) ([See the documentation](docs/joinmarket.md))
* [opt-add-helipad](docker-compose-generator/docker-fragments/opt-add-helipad.yml) for [Podcastindex.org Helipad](https://github.com/Podcastindex-org/helipad). Requires LND.
* [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-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.
* [opt-add-ltcmweb](docker-compose-generator/docker-fragments/opt-add-ltcmweb.yml) to add the support service for the Litecoin MWEB payment method plugin.
* [opt-add-shopify](docker-compose-generator/docker-fragments/opt-add-shopify.yml) to install the [Shopify App Deployer](https://github.com/btcpayserver/shopify-app). Used by the [BTCPay Server Shopify plugin](https://github.com/btcpayserver/btcpayserver-shopify-plugin).
* [opt-add-nolimits](docker-compose-generator/docker-fragments/opt-add-nolimits.yml) to remove OP_RETURN limits and min relay tx fee from your bitcoin node.
You can also create your own [custom fragments](#how-can-i-customize-the-generated-docker-compose-file).
@ -236,7 +260,8 @@ Next, you will need to configure the runtime environment variables for `Generate
`/etc/profile.d/btcpay-env.sh` ensures that your environment variables are correctly setup when you login, so you can use the tools:
```bash
export BTCPAYGEN_OLD_PREGEN="false"
#!/bin/bash
export COMPOSE_HTTP_TIMEOUT="180"
export BTCPAYGEN_CRYPTO1="btc"
export BTCPAYGEN_CRYPTO2=""
export BTCPAYGEN_CRYPTO3=""
@ -246,15 +271,20 @@ export BTCPAYGEN_CRYPTO6=""
export BTCPAYGEN_CRYPTO7=""
export BTCPAYGEN_CRYPTO8=""
export BTCPAYGEN_CRYPTO9=""
export BTCPAYGEN_LIGHTNING="clightning"
export BTCPAYGEN_LIGHTNING="lnd"
export BTCPAYGEN_REVERSEPROXY="nginx"
export BTCPAYGEN_ADDITIONAL_FRAGMENTS=""
export BTCPAY_DOCKER_COMPOSE="/var/lib/waagent/custom-script/download/0/btcpayserver-docker/Production/docker-compose.generated.yml"
export BTCPAY_BASE_DIRECTORY="/var/lib/waagent/custom-script/download/0"
export BTCPAY_ENV_FILE="/var/lib/waagent/custom-script/download/0/.env"
export BTCPAY_HOST_SSHKEYFILE="/root/.ssh/id_rsa_btcpay"
if cat $BTCPAY_ENV_FILE &> /dev/null; then
export $(grep -v '^#' "$BTCPAY_ENV_FILE" | xargs)
export BTCPAYGEN_ADDITIONAL_FRAGMENTS="opt-save-storage-s;opt-add-nolimits"
export BTCPAYGEN_EXCLUDE_FRAGMENTS=";bitcoin"
export BTCPAY_DOCKER_COMPOSE="/root/btcpayserver-docker/Generated/docker-compose.generated.yml"
export BTCPAY_BASE_DIRECTORY="/root"
export BTCPAY_ENV_FILE="/root/.env"
export BTCPAY_HOST_SSHKEYFILE=""
export BTCPAY_ENABLE_SSH=true
export PIHOLE_SERVERIP=""
if cat "$BTCPAY_ENV_FILE" &> /dev/null; then
while IFS= read -r line; do
! [[ "$line" == "#"* ]] && [[ "$line" == *"="* ]] && export "$line"
done < "$BTCPAY_ENV_FILE"
fi
```
@ -318,64 +348,78 @@ Note that BTCPayServer developers will not spend excessive time testing your ima
# Support
We are trying to update our dependencies to run on `arm32v7` and `x64` boards. Here is our progress:
| Image | Version | x64 | arm32v7 | arm64v8 | links |
|---|---|:-:|:-:|:-:|:-:|
| btcpayserver/docker-compose-generator | latest | [✔️](https://raw.githubusercontent.com/btcpayserver/btcpayserver-docker/dcg-latest/docker-compose-generator/linuxamd64.Dockerfile) | [✔️](https://raw.githubusercontent.com/btcpayserver/btcpayserver-docker/dcg-latest/docker-compose-generator/linuxarm32v7.Dockerfile) | [✔️](https://raw.githubusercontent.com/btcpayserver/btcpayserver-docker/dcg-latest/docker-compose-generator/linuxarm64v8.Dockerfile) | [Github](https://github.com/btcpayserver/btcpayserver-docker) - [DockerHub](https://hub.docker.com/r/btcpayserver/docker-compose-generator) |
| btcpayserver/docker-compose | 1.28.5 | [✔️](https://raw.githubusercontent.com/btcpayserver/dockerfile-deps/docker-compose/1.28.5/docker-compose/1.28.5/linuxamd64.Dockerfile) | [✔️](https://raw.githubusercontent.com/btcpayserver/dockerfile-deps/docker-compose/1.28.5/docker-compose/1.28.5/linuxarm32v7.Dockerfile) | [✔️](https://raw.githubusercontent.com/btcpayserver/dockerfile-deps/docker-compose/1.28.5/docker-compose/1.28.5/linuxarm64v8.Dockerfile) | [Github](https://github.com/btcpayserver/dockerfile-deps) - [DockerHub](https://hub.docker.com/r/btcpayserver/docker-compose) |
| btcpayserver/bitcoin | 0.21.0 | [✔️](https://raw.githubusercontent.com/btcpayserver/dockerfile-deps/Bitcoin/0.21.0/Bitcoin/0.21.0/linuxamd64.Dockerfile) | [✔️](https://raw.githubusercontent.com/btcpayserver/dockerfile-deps/Bitcoin/0.21.0/Bitcoin/0.21.0/linuxarm32v7.Dockerfile) | [✔️](https://raw.githubusercontent.com/btcpayserver/dockerfile-deps/Bitcoin/0.21.0/Bitcoin/0.21.0/linuxarm64v8.Dockerfile) | [Github](https://github.com/btcpayserver/dockerfile-deps) - [DockerHub](https://hub.docker.com/r/btcpayserver/bitcoin) |
| btcpayserver/lightning | v0.9.3-1 | [✔️](https://raw.githubusercontent.com/btcpayserver/lightning/basedon-v0.9.3-1/Dockerfile) | [✔️](https://raw.githubusercontent.com/btcpayserver/lightning/basedon-v0.9.3-1/contrib/linuxarm32v7.Dockerfile) | [✔️](https://raw.githubusercontent.com/btcpayserver/lightning/basedon-v0.9.3-1/contrib/linuxarm64v8.Dockerfile) | [Github](https://github.com/btcpayserver/lightning) - [DockerHub](https://hub.docker.com/r/btcpayserver/lightning) |
| shesek/lightning-charge | 0.4.19-standalone | [✔️](https://raw.githubusercontent.com/ElementsProject/lightning-charge/v0.4.19/Dockerfile) | [✔️](https://raw.githubusercontent.com/ElementsProject/lightning-charge/v0.4.19/arm32v7.Dockerfile) | [✔️](https://raw.githubusercontent.com/ElementsProject/lightning-charge/v0.4.19/arm64v8.Dockerfile) | [Github](https://github.com/ElementsProject/lightning-charge) - [DockerHub](https://hub.docker.com/r/shesek/lightning-charge) |
| shesek/spark-wallet | 0.2.9-standalone | [✔️](https://raw.githubusercontent.com/shesek/spark-wallet/v0.2.9/Dockerfile) | [✔️](https://raw.githubusercontent.com/shesek/spark-wallet/v0.2.9/arm32v7.Dockerfile) | [✔️](https://raw.githubusercontent.com/shesek/spark-wallet/v0.2.9/arm64v8.Dockerfile) | [Github](https://github.com/shesek/spark-wallet) - [DockerHub](https://hub.docker.com/r/shesek/spark-wallet) |
| saubyk/c-lightning-rest | 0.4.3 | [✔️](https://raw.githubusercontent.com/Ride-The-Lightning/c-lightning-REST/v0.4.3/amd64.Dockerfile) | [✔️](https://raw.githubusercontent.com/Ride-The-Lightning/c-lightning-REST/v0.4.3/arm32v7.Dockerfile) | [✔️](https://raw.githubusercontent.com/Ride-The-Lightning/c-lightning-REST/v0.4.3/arm64v8.Dockerfile) | [Github](https://github.com/Ride-The-Lightning/c-lightning-REST) - [DockerHub](https://hub.docker.com/r/saubyk/c-lightning-rest) |
| shahanafarooqui/rtl | 0.10.0 | [✔️](https://raw.githubusercontent.com/ShahanaFarooqui/RTL/v0.10.0/Dockerfile) | [✔️](https://raw.githubusercontent.com/ShahanaFarooqui/RTL/v0.10.0/Dockerfile.arm32v7) | [✔️](https://raw.githubusercontent.com/ShahanaFarooqui/RTL/v0.10.0/Dockerfile.arm64v8) | [Github](https://github.com/ShahanaFarooqui/RTL) - [DockerHub](https://hub.docker.com/r/shahanafarooqui/rtl) |
| btcpayserver/lnd | v0.11.0-beta | [✔️](https://raw.githubusercontent.com/btcpayserver/lnd/basedon-v0.11.0-beta/linuxamd64.Dockerfile) | [✔️](https://raw.githubusercontent.com/btcpayserver/lnd/basedon-v0.11.0-beta/linuxarm32v7.Dockerfile) | [✔️](https://raw.githubusercontent.com/btcpayserver/lnd/basedon-v0.11.0-beta/linuxarm64v8.Dockerfile) | [Github](https://github.com/btcpayserver/lnd) - [DockerHub](https://hub.docker.com/r/btcpayserver/lnd) |
| btcpayserver/btcpayserver | 1.0.7.0$<BTCPAY_BUILD_CONFIGURATION>? | [✔️](https://raw.githubusercontent.com/btcpayserver/btcpayserver/v1.0.7.0/amd64.Dockerfile) | [✔️](https://raw.githubusercontent.com/btcpayserver/btcpayserver/v1.0.7.0/arm32v7.Dockerfile) | [✔️](https://raw.githubusercontent.com/btcpayserver/btcpayserver/v1.0.7.0/arm64v8.Dockerfile) | [Github](https://github.com/btcpayserver/btcpayserver) - [DockerHub](https://hub.docker.com/r/btcpayserver/btcpayserver) |
| nicolasdorier/nbxplorer | 2.1.49 | [✔️](https://raw.githubusercontent.com/dgarage/nbxplorer/v2.1.49/Dockerfile.linuxamd64) | [✔️](https://raw.githubusercontent.com/dgarage/nbxplorer/v2.1.49/Dockerfile.linuxarm32v7) | [✔️](https://raw.githubusercontent.com/dgarage/nbxplorer/v2.1.49/Dockerfile.linuxarm64v8) | [Github](https://github.com/dgarage/nbxplorer) - [DockerHub](https://hub.docker.com/r/nicolasdorier/nbxplorer) |
| nginx | 1.16.0 | [✔️](https://raw.githubusercontent.com/nginxinc/docker-nginx/1.16.0/stable/stretch/Dockerfile) | [✔️](https://raw.githubusercontent.com/nginxinc/docker-nginx/1.16.0/stable/stretch/Dockerfile) | [✔️](https://raw.githubusercontent.com/nginxinc/docker-nginx/1.16.0/stable/stretch/Dockerfile) | [Github](https://github.com/nginxinc/docker-nginx) - [DockerHub](https://hub.docker.com/_/nginx) |
| btcpayserver/docker-gen | 0.7.8 | [✔️](https://raw.githubusercontent.com/btcpayserver/docker-gen/v0.7.8/linuxamd64.Dockerfile) | [✔️](https://raw.githubusercontent.com/btcpayserver/docker-gen/v0.7.8/linuxarm32v7.Dockerfile) | [✔️](https://raw.githubusercontent.com/btcpayserver/docker-gen/v0.7.8/linuxarm64v8.Dockerfile) | [Github](https://github.com/btcpayserver/docker-gen) - [DockerHub](https://hub.docker.com/r/btcpayserver/docker-gen) |
| 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.55 | [✔️](https://raw.githubusercontent.com/btcpayserver/btctransmuter/v0.0.55/Dockerfiles/amd64.Dockerfile) | [✔️](https://raw.githubusercontent.com/btcpayserver/btctransmuter/v0.0.55/Dockerfiles/arm32v7.Dockerfile) | [✔️](https://raw.githubusercontent.com/btcpayserver/btctransmuter/v0.0.55/Dockerfiles/arm64v8.Dockerfile) | [Github](https://github.com/btcpayserver/btctransmuter) - [DockerHub](https://hub.docker.com/r/btcpayserver/btctransmuter) |
| btcpayserver/docker-compose-generator | latest | [✔️](https://raw.githubusercontent.com/btcpayserver/btcpayserver-docker/dcg-latest/docker-compose-generator/Dockerfile) | [✔️](https://raw.githubusercontent.com/btcpayserver/btcpayserver-docker/dcg-latest/docker-compose-generator/Dockerfile) | [✔️](https://raw.githubusercontent.com/btcpayserver/btcpayserver-docker/dcg-latest/docker-compose-generator/Dockerfile) | [Github](https://github.com/btcpayserver/btcpayserver-docker) - [DockerHub](https://hub.docker.com/r/btcpayserver/docker-compose-generator) |
| btcpayserver/lightning | v26.06.1 | [✔️](https://raw.githubusercontent.com/btcpayserver/lightning/basedon-v26.06.1/Dockerfile) | [✔️](https://raw.githubusercontent.com/btcpayserver/lightning/basedon-v26.06.1/Dockerfile) | [✔️](https://raw.githubusercontent.com/btcpayserver/lightning/basedon-v26.06.1/Dockerfile) | [Github](https://github.com/btcpayserver/lightning) - [DockerHub](https://hub.docker.com/r/btcpayserver/lightning) |
| shahanafarooqui/rtl | v0.15.4 | [✔️](https://raw.githubusercontent.com/Ride-The-Lightning/RTL/v0.15.4/Dockerfile) | [✔️](https://raw.githubusercontent.com/Ride-The-Lightning/RTL/v0.15.4/Dockerfile) | [✔️](https://raw.githubusercontent.com/Ride-The-Lightning/RTL/v0.15.4/Dockerfile) | [Github](https://github.com/Ride-The-Lightning/RTL) - [DockerHub](https://hub.docker.com/r/shahanafarooqui/rtl) |
| btcpayserver/lnd | v0.19.3-beta-1 | [✔️](https://raw.githubusercontent.com/btcpayserver/lnd/basedon-v0.19.3-beta-1/linuxamd64.Dockerfile) | [✔️](https://raw.githubusercontent.com/btcpayserver/lnd/basedon-v0.19.3-beta-1/linuxarm32v7.Dockerfile) | [✔️](https://raw.githubusercontent.com/btcpayserver/lnd/basedon-v0.19.3-beta-1/linuxarm64v8.Dockerfile) | [Github](https://github.com/btcpayserver/lnd) - [DockerHub](https://hub.docker.com/r/btcpayserver/lnd) |
| btcpayserver/bitcoin | 29.2 | [✔️](https://raw.githubusercontent.com/btcpayserver/dockerfile-deps/Bitcoin/29.2/Bitcoin/29.2/linuxamd64.Dockerfile) | [✔️](https://raw.githubusercontent.com/btcpayserver/dockerfile-deps/Bitcoin/29.2/Bitcoin/29.2/linuxarm32v7.Dockerfile) | [✔️](https://raw.githubusercontent.com/btcpayserver/dockerfile-deps/Bitcoin/29.2/Bitcoin/29.2/linuxarm64v8.Dockerfile) | [Github](https://github.com/btcpayserver/dockerfile-deps) - [DockerHub](https://hub.docker.com/r/btcpayserver/bitcoin) |
| btcpayserver/bitcoinknots | 29.3.knots20260508 | [✔️](https://raw.githubusercontent.com/btcpayserver/dockerfile-deps/BitcoinKnots/29.3.knots20260508/BitcoinKnots/29.3.knots20260508/linuxamd64.Dockerfile) | [✔️](https://raw.githubusercontent.com/btcpayserver/dockerfile-deps/BitcoinKnots/29.3.knots20260508/BitcoinKnots/29.3.knots20260508/linuxarm32v7.Dockerfile) | [✔️](https://raw.githubusercontent.com/btcpayserver/dockerfile-deps/BitcoinKnots/29.3.knots20260508/BitcoinKnots/29.3.knots20260508/linuxarm64v8.Dockerfile) | [Github](https://github.com/btcpayserver/dockerfile-deps) - [DockerHub](https://hub.docker.com/r/btcpayserver/bitcoinknots) |
| btcpayserver/btcpayserver | 2.4.0 | [✔️](https://raw.githubusercontent.com/btcpayserver/btcpayserver/v2.4.0/Dockerfile) | [✔️](https://raw.githubusercontent.com/btcpayserver/btcpayserver/v2.4.0/Dockerfile) | [✔️](https://raw.githubusercontent.com/btcpayserver/btcpayserver/v2.4.0/Dockerfile) | [Github](https://github.com/btcpayserver/btcpayserver) - [DockerHub](https://hub.docker.com/r/btcpayserver/btcpayserver) |
| btcpayserver/monero | 0.18.4.3 | [✔️](https://raw.githubusercontent.com/btcpayserver/dockerfile-deps/Monero/0.18.4.3/Monero/0.18.4.3/Dockerfile) | [✔️](https://raw.githubusercontent.com/btcpayserver/dockerfile-deps/Monero/0.18.4.3/Monero/0.18.4.3/Dockerfile) | [✔️](https://raw.githubusercontent.com/btcpayserver/dockerfile-deps/Monero/0.18.4.3/Monero/0.18.4.3/Dockerfile) | [Github](https://github.com/btcpayserver/dockerfile-deps) - [DockerHub](https://hub.docker.com/r/btcpayserver/monero) |
| nicolasdorier/nbxplorer | 2.6.8 | [✔️](https://raw.githubusercontent.com/dgarage/nbxplorer/v2.6.8/Dockerfile) | [✔️](https://raw.githubusercontent.com/dgarage/nbxplorer/v2.6.8/Dockerfile) | [✔️](https://raw.githubusercontent.com/dgarage/nbxplorer/v2.6.8/Dockerfile) | [Github](https://github.com/dgarage/nbxplorer) - [DockerHub](https://hub.docker.com/r/nicolasdorier/nbxplorer) |
| btcpayserver/letsencrypt-nginx-proxy-companion | 2.2.9-2 | [✔️](https://raw.githubusercontent.com/btcpayserver/docker-letsencrypt-nginx-proxy-companion/v2.2.9-2/Dockerfile) | [✔️](https://raw.githubusercontent.com/btcpayserver/docker-letsencrypt-nginx-proxy-companion/v2.2.9-2/Dockerfile) | [✔️](https://raw.githubusercontent.com/btcpayserver/docker-letsencrypt-nginx-proxy-companion/v2.2.9-2/Dockerfile) | [Github](https://github.com/btcpayserver/docker-letsencrypt-nginx-proxy-companion) - [DockerHub](https://hub.docker.com/r/btcpayserver/letsencrypt-nginx-proxy-companion) |
| nginx | 1.25.3-bookworm | [✔️](https://raw.githubusercontent.com/nginxinc/docker-nginx/1.23.2/stable/debian/Dockerfile) | [✔️](https://raw.githubusercontent.com/nginxinc/docker-nginx/1.23.2/stable/debian/Dockerfile) | [✔️](https://raw.githubusercontent.com/nginxinc/docker-nginx/1.23.2/stable/debian/Dockerfile) | [Github](https://github.com/nginxinc/docker-nginx) - [DockerHub](https://hub.docker.com/_/nginx) |
| btcpayserver/docker-gen | 0.10.7 | [✔️](https://raw.githubusercontent.com/btcpayserver/docker-gen/0.10.7/Dockerfile.alpine) | [✔️](https://raw.githubusercontent.com/btcpayserver/docker-gen/0.10.7/Dockerfile.alpine) | [✔️](https://raw.githubusercontent.com/btcpayserver/docker-gen/0.10.7/Dockerfile.alpine) | [Github](https://github.com/btcpayserver/docker-gen) - [DockerHub](https://hub.docker.com/r/btcpayserver/docker-gen) |
| btcpayserver/btctransmuter | 0.0.59 | [✔️](https://raw.githubusercontent.com/btcpayserver/btctransmuter/v0.0.59/Dockerfiles/amd64.Dockerfile) | [✔️](https://raw.githubusercontent.com/btcpayserver/btctransmuter/v0.0.59/Dockerfiles/arm32v7.Dockerfile) | [✔️](https://raw.githubusercontent.com/btcpayserver/btctransmuter/v0.0.59/Dockerfiles/arm64v8.Dockerfile) | [Github](https://github.com/btcpayserver/btctransmuter) - [DockerHub](https://hub.docker.com/r/btcpayserver/btctransmuter) |
| btcpayserver/cloudflared | 2024.8.2-4 | [✔️](https://raw.githubusercontent.com/btcpayserver/dockerfile-deps/Cloudflared/2024.8.2-4/Cloudflared/2024.8.2/Dockerfile) | [✔️](https://raw.githubusercontent.com/btcpayserver/dockerfile-deps/Cloudflared/2024.8.2-4/Cloudflared/2024.8.2/Dockerfile) | [✔️](https://raw.githubusercontent.com/btcpayserver/dockerfile-deps/Cloudflared/2024.8.2-4/Cloudflared/2024.8.2/Dockerfile) | [Github](https://github.com/btcpayserver/dockerfile-deps) - [DockerHub](https://hub.docker.com/r/btcpayserver/cloudflared) |
| btcpayserver/btcpayserver-configurator | 0.0.21 | [✔️](https://raw.githubusercontent.com/btcpayserver/btcpayserver-configurator/v0.0.21/Dockerfiles/amd64.Dockerfile) | [✔️](https://raw.githubusercontent.com/btcpayserver/btcpayserver-configurator/v0.0.21/Dockerfiles/arm32v7.Dockerfile) | [✔️](https://raw.githubusercontent.com/btcpayserver/btcpayserver-configurator/v0.0.21/Dockerfiles/arm64v8.Dockerfile) | [Github](https://github.com/btcpayserver/btcpayserver-configurator) - [DockerHub](https://hub.docker.com/r/btcpayserver/btcpayserver-configurator) |
| btcpayserver/eps | 0.2.1.1 | [✔️](https://raw.githubusercontent.com/btcpayserver/dockerfile-deps/EPS/0.2.1.1/EPS/0.2.1.1/linuxamd64.Dockerfile) | [✔️](https://raw.githubusercontent.com/btcpayserver/dockerfile-deps/EPS/0.2.1.1/EPS/0.2.1.1/linuxarm32v7.Dockerfile) | [✔️](https://raw.githubusercontent.com/btcpayserver/dockerfile-deps/EPS/0.2.1.1/EPS/0.2.1.1/linuxarm64v8.Dockerfile) | [Github](https://github.com/btcpayserver/dockerfile-deps) - [DockerHub](https://hub.docker.com/r/btcpayserver/eps) |
| btcpayserver/eps | 0.2.2 | [✔️](https://raw.githubusercontent.com/btcpayserver/dockerfile-deps/EPS/0.2.2/EPS/0.2.2/linuxamd64.Dockerfile) | [✔️](https://raw.githubusercontent.com/btcpayserver/dockerfile-deps/EPS/0.2.2/EPS/0.2.2/linuxarm32v7.Dockerfile) | [✔️](https://raw.githubusercontent.com/btcpayserver/dockerfile-deps/EPS/0.2.2/EPS/0.2.2/linuxarm64v8.Dockerfile) | [Github](https://github.com/btcpayserver/dockerfile-deps) - [DockerHub](https://hub.docker.com/r/btcpayserver/eps) |
| btcpayserver/joinmarket | 0.9.10 | [✔️](https://raw.githubusercontent.com/btcpayserver/dockerfile-deps/JoinMarket/0.9.10/JoinMarket/0.9.10/linuxamd64.Dockerfile) | [✔️](https://raw.githubusercontent.com/btcpayserver/dockerfile-deps/JoinMarket/0.9.10/JoinMarket/0.9.10/linuxarm32v7.Dockerfile) | [✔️](https://raw.githubusercontent.com/btcpayserver/dockerfile-deps/JoinMarket/0.9.10/JoinMarket/0.9.10/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 | v5.7 | [✔️](https://raw.githubusercontent.com/pi-hole/docker-pi-hole/v5.7/Dockerfile) | [✔️](https://raw.githubusercontent.com/pi-hole/docker-pi-hole/v5.7/Dockerfile) | [✔️](https://raw.githubusercontent.com/pi-hole/docker-pi-hole/v5.7/Dockerfile) | [Github](https://github.com/pi-hole/docker-pi-hole) - [DockerHub](https://hub.docker.com/r/pihole/pihole) |
| btcpayserver/tor | 0.4.4.7 | [✔️](https://raw.githubusercontent.com/btcpayserver/dockerfile-deps/Tor/0.4.4.7/Tor/0.4.4.7/linuxamd64.Dockerfile) | [✔️](https://raw.githubusercontent.com/btcpayserver/dockerfile-deps/Tor/0.4.4.7/Tor/0.4.4.7/linuxarm32v7.Dockerfile) | [✔️](https://raw.githubusercontent.com/btcpayserver/dockerfile-deps/Tor/0.4.4.7/Tor/0.4.4.7/linuxarm64v8.Dockerfile) | [Github](https://github.com/btcpayserver/dockerfile-deps) - [DockerHub](https://hub.docker.com/r/btcpayserver/tor) |
| postgres | 9.6.20 | [✔️](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) |
| pihole/pihole | 2025.03.0 | [✔️](https://raw.githubusercontent.com/pi-hole/docker-pi-hole/2025.03.0/src/Dockerfile) | [✔️](https://raw.githubusercontent.com/pi-hole/docker-pi-hole/2025.03.0/src/Dockerfile) | [✔️](https://raw.githubusercontent.com/pi-hole/docker-pi-hole/2025.03.0/src/Dockerfile) | [Github](https://github.com/pi-hole/docker-pi-hole) - [DockerHub](https://hub.docker.com/r/pihole/pihole) |
| btcpayserver/shopify-app-deployer | 1.8 | [✔️](https://raw.githubusercontent.com/btcpayserver/shopify-app/1.8/Dockerfile) | [✔️](https://raw.githubusercontent.com/btcpayserver/shopify-app/1.8/Dockerfile) | [✔️](https://raw.githubusercontent.com/btcpayserver/shopify-app/1.8/Dockerfile) | [Github](https://github.com/btcpayserver/shopify-app) - [DockerHub](https://hub.docker.com/r/btcpayserver/shopify-app-deployer) |
| btcpayserver/snapdrop | 1.2 | [✔️](https://raw.githubusercontent.com/btcpayserver/dockerfile-deps/Snapdrop/1.2/Snapdrop/1.2/Dockerfile) | [✔️](https://raw.githubusercontent.com/btcpayserver/dockerfile-deps/Snapdrop/1.2/Snapdrop/1.2/Dockerfile) | [✔️](https://raw.githubusercontent.com/btcpayserver/dockerfile-deps/Snapdrop/1.2/Snapdrop/1.2/Dockerfile) | [Github](https://github.com/btcpayserver/dockerfile-deps) - [DockerHub](https://hub.docker.com/r/btcpayserver/snapdrop) |
| btcpayserver/tor | 0.4.9.10 | [✔️](https://raw.githubusercontent.com/btcpayserver/dockerfile-deps/Tor/0.4.9.10/Tor/0.4.9.10/linuxamd64.Dockerfile) | [✔️](https://raw.githubusercontent.com/btcpayserver/dockerfile-deps/Tor/0.4.9.10/Tor/0.4.9.10/linuxarm32v7.Dockerfile) | [✔️](https://raw.githubusercontent.com/btcpayserver/dockerfile-deps/Tor/0.4.9.10/Tor/0.4.9.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 | 18.1-1 | [✔️](https://raw.githubusercontent.com/btcpayserver/dockerfile-deps/Postgres/18.1-1/Postgres/18.1/linuxamd64.Dockerfile) | [✔️](https://raw.githubusercontent.com/btcpayserver/dockerfile-deps/Postgres/18.1-1/Postgres/18.1/linuxarm32v7.Dockerfile) | [✔️](https://raw.githubusercontent.com/btcpayserver/dockerfile-deps/Postgres/18.1-1/Postgres/18.1/linuxarm64v8.Dockerfile) | [Github](https://github.com/btcpayserver/dockerfile-deps) - [DockerHub](https://hub.docker.com/r/btcpayserver/postgres) |
| kamigawabul/btglnd | latest | [✔️](https://raw.githubusercontent.com/vutov/lnd/master/Dockerfile) | ️❌ | ️❌ | [Github](https://github.com/vutov/lnd) - [DockerHub](https://hub.docker.com/r/kamigawabul/btglnd) |
| acinq/eclair | release-0.4.1 | [✔️](https://raw.githubusercontent.com/ACINQ/eclair/v0.4.1/Dockerfile) | ️❌ | ️❌ | [Github](https://github.com/ACINQ/eclair) - [DockerHub](https://hub.docker.com/r/acinq/eclair) |
| 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) |
| acinq/eclair | release-0.7.0 | [✔️](https://raw.githubusercontent.com/ACINQ/eclair/v0.7.0/Dockerfile) | ️❌ | ️❌ | [Github](https://github.com/ACINQ/eclair) - [DockerHub](https://hub.docker.com/r/acinq/eclair) |
| chekaz/docker-bitcoinplus | 2.7.0 | [✔️](https://raw.githubusercontent.com/ChekaZ/docker/master/bitcoinplus/2.7.0/Dockerfile) | ️❌ | ️❌ | [Github](https://github.com/ChekaZ/docker) - [DockerHub](https://hub.docker.com/r/chekaz/docker-bitcoinplus) |
| dalijolijo/docker-bitcore | 0.90.9.1 | [✔️](https://raw.githubusercontent.com/dalijolijo/btcpayserver-docker-bitcore/master/docker-bitcored/Dockerfile) | ️❌ | ️❌ | [Github](https://github.com/dalijolijo/btcpayserver-docker-bitcore) - [DockerHub](https://hub.docker.com/r/dalijolijo/docker-bitcore) |
| btcpayserver/dash | 0.16.1.1 | [✔️](https://raw.githubusercontent.com/btcpayserver/dockerfile-deps/Dash/0.16.1.1/Dash/0.16.1.1/linuxamd64.Dockerfile) | [✔️](https://raw.githubusercontent.com/btcpayserver/dockerfile-deps/Dash/0.16.1.1/Dash/0.16.1.1/linuxarm32v7.Dockerfile) | [✔️](https://raw.githubusercontent.com/btcpayserver/dockerfile-deps/Dash/0.16.1.1/Dash/0.16.1.1/linuxarm64v8.Dockerfile) | [Github](https://github.com/btcpayserver/dockerfile-deps) - [DockerHub](https://hub.docker.com/r/btcpayserver/dash) |
| btcpayserver/dogecoin | 1.14.2 | [✔️](https://raw.githubusercontent.com/btcpayserver/dockerfile-deps/Dogecoin/1.14.2/Dogecoin/1.14.2/linuxamd64.Dockerfile) | ️❌ | ️❌ | [Github](https://github.com/btcpayserver/dockerfile-deps) - [DockerHub](https://hub.docker.com/r/btcpayserver/dogecoin) |
| dalijolijo/docker-bitcore | 0.90.9.10 | [✔️](https://raw.githubusercontent.com/dalijolijo/btcpayserver-docker-bitcore/master/docker-bitcored/Dockerfile) | ️❌ | ️❌ | [Github](https://github.com/dalijolijo/btcpayserver-docker-bitcore) - [DockerHub](https://hub.docker.com/r/dalijolijo/docker-bitcore) |
| btcpayserver/dash | 23.1.2 | [✔️](https://raw.githubusercontent.com/btcpayserver/dockerfile-deps/Dash/23.1.2/Dash/23.1.2/linuxamd64.Dockerfile) | ️❌ | [✔️](https://raw.githubusercontent.com/btcpayserver/dockerfile-deps/Dash/23.1.2/Dash/23.1.2/linuxarm64v8.Dockerfile) | [Github](https://github.com/btcpayserver/dockerfile-deps) - [DockerHub](https://hub.docker.com/r/btcpayserver/dash) |
| ghcr.io/bisoncraft/decred | 2.1.5 | [✔️](https://raw.githubusercontent.com/bisoncraft/btcpayserver-decred-plugin/v2.1.5/Dockerfile.decred) | ️❌ | ️❌ | [Github](https://github.com/bisoncraft/btcpayserver-decred-plugin) - [DockerHub](https://hub.docker.com/r/ghcr.io/bisoncraft/decred) |
| btcpayserver/dogecoin | 1.14.7 | [✔️](https://raw.githubusercontent.com/btcpayserver/dockerfile-deps/Dogecoin/1.14.7/Dogecoin/1.14.7/linuxamd64.Dockerfile) | ️❌ | ️❌ | [Github](https://github.com/btcpayserver/dockerfile-deps) - [DockerHub](https://hub.docker.com/r/btcpayserver/dogecoin) |
| chekaz/docker-feathercoin | 0.16.3 | [✔️](https://raw.githubusercontent.com/ChekaZ/docker/master/feathercoin/0.16.3/Dockerfile) | ️❌ | ️❌ | [Github](https://github.com/ChekaZ/docker) - [DockerHub](https://hub.docker.com/r/chekaz/docker-feathercoin) |
| groestlcoin/docker-groestlcoin | 2.21.0 | [✔️](https://raw.githubusercontent.com/Groestlcoin/docker-groestlcoin/master/groestlcoin/2.21.0/Dockerfile) | ️❌ | ️❌ | [Github](https://github.com/Groestlcoin/docker-groestlcoin) - [DockerHub](https://hub.docker.com/r/groestlcoin/docker-groestlcoin) |
| groestlcoin/lightning | v0.9.2 | [✔️](https://raw.githubusercontent.com/Groestlcoin/lightning/v0.9.2/Dockerfile) | ️❌ | ️❌ | [Github](https://github.com/Groestlcoin/lightning) - [DockerHub](https://hub.docker.com/r/groestlcoin/lightning) |
| groestlcoin/lightning | v24.08 | [✔️](https://raw.githubusercontent.com/Groestlcoin/lightning/v24.08/Dockerfile) | ️❌ | ️❌ | [Github](https://github.com/Groestlcoin/lightning) - [DockerHub](https://hub.docker.com/r/groestlcoin/lightning) |
| groestlcoin/groestlcoin-lightning-charge | version-0.4.22 | [✔️](https://raw.githubusercontent.com/Groestlcoin/groestlcoin-lightning-charge/v0.4.22/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.16 | [✔️](https://raw.githubusercontent.com/Groestlcoin/groestlcoin-spark/v0.2.16/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/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/elements | 0.18.1.7 | [✔️](https://raw.githubusercontent.com/btcpayserver/dockerfile-deps/Elements/0.18.1.7/Elements/0.18.1.7/linuxamd64.Dockerfile) | [✔️](https://raw.githubusercontent.com/btcpayserver/dockerfile-deps/Elements/0.18.1.7/Elements/0.18.1.7/linuxarm32v7.Dockerfile) | [✔️](https://raw.githubusercontent.com/btcpayserver/dockerfile-deps/Elements/0.18.1.7/Elements/0.18.1.7/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) |
| 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.1.8 | [✔️](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) |
| 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 | 23.2.3 | [✔️](https://raw.githubusercontent.com/btcpayserver/dockerfile-deps/Elements/23.2.3/Elements/23.2.3/linuxamd64.Dockerfile) | [✔️](https://raw.githubusercontent.com/btcpayserver/dockerfile-deps/Elements/23.2.3/Elements/23.2.3/linuxarm32v7.Dockerfile) | [✔️](https://raw.githubusercontent.com/btcpayserver/dockerfile-deps/Elements/23.2.3/Elements/23.2.3/linuxarm64v8.Dockerfile) | [Github](https://github.com/btcpayserver/dockerfile-deps) - [DockerHub](https://hub.docker.com/r/btcpayserver/elements) |
| btcpayserver/litecoin | 0.21.5.5 | [✔️](https://raw.githubusercontent.com/btcpayserver/dockerfile-deps/Litecoin/0.21.5.5/Litecoin/0.21.5.5/linuxamd64.Dockerfile) | [✔️](https://raw.githubusercontent.com/btcpayserver/dockerfile-deps/Litecoin/0.21.5.5/Litecoin/0.21.5.5/linuxarm32v7.Dockerfile) | [✔️](https://raw.githubusercontent.com/btcpayserver/dockerfile-deps/Litecoin/0.21.5.5/Litecoin/0.21.5.5/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) |
| 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) |
| chatwoot/chatwoot | v1.7.0 | [✔️](https://raw.githubusercontent.com/chatwoot/chatwoot/v1.7.0/docker/Dockerfile) | [✔️](https://raw.githubusercontent.com/chatwoot/chatwoot/v1.7.0/docker/Dockerfile) | [✔️](https://raw.githubusercontent.com/chatwoot/chatwoot/v1.7.0/docker/Dockerfile) | [Github](https://github.com/chatwoot/chatwoot) - [DockerHub](https://hub.docker.com/r/chatwoot/chatwoot) |
| 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) |
| fireflyiii/core | latest | [✔️](https://dev.azure.com/Firefly-III/66fb773b-063e-42d7-b6a5-e7729a22e8b3/_apis/git/repositories/e9c3dcf8-4533-4ef1-83cc-75527cab3377/items?path=%2FDockerfile&versionDescriptor%5BversionOptions%5D=0&versionDescriptor%5BversionType%5D=0&versionDescriptor%5Bversion%5D=main&resolveLfs=true&%24format=octetStream&api-version=5.0&download=true) | [✔️](https://dev.azure.com/Firefly-III/66fb773b-063e-42d7-b6a5-e7729a22e8b3/_apis/git/repositories/e9c3dcf8-4533-4ef1-83cc-75527cab3377/items?path=%2FDockerfile&versionDescriptor%5BversionOptions%5D=0&versionDescriptor%5BversionType%5D=0&versionDescriptor%5Bversion%5D=main&resolveLfs=true&%24format=octetStream&api-version=5.0&download=true) | [✔️](https://dev.azure.com/Firefly-III/66fb773b-063e-42d7-b6a5-e7729a22e8b3/_apis/git/repositories/e9c3dcf8-4533-4ef1-83cc-75527cab3377/items?path=%2FDockerfile&versionDescriptor%5BversionOptions%5D=0&versionDescriptor%5BversionType%5D=0&versionDescriptor%5Bversion%5D=main&resolveLfs=true&%24format=octetStream&api-version=5.0&download=true) | [Github](https://dev.azure.com/Firefly-III/_git/MainImage) - [DockerHub](https://hub.docker.com/r/fireflyiii/core) |
| podcastindexorg/podcasting20-helipad | v0.1.10 | [✔️](https://raw.githubusercontent.com/Podcastindex-org/helipad/v0.1.10/umbrel/Dockerfile) | [✔️](https://raw.githubusercontent.com/Podcastindex-org/helipad/v0.1.10/umbrel/Dockerfile) | [✔️](https://raw.githubusercontent.com/Podcastindex-org/helipad/v0.1.10/umbrel/Dockerfile) | [Github](https://github.com/Podcastindex-org/helipad) - [DockerHub](https://hub.docker.com/r/podcastindexorg/podcasting20-helipad) |
| 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) |
| 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.5 | [✔️](https://raw.githubusercontent.com/apotdevin/thunderhub/v0.12.5/Dockerfile) | [✔️](https://raw.githubusercontent.com/apotdevin/thunderhub/v0.12.5/arm32v7.Dockerfile) | [✔️](https://raw.githubusercontent.com/apotdevin/thunderhub/v0.12.5/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) |
| memcached | 1.5.22-alpine | [✔️](https://raw.githubusercontent.com/docker-library/memcached/master/alpine/Dockerfile) | ️❌ | ️❌ | [Github](https://github.com/docker-library/memcached) - [DockerHub](https://hub.docker.com/_/memcached) |
| 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) |
| lightninglabs/lightning-terminal | v0.14.1-alpha-path-prefix | [✔️](https://raw.githubusercontent.com/lightninglabs/lightning-terminal/v0.14.1-alpha/Dockerfile) | ️❌ | [✔️](https://raw.githubusercontent.com/lightninglabs/lightning-terminal/v0.14.1-alpha/Dockerfile) | [Github](https://github.com/lightninglabs/lightning-terminal) - [DockerHub](https://hub.docker.com/r/lightninglabs/lightning-terminal) |
| hectorchu1/mwebd | latest | [✔️](https://raw.githubusercontent.com/ltcmweb/btcpayserver-ltcmweb-plugin/main/Dockerfile) | [✔️](https://raw.githubusercontent.com/ltcmweb/btcpayserver-ltcmweb-plugin/main/Dockerfile) | [✔️](https://raw.githubusercontent.com/ltcmweb/btcpayserver-ltcmweb-plugin/main/Dockerfile) | [Github](https://github.com/ltcmweb/btcpayserver-ltcmweb-plugin) - [DockerHub](https://hub.docker.com/r/hectorchu1/mwebd) |
| 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.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) |
| benjaminchodroff/rust-teos | latest | [✔️](https://raw.githubusercontent.com/benjaminchodroff/rust-teos/master/docker/Dockerfile) | ️❌ | ️❌ | [Github](https://github.com/benjaminchodroff/rust-teos) - [DockerHub](https://hub.docker.com/r/benjaminchodroff/rust-teos) |
| apotdevin/thunderhub | base-0.15.4 | [✔️](https://raw.githubusercontent.com/apotdevin/thunderhub/v0.15.4/Dockerfile) | [✔️](https://raw.githubusercontent.com/apotdevin/thunderhub/v0.15.4/Dockerfile) | [✔️](https://raw.githubusercontent.com/apotdevin/thunderhub/v0.15.4/Dockerfile) | [Github](https://github.com/apotdevin/thunderhub) - [DockerHub](https://hub.docker.com/r/apotdevin/thunderhub) |
| zammad/zammad-docker-compose | zammad-postgresql-3.4.0-4 | [✔️](https://raw.githubusercontent.com/zammad/zammad-docker-compose/ff20084ce2829486076e9781fe27407ca6cc09bb/containers/zammad-postgresql/Dockerfile) | ️❌ | ️❌ | [Github](https://github.com/zammad/zammad-docker-compose) - [DockerHub](https://hub.docker.com/r/zammad/zammad-docker-compose) |
| memcached | 1.5.22-alpine | [✔️](https://raw.githubusercontent.com/docker-library/memcached/eb38bf28263b8e5bb7367797cb7b181b65d769bd/alpine/Dockerfile) | ️❌ | ️❌ | [Github](https://github.com/docker-library/memcached) - [DockerHub](https://hub.docker.com/_/memcached) |
| acinq/phoenixd | 0.8.0 | [✔️](https://raw.githubusercontent.com/ACINQ/phoenixd/v0.8.0/.docker/Dockerfile) | [✔️](https://raw.githubusercontent.com/ACINQ/phoenixd/v0.8.0/.docker/Dockerfile) | [✔️](https://raw.githubusercontent.com/ACINQ/phoenixd/v0.8.0/.docker/Dockerfile) | [Github](https://github.com/ACINQ/phoenixd) - [DockerHub](https://hub.docker.com/r/acinq/phoenixd) |
| traefik | v2.6 | [✔️](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) |
| hhanh00/zcash-walletd | 1.1.5 | [✔️](https://raw.githubusercontent.com/elemental-pay/zcash-walletd/feat/data-config/docker/Dockerfile) | ️❌ | ️❌ | [Github](https://github.com/elemental-pay/zcash-walletd) - [DockerHub](https://hub.docker.com/r/hhanh00/zcash-walletd) |
| zfnd/zebra | 3.0.0 | [✔️](https://raw.githubusercontent.com/ZcashFoundation/zebra/main/docker/Dockerfile) | ️❌ | ️❌ | [Github](https://github.com/ZcashFoundation/zebra) - [DockerHub](https://hub.docker.com/r/zfnd/zebra) |
| electriccoinco/lightwalletd | v0.4.18 | [✔️](https://raw.githubusercontent.com/zcash/lightwalletd/master/Dockerfile) | ️❌ | ️❌ | [Github](https://github.com/zcash/lightwalletd) - [DockerHub](https://hub.docker.com/r/electriccoinco/lightwalletd) |
# FAQ
@ -389,41 +433,6 @@ export BTCPAYGEN_CRYPTO3='btg'
. btcpay-setup.sh -i
```
## I deployed before `btcpay-setup.sh` existed (before May 17, 2018), can I migrate to this new system?
Yes, run the following commands to update:
```bash
sudo su -
cd $DOWNLOAD_ROOT/btcpayserver-docker
git checkout master
git pull
git checkout 9acb5d8067cb5c46f59858137feb699b41ac9f19
btcpay-update.sh
. ./btcpay-setup.sh -i
git checkout master
btcpay-update.sh
exit
```
## I'm getting an error on Windows: `Cannot create container for service docker: Mount denied`?
If you see this error:
`Cannot create container for service docker: b'Mount denied:\nThe source path "\\\\var\\\\run\\\\docker.sock:/var/run/docker.sock"\nis not a valid Windows path'`.
Run this in [powershell](https://docs.microsoft.com/en-us/powershell/scripting/windows-powershell/starting-windows-powershell):
```powershell
$Env:COMPOSE_CONVERT_WINDOWS_PATHS=1
```
Then, run `docker-compose -f EXAMPLE.yml up`.
This bug comes from Docker for Windows and is [tracked on Github](https://github.com/docker/for-win/issues/1829).
## How I can prune my node(s)?
This will prune your Bitcoin full node to a maximum of 100GB (of blocks):
@ -448,8 +457,7 @@ First, copy [opt-save-storage](docker-compose-generator/docker-fragments/opt-sav
Modify the new `opt-save-storage.custom.yml` file to your taste:
```diff
@@ -14,8 +14,7 @@ version: "3"
services:
@@ -14,8 +14,7 @@ services:
bitcoind:
environment:
- BITCOIN_EXTRA_ARGS: prune=100000
@ -477,6 +485,14 @@ Yes. Please [see the documentation](https://docs.btcpayserver.org/FAQ/FAQ-Deploy
## How can I back up my BTCPay Server?
See the [Backup & Restore](https://docs.btcpayserver.org/Docker/backup-restore/) guide in our documentation.
<details>
<summary>For backwards compatibility: Click here for the description of the old backup.sh process</summary>
:::warning
Please consider switching to the [new Backup & Restore process](https://docs.btcpayserver.org/Docker/backup-restore/), because the `backup.sh` will not be maintained anymore.
:::
We provide a backup script that dumps the database and saves the important files:
```bash
@ -487,9 +503,9 @@ cd "$BTCPAY_BASE_DIRECTORY/btcpayserver-docker"
This will save the backup locally as `/var/lib/docker/volumes/backup_datadir/_data/backup.tar.gz`.
These are the options to customize the backup name and location:
- `BACKUP_TIMESTAMP=true` saves the backup with datetime as part of the file name, so that backups do not get overwritten.
- `BACKUP_PROVIDER=SCP` saves the backup remotely, requires additional `SCP_TARGET` environment variable (see below).
- `BACKUP_PROVIDER=Dropbox` saves the backup to Dropbox, requires additional `DROPBOX_TOKEN` environment variable (see below).
* `BACKUP_TIMESTAMP=true` saves the backup with datetime as part of the file name, so that backups do not get overwritten.
* `BACKUP_PROVIDER=SCP` saves the backup remotely, requires additional `SCP_TARGET` environment variable (see below).
* `BACKUP_PROVIDER=Dropbox` saves the backup to Dropbox, requires additional `DROPBOX_TOKEN` environment variable (see below).
```bash
cd "$BTCPAY_BASE_DIRECTORY/btcpayserver-docker"
@ -511,6 +527,7 @@ This option does not need to stop and restart the docker-containers:
cd "$BTCPAY_BASE_DIRECTORY/btcpayserver-docker"
./backup.sh --only-db
```
</details>
## How can I connect to the database?
@ -530,7 +547,7 @@ Then, inside `psql` you can select a database and interact with the tables:
\c btcpayservermainnet
# list tables
\dt+
\dt
# list users
SELECT "Id", "Email" FROM "AspNetUsers";
@ -538,3 +555,24 @@ SELECT "Id", "Email" FROM "AspNetUsers";
# end session
\q
```
The main BTCPay Server database tables are part of the `public` schema.
Plugins have their own schema, named after the plugin.
By default, only the tables of the `public` schema are shown.
If you want to also see and select the plugin tables, you need to extend the search path:
```bash
# list plugin schemas
SELECT * FROM pg_catalog.pg_namespace WHERE nspname LIKE 'BTCPayServer.%';
# extend search path
SET search_path TO "BTCPayServer.Plugins.MyPlugin", public;
# table list now also shows the MyPlugin tables
\dt
```
## How do I upgrade my BTCPay Server docker?
Run the script `./btcpay-update.sh` and patiently wait for your server to be upgraded.

11
Tools/fireflyiii/init.sh Executable file
View File

@ -0,0 +1,11 @@
#!/bin/bash
[[ $(docker exec $(docker ps -a -q -f "name=postgres_1") psql -U postgres -tc "SELECT 1 FROM pg_database WHERE datname = 'fireflyiii'") =~ "1" ]] || docker exec $(docker ps -a -q -f "name=postgres_1") psql -U postgres -c "CREATE DATABASE fireflyiii"
docker exec generated_fireflyiii_1 php artisan migrate --seed
docker exec generated_fireflyiii_1 php artisan firefly-iii:decrypt-all
docker exec generated_fireflyiii_1 php artisan cache:clear
docker exec generated_fireflyiii_1 php artisan firefly-iii:upgrade-database
docker exec generated_fireflyiii_1 php artisan passport:install
docker exec generated_fireflyiii_1 php artisan cache:clear
exit 0

16
Tools/lnd/lnd_delete_tls.sh Executable file
View File

@ -0,0 +1,16 @@
#!/bin/bash
set -e
read -p "This script will delete LND's TLS certificate, so that's it's recreated on restart. Please keep in mind that you'll need to update external connections to LND that depend on TLS cert. Type 'yes' to confirm you want to proceed`echo $'\n> '`" yn
if [ $yn != "yes" ]; then
exit 0
fi
docker exec btcpayserver_lnd_bitcoin rm -rf /root/.lnd/tls.cert
docker exec btcpayserver_lnd_bitcoin rm -rf /root/.lnd/tls.key
docker stop btcpayserver_lnd_bitcoin
docker start btcpayserver_lnd_bitcoin
echo "LND TLS certificate recreated"

View File

@ -17,7 +17,7 @@ if [ $yn != "yes" ]; then
exit 0
fi
../btcpay-down.sh
btcpay-down.sh
docker volume rm --force generated_lnd_bitcoin_datadir
@ -25,6 +25,6 @@ docker volume rm --force generated_lnd_bitcoin_datadir
# https://github.com/btcpayserver/btcpayserver-docker/issues/272
docker volume rm --force production_lnd_bitcoin_datadir
../btcpay-up.sh
btcpay-up.sh
echo "LND container recreated"

View File

@ -1,17 +1,26 @@
# How to use docker-compose with Traefik
Traefik is a modern reverse proxy aimed towards applications running through container orchestrators.
Traefik is a modern reverse proxy aimed towards applications running through container orchestrators.
Some of the benefits of using Traefik over NGinx are:
* Real-time configuration changes - no need to reload the proxy
* Auto discovery and configuration of services through a vast amount of container orchestrators.
* Built-in official support for Let's Encrypt SSL with certificate auto-renewal
- Real-time configuration changes - no need to reload the proxy
- Auto discovery and configuration of services through a vast amount of container orchestrators.
- Built-in official support for Let's Encrypt SSL with certificate auto-renewal
- Supports path-based routing without need to [hard-code it in global config](../Production/nginx.tmpl).
## Traefik Specific Environment Variables
* `BTCPAYGEN_REVERSEPROXY` to `traefik`.
* `LETSENCRYPT_EMAIL`: Optional, The email Let's Encrypt will use to notify you about certificate expiration.
* `BTCPAYGEN_ADDITIONAL_FRAGMENTS`: In the case that you have an already deployed traefik container, you can use the fragment `traefik-labels` which will tag the btcpayserver service with the needed labels to be discovered.
- `BTCPAYGEN_REVERSEPROXY` to `traefik`.
- `LETSENCRYPT_EMAIL`: Optional, The email Let's Encrypt will use to notify you about certificate expiration.
- `BTCPAYGEN_ADDITIONAL_FRAGMENTS`: Add `traefik`
- `BTCPAY_ADDITIONAL_HOSTS`: Traefik can not accept list of hosts. Add additional hosts in a new file named e.g. `btcpayserver-traefic.custom.yml`:
```
services:
btcpayserver:
labels:
traefik.http.routers.btcpayserver2.rule: Host(`additional.example.com`)
traefik.http.routers.btcpayserver3.rule: Host(`another-additional.example.com`)
```
![Architecture](Production.png)
![Architecture](Production.png)

View File

@ -1,34 +0,0 @@
defaultEntryPoints = ["https","http"]
logLevel = "ERROR"
[entryPoints]
[entryPoints.http]
address = ":80"
[entryPoints.http.redirect]
entryPoint = "https"
[entryPoints.https]
address = ":443"
[entryPoints.https.tls]
[retry]
[docker]
endpoint = "unix:///var/run/docker.sock"
watch = true
exposedByDefault = false
[acme]
storage = "acme.json"
entryPoint = "https"
onHostRule = true
[acme.httpChallenge]
entryPoint = "http"
[traefikLog]
filePath = "/traefik_logs/traefik.log"
format = "json"
[accessLog]
filePath = "/traefik_logs/access.log"
format = "json"

34
Traefik/traefik.yml Normal file
View File

@ -0,0 +1,34 @@
entryPoints:
http:
address: :80
http:
redirections:
entrypoint:
to: https
scheme: https
https:
address: :443
http:
tls:
certResolver: default
providers:
docker:
exposedByDefault: false
watch: true
endpoint: unix:///var/run/docker.sock
# Enable only for debug
#api:
# insecure: true
# dashboard: true
log:
level: ERROR # or DEBUG, PANIC, FATAL, WARN, and INFO
certificatesResolvers:
default:
acme:
storage: /data/acme.json
httpChallenge:
entryPoint: http

View File

@ -19,14 +19,26 @@ fi
case "$BACKUP_PROVIDER" in
"Dropbox")
if [ -z "$DROPBOX_TOKEN" ]; then
echo "Set DROPBOX_TOKEN environment variable and try again."
echo -e "\033[0;31mSet DROPBOX_TOKEN environment variable and try again.\033[0m"
exit 1
fi
;;
"S3")
echo -e "\033[1;33mUsing S3 backup provider. Make sure you have ran 'aws configure' on your root user and configured an AMI with access to your bucket.\033[0m"
if [ -z "$S3_BUCKET" ]; then
echo -e "\033[0;31mSet S3_BUCKET environment variable and try again.\033[0m"
exit 1
fi
if [ -z "$S3_PATH" ]; then
echo -e "\033[1;33mUsing bucket root for backup, set S3_PATH if you want to backup into a specific folder (Make sure it ends with a trailing slash).\033[0m"
fi
;;
"SCP")
if [ -z "$SCP_TARGET" ]; then
echo "Set SCP_TARGET environment variable and try again."
echo -e "\033[0;31mSet SCP_TARGET environment variable and try again.\033[0m"
exit 1
fi
;;
@ -40,7 +52,7 @@ esac
volumes_dir=/var/lib/docker/volumes
backup_dir="$volumes_dir/backup_datadir"
filename="backup.tar.gz"
dumpname="postgres.sql"
dumpname="postgres.sql.gz"
if [ "$BACKUP_TIMESTAMP" == true ]; then
timestamp=$(date "+%Y%m%d-%H%M%S")
@ -54,9 +66,14 @@ dbdump_path="$backup_dir/_data/${dumpname}"
cd "$BTCPAY_BASE_DIRECTORY/btcpayserver-docker"
. helpers.sh
# ensure backup dir exists
if [ ! -d "$backup_dir" ]; then
docker volume create backup_datadir
fi
# dump database
echo "Dumping database …"
btcpay_dump_db $dumpname
btcpay_dump_db $dbdump_path
if [[ "$1" == "--only-db" ]]; then
tar -cvzf $backup_path $dbdump_path
@ -66,7 +83,7 @@ else
btcpay_down
echo "Backing up files …"
tar --exclude="$backup_dir/*" --exclude="$volumes_dir/generated_bitcoin_datadir/*" --exclude="$volumes_dir/generated_litecoin_datadir/*" --exclude="$volumes_dir/**/logs/*" -cvzf $backup_path $dbdump_path $volumes_dir
tar --exclude="$backup_path" --exclude="$volumes_dir/generated_bitcoin_datadir/*" --exclude="$volumes_dir/generated_litecoin_datadir/*" --exclude="$volumes_dir/generated_postgres_datadir/*" --exclude="$volumes_dir/**/logs/*" -cvzf $backup_path $dbdump_path $volumes_dir
echo "Restarting BTCPay Server …"
btcpay_up
@ -81,7 +98,14 @@ case $BACKUP_PROVIDER in
rm $backup_path
;;
"SCP")
"S3")
echo "Uploading to S3 …"
docker run --rm -v ~/.aws:/root/.aws -v $backup_path:/aws/$filename amazon/aws-cli s3 cp $filename s3://$S3_BUCKET/$S3_PATH
echo "Deleting local backup …"
rm $backup_path
;;
"SCP")
echo "Uploading via SCP …"
scp $backup_path $SCP_TARGET
echo "Deleting local backup …"

1
beldex-wallet-cli.ps1 Normal file
View File

@ -0,0 +1 @@
docker exec -it btcpayserver_beldexd beldex-wallet-cli $args

3
beldex-wallet-cli.sh Normal file
View File

@ -0,0 +1,3 @@
#!/bin/bash
docker exec -it btcpayserver_beldexd beldex-wallet-cli "$@"

View File

@ -7,7 +7,8 @@ query()
case "$1" in
disable-multifactor)
query "DELETE FROM \"U2FDevices\" WHERE \"ApplicationUserId\" = (SELECT \"Id\" FROM \"AspNetUsers\" WHERE upper('$2') = \"NormalizedEmail\")"
query "UPDATE public.\"AspNetUsers\" SET \"TwoFactorEnabled\"=false WHERE upper('\$2') = \"NormalizedEmail\""
query "DELETE FROM \"Fido2Credentials\" WHERE \"ApplicationUserId\" = (SELECT \"Id\" FROM \"AspNetUsers\" WHERE upper('$2') = \"NormalizedEmail\")"
query "UPDATE public.\"AspNetUsers\" SET \"TwoFactorEnabled\"=false WHERE upper('$2') = \"NormalizedEmail\""
;;
set-user-admin)
query "INSERT INTO \"AspNetUserRoles\" Values ( (SELECT \"Id\" FROM \"AspNetUsers\" WHERE upper('$2') = \"NormalizedEmail\"), (SELECT \"Id\" FROM \"AspNetRoles\" WHERE \"NormalizedName\"='SERVERADMIN'))"

156
btcpay-backup.sh Executable file
View File

@ -0,0 +1,156 @@
#!/bin/bash -e
set -o pipefail -o errexit
# Please be aware of these important issues:
#
# - Old channel state is toxic and you can loose all your funds, if you or someone
# else closes a channel based on the backup with old state - and the state changes
# often! If you publish an old state (say from yesterday's backup) on chain, you
# WILL LOSE ALL YOUR FUNDS IN A CHANNEL, because the counterparty will publish a
# revocation key!
if [ "$(id -u)" != "0" ]; then
printf "\n🚨 This script must be run as root.\n"
printf "➡️ Use the command 'sudo su -' (include the trailing hypen) and try again.\n\n"
exit 1
fi
# preparation
if [[ "$OSTYPE" == "darwin"* ]]; then
# Mac OS
BASH_PROFILE_SCRIPT="$HOME/btcpay-env.sh"
else
# Linux
BASH_PROFILE_SCRIPT="/etc/profile.d/btcpay-env.sh"
fi
. "$BASH_PROFILE_SCRIPT"
docker_dir=$(docker volume inspect generated_btcpay_datadir --format="{{.Mountpoint}}" | sed -e "s%/volumes/.*%%g")
postgres_dump_name=postgres.sql.gz
btcpay_dir="$BTCPAY_BASE_DIRECTORY/btcpayserver-docker"
backup_dir="$docker_dir/volumes/backup_datadir/_data"
postgres_dump_path="$docker_dir/$postgres_dump_name"
backup_path="$backup_dir/backup.tar.gz"
# ensure backup dir exists
if [ ! -d "$backup_dir" ]; then
mkdir -p $backup_dir
fi
cd $btcpay_dir
. helpers.sh
# Postgres database
postgres_container=$(docker ps -a -q -f "name=postgres_1")
if [ -z "$postgres_container" ]; then
printf "\n"
echo " Postgres container is not up and running. Starting BTCPay Server …"
docker volume create generated_postgres_datadir
docker-compose -f $BTCPAY_DOCKER_COMPOSE up -d postgres
printf "\n"
postgres_container=$(docker ps -a -q -f "name=postgres_1")
if [ -z "$postgres_container" ]; then
echo "🚨 Postgres container could not be started or found."
exit 1
fi
fi
printf "\n"
echo " Dumping Postgres database …"
{
docker exec $postgres_container pg_dumpall -c -U postgres | gzip > $postgres_dump_path
echo "✅ Postgres database dump done."
} || {
echo "🚨 Dumping Postgres database failed. Please check the error message above."
exit 1
}
# Optional: MariaDB database
mariadb_container=$(docker ps -a -q -f "name=mariadb_1")
if [ ! -z "$mariadb_container" ]; then
mariadb_dump_name=mariadb.sql.gz
mariadb_dump_path="$docker_dir/$mariadb_dump_name"
# MariaDB container exists and is running - dump it
printf "\n"
echo " Dumping MariaDB database …"
{
docker exec $mariadb_container mysqldump -u root -pwordpressdb -A --add-drop-database | gzip > $mariadb_dump_path
echo "✅ MariaDB database dump done."
} || {
echo "🚨 Dumping MariaDB database failed. Please check the error message above."
exit 1
}
fi
# BTCPay Server backup
printf "\n Stopping BTCPay Server …\n\n"
btcpay_down
printf "\n"
cd $docker_dir
echo " Archiving files in $(pwd)"
{
tar \
--exclude="volumes/backup_datadir" \
--exclude="volumes/generated_btcpay_datadir/_data/host_*" \
--exclude="volumes/generated_bitcoin_datadir/_data" \
--exclude="volumes/generated_litecoin_datadir/_data" \
--exclude="volumes/generated_mwebd_datadir" \
--exclude="volumes/generated_elements_datadir/_data" \
--exclude="volumes/generated_xmr_data/_data" \
--exclude="volumes/generated_bdx_data/_data" \
--exclude="volumes/generated_dogecoin_datadir/_data/blocks" \
--exclude="volumes/generated_dogecoin_datadir/_data/chainstate" \
--exclude="volumes/generated_dash_datadir/_data/blocks" \
--exclude="volumes/generated_dash_datadir/_data/chainstate" \
--exclude="volumes/generated_dash_datadir/_data/indexes" \
--exclude="volumes/generated_dash_datadir/_data/debug.log" \
--exclude="volumes/generated_dash_datadir/_data/evodb" \
--exclude="volumes/generated_mariadb_datadir" \
--exclude="volumes/generated_postgres_datadir" \
--exclude="volumes/generated_electrumx_datadir" \
--exclude="volumes/generated_lnd_bitcoin_datadir/_data/data/graph" \
--exclude="volumes/generated_clightning_bitcoin_datadir/_data/lightning-rpc" \
--exclude="volumes/generated_lwd-cache" \
--exclude="volumes/generated_zebrad-cache" \
--exclude="volumes/generated_zec_data" \
--exclude="**/logs/*" \
-cvzf $backup_path $postgres_dump_name $mariadb_dump_name volumes/generated_*
echo "✅ Archive done."
if [ ! -z "$BTCPAY_BACKUP_PASSPHRASE" ]; then
printf "\n"
echo "🔐 BTCPAY_BACKUP_PASSPHRASE is set, the backup will be encrypted."
{
gpg -o "$backup_path.gpg" --batch --yes -c --passphrase "$BTCPAY_BACKUP_PASSPHRASE" $backup_path
rm $backup_path
backup_path="$backup_path.gpg"
echo "✅ Encryption done."
} || {
echo "🚨 Encrypting failed. Please check the error message above."
printf "\n Restarting BTCPay Server …\n\n"
cd $btcpay_dir
btcpay_up
exit 1
}
fi
} || {
echo "🚨 Archiving failed. Please check the error message above."
printf "\n Restarting BTCPay Server …\n\n"
cd $btcpay_dir
btcpay_up
exit 1
}
printf "\n Restarting BTCPay Server …\n\n"
cd $btcpay_dir
btcpay_up
printf "\n Cleaning up …\n\n"
rm $postgres_dump_path
printf "✅ Backup done => $backup_path\n\n"

182
btcpay-restore.sh Executable file
View File

@ -0,0 +1,182 @@
#!/bin/bash -e
set -o pipefail -o errexit
if [ "$(id -u)" != "0" ]; then
printf "\n🚨 This script must be run as root.\n"
printf "➡️ Use the command 'sudo su -' (include the trailing hypen) and try again.\n\n"
exit 1
fi
backup_path=$1
if [ -z "$backup_path" ]; then
printf "\n Usage: btcpay-restore.sh /path/to/backup.tar.gz\n\n"
exit 1
fi
if [ ! -f "$backup_path" ]; then
printf "\n🚨 $backup_path does not exist.\n\n"
exit 1
fi
if [[ "$backup_path" == *.gpg && -z "$BTCPAY_BACKUP_PASSPHRASE" ]]; then
printf "\n🔐 $backup_path is encrypted. Please provide the passphrase to decrypt it."
printf "\n Usage: BTCPAY_BACKUP_PASSPHRASE=t0pSeCrEt btcpay-restore.sh /path/to/backup.tar.gz.gpg\n\n"
exit 1
fi
# preparation
docker_dir=$(docker volume inspect generated_btcpay_datadir --format="{{.Mountpoint}}" | sed -e "s%/volumes/.*%%g")
restore_dir="$docker_dir/volumes/backup_datadir/_data/restore"
postgres_dump_name=postgres.sql.gz
btcpay_dir="$BTCPAY_BASE_DIRECTORY/btcpayserver-docker"
# ensure clean restore dir
printf "\n Cleaning restore directory $restore_dir …\n\n"
rm -rf $restore_dir
mkdir -p $restore_dir
if [[ "$backup_path" == *.gpg ]]; then
echo "🔐 Decrypting backup file …"
{
gpg -o "${backup_path%.*}" --batch --yes --passphrase "$BTCPAY_BACKUP_PASSPHRASE" -d $backup_path
backup_path="${backup_path%.*}"
printf "✅ Decryption done.\n\n"
} || {
echo "🚨 Decryption failed. Please check the error message above."
exit 1
}
fi
cd $restore_dir
echo " Extracting files in $(pwd)"
tar -xvf $backup_path -C $restore_dir
# basic control checks
if [ ! -f "$postgres_dump_name" ]; then
printf "\n🚨 $postgres_dump_name does not exist.\n\n"
exit 1
fi
if [ ! -d "volumes" ]; then
printf "\n🚨 volumes directory does not exist.\n\n"
exit 1
fi
if [ -f "mariadb.sql.gz" ]; then
mariadb_dump_name=mariadb.sql.gz
fi
cd $btcpay_dir
. helpers.sh
printf "\n Stopping BTCPay Server …\n\n"
btcpay_down
cd $restore_dir
{
printf "\n Restoring volumes …\n"
# ensure volumes dir exists
if [ ! -d "$docker_dir/volumes" ]; then
mkdir -p $docker_dir/volumes
fi
# copy volume directories over
cp -r volumes/* $docker_dir/volumes/
# ensure datadirs excluded in backup exist
mkdir -p $docker_dir/volumes/generated_postgres_datadir/_data
if [ ! -z "$mariadb_dump_name" ]; then
mkdir -p $docker_dir/volumes/generated_mariadb_datadir/_data
fi
echo "✅ Volume restore done."
} || {
echo "🚨 Restoring volumes failed. Please check the error message above."
printf "\n Restarting BTCPay Server …\n\n"
cd $btcpay_dir
btcpay_up
exit 1
}
# Start Postgres database
{
printf "\n Starting Postgres database container …\n"
docker-compose -f $BTCPAY_DOCKER_COMPOSE up -d postgres
sleep 10
postgres_container=$(docker ps -a -q -f "name=postgres_1")
if [ -z "$postgres_container" ]; then
echo "🚨 Postgres database container could not be started or found."
printf "\n Restarting BTCPay Server …\n\n"
cd $btcpay_dir
btcpay_up
exit 1
fi
} || {
echo "🚨 Starting Postgres database container failed. Please check the error message above."
printf "\n Restarting BTCPay Server …\n\n"
cd $btcpay_dir
btcpay_up
exit 1
}
# Optional: Start MariaDB database
if [ ! -z "$mariadb_dump_name" ]; then
{
printf "\n Starting MariaDB database container …\n"
docker-compose -f $BTCPAY_DOCKER_COMPOSE up -d mariadb
sleep 10
mariadb_container=$(docker ps -a -q -f "name=mariadb_1")
if [ -z "$mariadb_container" ]; then
echo "🚨 MariaDB database container could not be started or found."
printf "\n Restarting BTCPay Server …\n\n"
cd $btcpay_dir
btcpay_up
exit 1
fi
} || {
echo "🚨 Starting MariaDB database container failed. Please check the error message above."
printf "\n Restarting BTCPay Server …\n\n"
cd $btcpay_dir
btcpay_up
exit 1
}
fi
cd $restore_dir
# Postgres database
{
printf "\n Restoring Postgres database …"
gunzip -c $postgres_dump_name | docker exec -i $postgres_container psql -U postgres postgres
echo "✅ Postgres database restore done."
} || {
echo "🚨 Restoring Postgres database failed. Please check the error message above."
printf "\n Restarting BTCPay Server …\n\n"
cd $btcpay_dir
btcpay_up
exit 1
}
# Optional: MariaDB database
if [ ! -z "$mariadb_dump_name" ]; then
{
printf "\n Restoring MariaDB database …"
gunzip -c $mariadb_dump_name | docker exec -i $mariadb_container mysql -u root -pwordpressdb
printf "\n✅ MariaDB database restore done."
} || {
echo "🚨 Restoring MariaDB database failed. Please check the error message above."
printf "\n Restarting BTCPay Server …\n\n"
cd $btcpay_dir
btcpay_up
exit 1
}
fi
printf "\n Restarting BTCPay Server …\n\n"
cd $btcpay_dir
btcpay_up
printf "\n Cleaning up …\n\n"
rm -rf $restore_dir
printf "✅ Restore done\n\n"

View File

@ -38,12 +38,12 @@ else
fi
# Verify we are in right folder. If we are not, let's go in the parent folder of the current docker-compose.
if ! git -C . rev-parse &> /dev/null || [ ! -d "Generated" ]; then
if ! git rev-parse --git-dir &> /dev/null || [ ! -d "Generated" ]; then
if [[ ! -z $BTCPAY_DOCKER_COMPOSE ]]; then
cd $(dirname $BTCPAY_DOCKER_COMPOSE)
cd ..
fi
if ! git -C . rev-parse || [[ ! -d "Generated" ]]; then
if ! git rev-parse || [[ ! -d "Generated" ]]; then
echo "You must run this script inside the git repository of btcpayserver-docker"
return
fi
@ -81,6 +81,7 @@ Or, if you want to offload SSL because you have an existing web proxy, change RE
Environment variables:
BTCPAY_HOST: The hostname of your website (eg. btcpay.example.com)
BTCPAY_LIGHTNING_HOST: The hostname announced for your node on the lightning network (by default, the BTCPAY_HOST will be used)
REVERSEPROXY_HTTP_PORT: The port the reverse proxy binds to for public HTTP requests. Default: 80
REVERSEPROXY_HTTPS_PORT: The port the reverse proxy binds to for public HTTPS requests. Default: 443
REVERSEPROXY_DEFAULT_HOST: Optional, if using a reverse proxy nginx, specify which website should be presented if the server is accessed by its IP.
@ -96,7 +97,8 @@ Environment variables:
ACME_CA_URI: The API endpoint to ask for HTTPS certificate (default: production)
BTCPAY_ENABLE_SSH: Optional, gives BTCPay Server SSH access to the host by allowing it to edit authorized_keys of the host, it can be used for managing the authorized_keys or updating BTCPay Server directly through the website. (Default: false)
BTCPAYGEN_DOCKER_IMAGE: Allows you to specify a custom docker image for the generator (Default: btcpayserver/docker-compose-generator)
BTCPAY_IMAGE: Allows you to specify the btcpayserver docker image to use over the default version. (Default: current stable version of btcpayserver)
BTCPAY_IMAGE: Allows you to specify the btcpayserver docker image to use over the default version. (Default: current stable version of btcpayserver, eg. btcpayserver/btcpayserver:version)
BTCPAY_UPDATE_CLEAN: Clean (prune) all old BTCPayServer images after an update. WARNING: also removes all non-BTCPayServer images! (default: true)
BTCPAY_PROTOCOL: Allows you to specify the external transport protocol of BTCPayServer. (Default: https)
BTCPAY_ADDITIONAL_HOSTS: Allows you to specify additional domains to your BTCPayServer with https support if enabled. (eg. example2.com,example3.com)
Add-on specific variables:
@ -104,9 +106,11 @@ Add-on specific variables:
ZAMMAD_HOST: If zammad is activated with opt-add-zammad, the hostname of your zammad website (eg. zammad.example.com)
WOOCOMMERCE_HOST: If woocommerce is activated with opt-add-woocommerce, the hostname of your woocommerce website (eg. store.example.com)
BTCPAYGEN_EXCLUDE_FRAGMENTS: Semicolon-separated list of fragments you want to forcefully exclude (eg. litecoin-clightning)
BTCTRANSMUTER_HOST: If btc transmuter is activated with opt-add-btctransmuter, the hostname of your btc transmuter website (eg. store.example.com)
TOR_RELAY_NICKNAME: If tor relay is activated with opt-add-tor-relay, the relay nickname
TOR_RELAY_EMAIL: If tor relay is activated with opt-add-tor-relay, the email for Tor to contact you regarding your relay
CHATWOOT_HOST: If chatwoot is activated with opt-add-chatwoot, the hostname of your chatwoot website (eg. store.example.com)
FIREFLY_HOST: If fireflyiii is activated with opt-add-fireflyiii, the hostname of your libre patron website (eg. firefly.example.com)
CLOUDFLARE_TUNNEL_TOKEN: Used to expose your instance to clearnet with a Cloudflare Argo Tunnel
END
}
START=""
@ -179,17 +183,10 @@ if [ ! -z "$BTCPAY_ADDITIONAL_HOSTS" ] && [[ "$BTCPAY_ADDITIONAL_HOSTS" == .onio
echo "$BTCPAY_ADDITIONAL_HOSTS should not contain onion hosts, additional hosts is only for getting https certificates, those are not available to tor addresses"
return;
fi
######### Migration: old pregen environment to new environment ############
if [[ ! -z $BTCPAY_DOCKER_COMPOSE ]] && [[ ! -z $DOWNLOAD_ROOT ]] && [[ -z $BTCPAYGEN_OLD_PREGEN ]]; then
echo "Your deployment is too old, you need to migrate by following instructions on this link https://docs.btcpayserver.org/Docker/#i-deployed-before-btcpay-setup-sh-existed-before-may-17-2018-can-i-migrate-to-this-new-system"
return
fi
#########################################################
[[ $LETSENCRYPT_EMAIL == *@example.com ]] && echo "LETSENCRYPT_EMAIL ends with @example.com, setting to empty email instead" && LETSENCRYPT_EMAIL=""
: "${LETSENCRYPT_EMAIL:=}"
: "${BTCPAYGEN_OLD_PREGEN:=false}"
: "${NBITCOIN_NETWORK:=mainnet}"
: "${BTCPAYGEN_CRYPTO1:=btc}"
: "${BTCPAYGEN_REVERSEPROXY:=nginx}"
@ -202,22 +199,13 @@ fi
: "${REVERSEPROXY_HTTPS_PORT:=443}"
: "${BTCPAY_ENABLE_SSH:=false}"
: "${PIHOLE_SERVERIP:=}"
: "${CLOUDFLARE_TUNNEL_TOKEN:=}"
: "${BTCPAY_UPDATE_CLEAN:=true}"
OLD_BTCPAY_DOCKER_COMPOSE="$BTCPAY_DOCKER_COMPOSE"
ORIGINAL_DIRECTORY="$(pwd)"
BTCPAY_BASE_DIRECTORY="$(dirname "$(pwd)")"
if [[ "$BTCPAYGEN_OLD_PREGEN" == "true" ]]; then
if [[ $(dirname $BTCPAY_DOCKER_COMPOSE) == *Production ]]; then
BTCPAY_DOCKER_COMPOSE="$(pwd)/Production/docker-compose.generated.yml"
elif [[ $(dirname $BTCPAY_DOCKER_COMPOSE) == *Production-NoReverseProxy ]]; then
BTCPAY_DOCKER_COMPOSE="$(pwd)/Production-NoReverseProxy/docker-compose.generated.yml"
else
BTCPAY_DOCKER_COMPOSE="$(pwd)/Production/docker-compose.generated.yml"
fi
else # new deployments must be in Generated
BTCPAY_DOCKER_COMPOSE="$(pwd)/Generated/docker-compose.generated.yml"
fi
BTCPAY_DOCKER_COMPOSE="$(pwd)/Generated/docker-compose.generated.yml"
BTCPAY_ENV_FILE="$BTCPAY_BASE_DIRECTORY/.env"
@ -242,7 +230,7 @@ if $BTCPAY_ENABLE_SSH && [[ "$BTCPAY_HOST_SSHAUTHORIZEDKEYS" ]]; then
touch $BTCPAY_HOST_SSHAUTHORIZEDKEYS
fi
BTCPAY_SSHAUTHORIZEDKEYS="/datadir/host_authorized_keys"
BTCPAY_SSHKEYFILE="/datadir/host_id_rsa"
BTCPAY_SSHKEYFILE="/datadir/host_id_ed25519"
use_ssh=true
fi
@ -278,6 +266,7 @@ echo "
Parameters passed:
BTCPAY_PROTOCOL:$BTCPAY_PROTOCOL
BTCPAY_HOST:$BTCPAY_HOST
BTCPAY_LIGHTNING_HOST: $BTCPAY_LIGHTNING_HOST
BTCPAY_ADDITIONAL_HOSTS:$BTCPAY_ADDITIONAL_HOSTS
REVERSEPROXY_HTTP_PORT:$REVERSEPROXY_HTTP_PORT
REVERSEPROXY_HTTPS_PORT:$REVERSEPROXY_HTTPS_PORT
@ -286,6 +275,7 @@ LIBREPATRON_HOST:$LIBREPATRON_HOST
ZAMMAD_HOST:$ZAMMAD_HOST
WOOCOMMERCE_HOST:$WOOCOMMERCE_HOST
BTCTRANSMUTER_HOST:$BTCTRANSMUTER_HOST
CHATWOOT_HOST:$CHATWOOT_HOST
BTCPAY_ENABLE_SSH:$BTCPAY_ENABLE_SSH
BTCPAY_HOST_SSHKEYFILE:$BTCPAY_HOST_SSHKEYFILE
LETSENCRYPT_EMAIL:$LETSENCRYPT_EMAIL
@ -305,16 +295,17 @@ BTCPAYGEN_LIGHTNING:$BTCPAYGEN_LIGHTNING
BTCPAYGEN_ADDITIONAL_FRAGMENTS:$BTCPAYGEN_ADDITIONAL_FRAGMENTS
BTCPAYGEN_EXCLUDE_FRAGMENTS:$BTCPAYGEN_EXCLUDE_FRAGMENTS
BTCPAY_IMAGE:$BTCPAY_IMAGE
BTCPAY_UPDATE_CLEAN:$BTCPAY_UPDATE_CLEAN
ACME_CA_URI:$ACME_CA_URI
TOR_RELAY_NICKNAME: $TOR_RELAY_NICKNAME
TOR_RELAY_EMAIL: $TOR_RELAY_EMAIL
PIHOLE_SERVERIP: $PIHOLE_SERVERIP
FIREFLY_HOST: $FIREFLY_HOST
----------------------
Additional exported variables:
BTCPAY_DOCKER_COMPOSE=$BTCPAY_DOCKER_COMPOSE
BTCPAY_BASE_DIRECTORY=$BTCPAY_BASE_DIRECTORY
BTCPAY_ENV_FILE=$BTCPAY_ENV_FILE
BTCPAYGEN_OLD_PREGEN=$BTCPAYGEN_OLD_PREGEN
BTCPAY_SSHKEYFILE=$BTCPAY_SSHKEYFILE
BTCPAY_SSHAUTHORIZEDKEYS=$BTCPAY_SSHAUTHORIZEDKEYS
BTCPAY_HOST_SSHAUTHORIZEDKEYS:$BTCPAY_HOST_SSHAUTHORIZEDKEYS
@ -340,7 +331,6 @@ touch "$BASH_PROFILE_SCRIPT"
echo "
#!/bin/bash
export COMPOSE_HTTP_TIMEOUT=\"180\"
export BTCPAYGEN_OLD_PREGEN=\"$BTCPAYGEN_OLD_PREGEN\"
export BTCPAYGEN_CRYPTO1=\"$BTCPAYGEN_CRYPTO1\"
export BTCPAYGEN_CRYPTO2=\"$BTCPAYGEN_CRYPTO2\"
export BTCPAYGEN_CRYPTO3=\"$BTCPAYGEN_CRYPTO3\"
@ -419,16 +409,7 @@ if ! [[ -x "$(command -v docker)" ]] || ! [[ -x "$(command -v docker-compose)" ]
fi
fi
if ! [[ -x "$(command -v docker-compose)" ]]; then
if ! [[ "$OSTYPE" == "darwin"* ]] && $HAS_DOCKER; then
echo "Trying to install docker-compose by using the btcpayserver/docker-compose ($(uname -m))"
! [[ -d "dist" ]] && mkdir dist
docker run --rm -v "$(pwd)/dist:/dist" btcpayserver/docker-compose:1.28.5
mv dist/docker-compose /usr/local/bin/docker-compose
chmod +x /usr/local/bin/docker-compose
rm -rf "dist"
fi
fi
docker_update
fi
if $HAS_DOCKER; then
@ -451,10 +432,6 @@ if $HAS_DOCKER; then
fi
fi
if [[ "$BTCPAYGEN_OLD_PREGEN" == "true" ]]; then
cp Generated/docker-compose.generated.yml $BTCPAY_DOCKER_COMPOSE
fi
# Schedule for reboot
if $STARTUP_REGISTER && [[ -x "$(command -v systemctl)" ]]; then
# Use systemd

51
btcpay-teardown.sh Executable file
View File

@ -0,0 +1,51 @@
#!/bin/bash
set +x
if [[ "$0" = "$BASH_SOURCE" ]]; then
echo "This script must be sourced \". btcpay-teardown.sh\""
exit 1
fi
if [[ $EUID -ne 0 ]]; then
echo "This script must be run as root after running \"sudo su -\""
return
fi
# Verify we are in right folder. If we are not, let's go in the parent folder of the current docker-compose.
if ! git rev-parse --git-dir &> /dev/null || [ ! -d "Generated" ]; then
if [[ ! -z $BTCPAY_DOCKER_COMPOSE ]]; then
cd $(dirname $BTCPAY_DOCKER_COMPOSE)
cd ..
fi
if ! git rev-parse || [[ ! -d "Generated" ]]; then
echo "You must run this script inside the git repository of btcpayserver-docker"
return
fi
fi
printf "\n🚨 Running this script will completely erase the BTCPay Server instance. Do you wish to perform this action?\n\n"
read -p "➡️ Confirm by typing 'YES': " confirm
if [[ "$confirm" != "YES"* ]]; then
printf "\n😌 Phew, that was close. Aborting uninstall — thanks for keeping your BTCPay Server!\n\n"
return
else
printf "\n👋 Sad to see you go. Thanks for using BTCPay Server!\n"
fi
BASH_PROFILE_SCRIPT="/etc/profile.d/btcpay-env.sh"
ORIGINAL_DIRECTORY="$(pwd)"
BTCPAY_BASE_DIRECTORY="$(dirname "$(pwd)")"
printf "\n Stopping BTCPay Server and removing related Docker volumes and networks …\n\n"
docker-compose -f $BTCPAY_DOCKER_COMPOSE down -v
docker system prune -f
printf "\n Removing BTCPay Server files …\n\n"
cd $BTCPAY_BASE_DIRECTORY
rm -rf $ORIGINAL_DIRECTORY
rm $BASH_PROFILE_SCRIPT $BTCPAY_ENV_FILE
printf "\n✅ Teardown done, successfully uninstalled BTCPay Server!\n\n"

View File

@ -13,16 +13,6 @@ fi
. ${BASH_PROFILE_SCRIPT}
if [ ! -z $BTCPAY_DOCKER_COMPOSE ] && [ ! -z $DOWNLOAD_ROOT ] && [ -z $BTCPAYGEN_OLD_PREGEN ]; then
echo "Your deployment is too old, you need to migrate by following instructions on this link https://github.com/btcpayserver/btcpayserver-docker/tree/master#i-deployed-before-btcpay-setupsh-existed-before-may-17-can-i-migrate-to-this-new-system"
exit
fi
if [[ $BTCPAY_DOCKER_COMPOSE != *docker-compose.generated.yml ]]; then
echo "Your deployment is too old, you need to migrate by following instructions on this link https://github.com/btcpayserver/btcpayserver-docker/tree/master#i-deployed-before-btcpay-setupsh-existed-before-may-17-can-i-migrate-to-this-new-system"
exit
fi
cd "$BTCPAY_BASE_DIRECTORY/btcpayserver-docker"
if [[ "$1" != "--skip-git-pull" ]]; then
@ -39,16 +29,14 @@ if ! [ -f "/etc/docker/daemon.json" ] && [ -w "/etc/docker" ]; then
echo "Setting limited log files in /etc/docker/daemon.json"
fi
. helpers.sh
docker_update
if ! ./build.sh; then
echo "Failed to generate the docker-compose"
exit 1
fi
if [ "$BTCPAYGEN_OLD_PREGEN" == "true" ]; then
cp Generated/docker-compose.generated.yml $BTCPAY_DOCKER_COMPOSE
cp Generated/torrc.tmpl "$(dirname "$BTCPAY_DOCKER_COMPOSE")/torrc.tmpl"
fi
if ! grep -Fxq "export COMPOSE_HTTP_TIMEOUT=\"180\"" "$BASH_PROFILE_SCRIPT"; then
echo "export COMPOSE_HTTP_TIMEOUT=\"180\"" >> "$BASH_PROFILE_SCRIPT"
export COMPOSE_HTTP_TIMEOUT=180
@ -67,10 +55,17 @@ if [[ "$ACME_CA_URI" == "https://acme-staging.api.letsencrypt.org/directory" ]];
echo "Info: Rewriting ACME_CA_URI from $original_acme to $ACME_CA_URI"
fi
. helpers.sh
install_tooling
if $BTCPAY_ENABLE_SSH && [[ "$BTCPAY_SSHKEYFILE" == "/datadir/host_id_rsa" ]]; then
BTCPAY_SSHKEYFILE="/datadir/host_id_ed25519"
echo "Info: BTCPAY -> Host SSH connection changed ssh keys from rsa to ed25519"
fi
btcpay_update_docker_env
btcpay_up
set +e
docker image prune -af --filter "label!=org.btcpayserver.image=docker-compose-generator"
if [ "$BTCPAY_UPDATE_CLEAN" == true ]; then
./btcpay-clean.sh
fi
exit 0

View File

@ -31,9 +31,3 @@ docker run -v "$(Get-Location)\Generated:/app/Generated" `
If ($BTCPAYGEN_REVERSEPROXY -eq "nginx") {
Copy-Item ".\Production\nginx.tmpl" -Destination ".\Generated"
}
If ($BTCPAYGEN_REVERSEPROXY -eq "traefik") {
Copy-Item ".\Traefik\traefik.toml" -Destination ".\Generated"
New-Item ".\Generated\acme.json" -type file
}

View File

@ -41,9 +41,3 @@ fi
[[ -f "Generated/pull-images.sh" ]] && chmod +x Generated/pull-images.sh
[[ -f "Generated/save-images.sh" ]] && chmod +x Generated/save-images.sh
if [ "$BTCPAYGEN_REVERSEPROXY" == "traefik" ]; then
cp Traefik/traefik.toml Generated/traefik.toml
:> Generated/acme.json
chmod 600 Generated/acme.json
fi

View File

@ -2,7 +2,9 @@
<PropertyGroup>
<OutputType>Exe</OutputType>
<TargetFramework>netcoreapp2.1</TargetFramework>
<TargetFramework>net10.0</TargetFramework>
<LangVersion>12</LangVersion>
<StartupObject>DockerFileBuildHelper.Program</StartupObject>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="YamlDotNet" Version="5.2.1" />

View File

@ -1,8 +1,4 @@
using System;
using System.Collections.Generic;
using System.Text;
namespace DockerFileBuildHelper
namespace DockerFileBuildHelper
{
public class DockerInfo
{
@ -13,11 +9,12 @@ namespace DockerFileBuildHelper
public string GitLink { get; set; }
public string GitRef { get; set; }
public bool SupportedByUs { get; set; }
public bool Deprecated { get; set; }
public Image Image { get; internal set; }
public string RawLink { get; set; }
public string GetGithubLinkOf(string path)
{
return $"https://raw.githubusercontent.com/{GitLink.Substring("https://github.com/".Length)}/{GitRef}/{path}";
return RawLink ?? $"https://raw.githubusercontent.com/{GitLink.Substring("https://github.com/".Length)}{(GitRef is null ? string.Empty : ("/" + GitRef))}/{path}";
}
}
}

View File

@ -38,6 +38,10 @@ namespace DockerFileBuildHelper
img.User = match.Groups[1].Length == 0 ? string.Empty : match.Groups[1].Value.Substring(0, match.Groups[1].Value.Length - 1);
img.Name = match.Groups[2].Value;
img.Tag = match.Groups[3].Value;
if (img.Tag.Contains('@'))
{
img.Tag = img.Tag.Split('@')[0];
}
if (img.Tag == string.Empty)
img.Tag = "latest";
return img;

View File

@ -1,9 +1,8 @@
using System;
using YamlDotNet;
using YamlDotNet.Helpers;
using System.Linq;
using System.Collections.Generic;
using System.IO;
using System.Text.RegularExpressions;
using YamlDotNet.RepresentationModel;
using YamlDotNet.Serialization;
using System.Net.Http;
@ -40,9 +39,11 @@ namespace DockerFileBuildHelper
foreach (var image in new[]
{
Image.Parse("btcpayserver/docker-compose-generator"),
Image.Parse("btcpayserver/docker-compose:1.28.5"),
}.Concat(GetImages(fragmentDirectory)))
{
// TODO: Ask beldex guys
if (image.Name == "beldex")
continue;
Console.WriteLine($"Image: {image.ToString()}");
var info = GetDockerInfo(image);
if (info == null)
@ -160,6 +161,7 @@ namespace DockerFileBuildHelper
dockerInfos = dockerInfos.OrderBy(i => i.Image.Source).ToList();
foreach (var image in dockerInfos)
{
if (image.Deprecated) continue;
tb.Append($"| {image.Image.ToString(false)} | {image.Image.Tag} |");
if (!string.IsNullOrEmpty(image.DockerFilePath))
{
@ -234,9 +236,9 @@ namespace DockerFileBuildHelper
{
case "pihole":
dockerInfo.GitLink = "https://github.com/pi-hole/docker-pi-hole";
dockerInfo.DockerFilePath = $"Dockerfile";
dockerInfo.DockerFilePathARM32v7 = $"Dockerfile";
dockerInfo.DockerFilePathARM64v8 = $"Dockerfile";
dockerInfo.DockerFilePath = $"src/Dockerfile";
dockerInfo.DockerFilePathARM32v7 = $"src/Dockerfile";
dockerInfo.DockerFilePathARM64v8 = $"src/Dockerfile";
dockerInfo.GitRef = $"{image.Tag}";
dockerInfo.SupportedByUs = true;
break;
@ -248,6 +250,29 @@ namespace DockerFileBuildHelper
dockerInfo.GitRef = $"EPS/{image.Tag}";
dockerInfo.SupportedByUs = true;
break;
case "woocommerce":
dockerInfo.DockerFilePath = $"WooCommerce/{NoRevision(image.Tag)}/linuxamd64.Dockerfile";
dockerInfo.DockerFilePathARM64v8 = $"WooCommerce/{NoRevision(image.Tag)}/linuxarm64v8.Dockerfile";
dockerInfo.GitLink = "https://github.com/btcpayserver/dockerfile-deps";
dockerInfo.GitRef = $"WooCommerce/{image.Tag}";
dockerInfo.SupportedByUs = true;
break;
case "cloudflared":
dockerInfo.DockerFilePath = $"Cloudflared/{NoRevision(image.Tag)}/Dockerfile";
dockerInfo.DockerFilePathARM32v7 = dockerInfo.DockerFilePath;
dockerInfo.DockerFilePathARM64v8 = dockerInfo.DockerFilePath;
dockerInfo.GitLink = "https://github.com/btcpayserver/dockerfile-deps";
dockerInfo.GitRef = $"Cloudflared/{image.Tag}";
dockerInfo.SupportedByUs = true;
break;
case "joinmarket":
dockerInfo.DockerFilePath = $"JoinMarket/{NoRevision(image.Tag)}/linuxamd64.Dockerfile";
dockerInfo.DockerFilePathARM32v7 = $"JoinMarket/{NoRevision(image.Tag)}/linuxarm32v7.Dockerfile";
dockerInfo.DockerFilePathARM64v8 = $"JoinMarket/{NoRevision(image.Tag)}/linuxarm64v8.Dockerfile";
dockerInfo.GitLink = "https://github.com/btcpayserver/dockerfile-deps";
dockerInfo.GitRef = $"JoinMarket/{image.Tag}";
dockerInfo.SupportedByUs = true;
break;
case "btglnd":
dockerInfo.DockerFilePath = "Dockerfile";
dockerInfo.GitLink = "https://github.com/vutov/lnd";
@ -262,22 +287,69 @@ namespace DockerFileBuildHelper
dockerInfo.SupportedByUs = true;
break;
case "docker-compose-generator":
dockerInfo.DockerFilePath = "docker-compose-generator/linuxamd64.Dockerfile";
dockerInfo.DockerFilePathARM32v7 = "docker-compose-generator/linuxarm32v7.Dockerfile";
dockerInfo.DockerFilePathARM64v8 = "docker-compose-generator/linuxarm64v8.Dockerfile";
dockerInfo.DockerFilePath = "docker-compose-generator/Dockerfile";
dockerInfo.DockerFilePathARM32v7 = "docker-compose-generator/Dockerfile";
dockerInfo.DockerFilePathARM64v8 = "docker-compose-generator/Dockerfile";
dockerInfo.GitLink = "https://github.com/btcpayserver/btcpayserver-docker";
dockerInfo.GitRef = $"dcg-latest";
dockerInfo.SupportedByUs = true;
break;
case "shopify-app-deployer":
dockerInfo.DockerFilePath = "Dockerfile";
dockerInfo.DockerFilePathARM32v7 = "Dockerfile";
dockerInfo.DockerFilePathARM64v8 = "Dockerfile";
dockerInfo.GitLink = "https://github.com/btcpayserver/shopify-app";
dockerInfo.GitRef = image.Tag;
dockerInfo.SupportedByUs = true;
break;
case "mwebd":
dockerInfo.DockerFilePath = "Dockerfile";
dockerInfo.DockerFilePathARM32v7 = "Dockerfile";
dockerInfo.DockerFilePathARM64v8 = "Dockerfile";
dockerInfo.GitLink = "https://github.com/ltcmweb/btcpayserver-ltcmweb-plugin";
dockerInfo.GitRef = "main";
dockerInfo.SupportedByUs = false;
break;
case "tallycoin_connect":
dockerInfo.DockerFilePath = "Dockerfile";
dockerInfo.DockerFilePathARM32v7 = $"Dockerfile.arm32v7";
dockerInfo.DockerFilePathARM64v8 = $"Dockerfile.arm64v8";
dockerInfo.GitLink = "https://github.com/djbooth007/tallycoin_connect";
dockerInfo.GitRef = $"{image.Tag}";
dockerInfo.SupportedByUs = false;
break;
case "lnd_lit":
dockerInfo.DockerFilePath = "Dockerfile";
dockerInfo.DockerFilePathARM64v8 = $"Dockerfile";
dockerInfo.GitLink = "https://github.com/lightninglabs/lightning-terminal";
dockerInfo.GitRef = $"{image.Tag}";
dockerInfo.SupportedByUs = false;
break;
case "mempool":
dockerInfo.DockerFilePath = "docker/frontend/Dockerfile";
dockerInfo.DockerFilePathARM32v7 = "docker/frontend/Dockerfile";
dockerInfo.DockerFilePathARM64v8 = "docker/frontend/Dockerfile";
dockerInfo.GitLink = "https://github.com/mempool/mempool";
dockerInfo.GitRef = $"{image.Tag}";
dockerInfo.SupportedByUs = false;
break;
case "docker-bitcoingold":
dockerInfo.DockerFilePath = $"bitcoingold/{image.Tag}/Dockerfile";
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 = "contrib/linuxarm32v7.Dockerfile";
dockerInfo.DockerFilePathARM64v8 = "contrib/linuxarm64v8.Dockerfile";
dockerInfo.DockerFilePathARM32v7 = "Dockerfile";
dockerInfo.DockerFilePathARM64v8 = "Dockerfile";
dockerInfo.GitLink = "https://github.com/btcpayserver/lightning";
dockerInfo.GitRef = $"basedon-{image.Tag}";
dockerInfo.SupportedByUs = true;
@ -287,12 +359,18 @@ namespace DockerFileBuildHelper
dockerInfo.GitLink = "https://github.com/Groestlcoin/lightning";
dockerInfo.GitRef = $"{image.Tag}";
break;
case "chatwoot":
dockerInfo.DockerFilePath = $"docker/Dockerfile";
dockerInfo.GitLink = "https://github.com/chatwoot/chatwoot";
dockerInfo.GitRef = $"{image.Tag}";
dockerInfo.SupportedByUs = false;
break;
case "lightning-charge":
dockerInfo.DockerFilePath = $"Dockerfile";
dockerInfo.DockerFilePathARM32v7 = "arm32v7.Dockerfile";
dockerInfo.DockerFilePathARM64v8 = "arm64v8.Dockerfile";
dockerInfo.GitLink = "https://github.com/ElementsProject/lightning-charge";
dockerInfo.GitRef = $"v{image.Tag.Replace("-standalone", "")}";
dockerInfo.GitRef = NoRevision($"v{image.Tag.Replace("-standalone", "")}");
dockerInfo.SupportedByUs = true;
break;
case "docker-bitcoinplus":
@ -335,13 +413,10 @@ namespace DockerFileBuildHelper
dockerInfo.GitLink = "https://github.com/JeffVandrewJr/isso";
dockerInfo.GitRef = $"patron.{image.Tag.Substring("atron.".Length)}";
break;
case "docker-woocommerce":
dockerInfo.DockerFilePath = $"Dockerfile";
dockerInfo.GitLink = "https://github.com/btcpayserver/docker-woocommerce";
dockerInfo.GitRef = $"v{image.Tag}";
break;
case "mariadb":
dockerInfo.DockerFilePath = $"{image.Tag}/Dockerfile";
// 10.5.8 -> 10.5
var tag = Regex.Match(image.Tag, "\\d*\\.\\d*");
dockerInfo.DockerFilePath = $"{tag.Value}/Dockerfile";
dockerInfo.GitLink = "https://github.com/docker-library/mariadb";
dockerInfo.GitRef = $"master";
break;
@ -350,6 +425,32 @@ namespace DockerFileBuildHelper
dockerInfo.GitLink = "https://github.com/ChekaZ/docker";
dockerInfo.GitRef = "master";
break;
case "phoenixd":
dockerInfo.DockerFilePath = ".docker/Dockerfile";
dockerInfo.DockerFilePathARM32v7 = ".docker/Dockerfile";
dockerInfo.DockerFilePathARM64v8 = ".docker/Dockerfile";
dockerInfo.GitLink = "https://github.com/ACINQ/phoenixd";
dockerInfo.GitRef = $"v{image.Tag}";
dockerInfo.SupportedByUs = false;
break;
case "lightwalletd":
dockerInfo.DockerFilePath = "Dockerfile";
dockerInfo.GitLink = "https://github.com/zcash/lightwalletd";
dockerInfo.GitRef = $"master";
dockerInfo.SupportedByUs = false;
break;
case "zebra":
dockerInfo.DockerFilePath = "docker/Dockerfile";
dockerInfo.GitLink = "https://github.com/ZcashFoundation/zebra";
dockerInfo.GitRef = $"main";
dockerInfo.SupportedByUs = false;
break;
case "zcash-walletd":
dockerInfo.DockerFilePath = "docker/Dockerfile";
dockerInfo.GitLink = "https://github.com/elemental-pay/zcash-walletd";
dockerInfo.GitRef = $"feat/data-config";
dockerInfo.SupportedByUs = false;
break;
case "lnd":
dockerInfo.DockerFilePath = "linuxamd64.Dockerfile";
dockerInfo.DockerFilePathARM32v7 = "linuxarm32v7.Dockerfile";
@ -365,9 +466,12 @@ namespace DockerFileBuildHelper
dockerInfo.SupportedByUs = false;
break;
case "monero":
dockerInfo.DockerFilePath = "Dockerfile";
dockerInfo.GitLink = "https://github.com/Kukks/monero-docker";
dockerInfo.GitRef = $"x86_64";
dockerInfo.DockerFilePath = $"Monero/{NoRevision(image.Tag)}/Dockerfile";
dockerInfo.DockerFilePathARM32v7 = $"Monero/{NoRevision(image.Tag)}/Dockerfile";
dockerInfo.DockerFilePathARM64v8 = $"Monero/{NoRevision(image.Tag)}/Dockerfile";
dockerInfo.GitLink = "https://github.com/btcpayserver/dockerfile-deps";
dockerInfo.GitRef = $"Monero/{image.Tag}";
dockerInfo.SupportedByUs = true;
break;
case "bitcoin":
{
@ -380,6 +484,17 @@ namespace DockerFileBuildHelper
dockerInfo.SupportedByUs = true;
break;
}
case "bitcoinknots":
{
var tagNoRevision = image.Tag.Split('-').First();
dockerInfo.DockerFilePath = $"BitcoinKnots/{tagNoRevision}/linuxamd64.Dockerfile";
dockerInfo.DockerFilePathARM32v7 = $"BitcoinKnots/{tagNoRevision}/linuxarm32v7.Dockerfile";
dockerInfo.DockerFilePathARM64v8 = $"BitcoinKnots/{tagNoRevision}/linuxarm64v8.Dockerfile";
dockerInfo.GitLink = "https://github.com/btcpayserver/dockerfile-deps";
dockerInfo.GitRef = $"BitcoinKnots/{image.Tag}";
dockerInfo.SupportedByUs = true;
break;
}
case "elements":
{
var tagNoRevision = image.Tag.Split('-').First();
@ -400,32 +515,30 @@ namespace DockerFileBuildHelper
break;
case "dash":
dockerInfo.DockerFilePath = $"Dash/{image.Tag}/linuxamd64.Dockerfile";
dockerInfo.DockerFilePathARM32v7 = $"Dash/{image.Tag}/linuxarm32v7.Dockerfile";
dockerInfo.DockerFilePathARM64v8 = $"Dash/{image.Tag}/linuxarm64v8.Dockerfile";
dockerInfo.GitLink = "https://github.com/btcpayserver/dockerfile-deps";
dockerInfo.GitRef = $"Dash/{image.Tag}";
break;
case "btcpayserver":
dockerInfo.DockerFilePath = "amd64.Dockerfile";
dockerInfo.DockerFilePathARM32v7 = "arm32v7.Dockerfile";
dockerInfo.DockerFilePathARM64v8 = "arm64v8.Dockerfile";
dockerInfo.DockerFilePath = "Dockerfile";
dockerInfo.DockerFilePathARM32v7 = "Dockerfile";
dockerInfo.DockerFilePathARM64v8 = "Dockerfile";
dockerInfo.GitLink = "https://github.com/btcpayserver/btcpayserver";
// v1.0.5.4$<BTCPAY_BUILD_CONFIGURATION>
dockerInfo.GitRef = $"v{image.Tag.Substring(0, image.Tag.IndexOf('$'))}";
dockerInfo.GitRef = $"v{image.Tag}";
dockerInfo.SupportedByUs = true;
break;
case "rtl":
dockerInfo.DockerFilePath = "Dockerfile";
dockerInfo.DockerFilePathARM32v7 = "Dockerfile.arm32v7";
dockerInfo.DockerFilePathARM64v8 = "Dockerfile.arm64v8";
dockerInfo.GitLink = "https://github.com/ShahanaFarooqui/RTL";
dockerInfo.GitRef = $"v{image.Tag}";
dockerInfo.DockerFilePathARM32v7 = "Dockerfile";
dockerInfo.DockerFilePathARM64v8 = "Dockerfile";
dockerInfo.GitLink = "https://github.com/Ride-The-Lightning/RTL";
dockerInfo.GitRef = $"{image.Tag}";
dockerInfo.SupportedByUs = true;
break;
case "nbxplorer":
dockerInfo.DockerFilePath = "Dockerfile.linuxamd64";
dockerInfo.DockerFilePathARM32v7 = "Dockerfile.linuxarm32v7";
dockerInfo.DockerFilePathARM64v8 = "Dockerfile.linuxarm64v8";
dockerInfo.DockerFilePath = "Dockerfile";
dockerInfo.DockerFilePathARM32v7 = "Dockerfile";
dockerInfo.DockerFilePathARM64v8 = "Dockerfile";
dockerInfo.GitLink = "https://github.com/dgarage/nbxplorer";
dockerInfo.GitRef = $"v{image.Tag}";
dockerInfo.SupportedByUs = true;
@ -461,10 +574,12 @@ namespace DockerFileBuildHelper
dockerInfo.GitLink = "https://github.com/ChekaZ/docker";
dockerInfo.GitRef = "master";
break;
case "docker-groestlcoin":
dockerInfo.DockerFilePath = $"groestlcoin/{image.Tag}/Dockerfile";
dockerInfo.GitLink = "https://github.com/Groestlcoin/docker-groestlcoin";
dockerInfo.GitRef = "master";
case "btcpayserver/groestlcoin":
dockerInfo.DockerFilePath = $"Groestlcoin/{NoRevision(image.Tag)}/linuxamd64.Dockerfile";
dockerInfo.DockerFilePathARM32v7 = $"Groestlcoin/{NoRevision(image.Tag)}/linuxarm32v7.Dockerfile";
dockerInfo.DockerFilePathARM64v8 = $"Groestlcoin/{NoRevision(image.Tag)}/linuxarm64v8.Dockerfile";
dockerInfo.GitLink = "https://github.com/btcpayserver/dockerfile-deps";
dockerInfo.GitRef = $"Groestlcoin/{NoRevision(image.Tag)}";
break;
case "docker-viacoin":
dockerInfo.DockerFilePath = $"viacoin/{image.Tag}/docker-viacoin";
@ -474,6 +589,7 @@ namespace DockerFileBuildHelper
case "litecoin":
dockerInfo.DockerFilePath = $"Litecoin/{NoRevision(image.Tag)}/linuxamd64.Dockerfile";
dockerInfo.DockerFilePathARM32v7 = $"Litecoin/{NoRevision(image.Tag)}/linuxarm32v7.Dockerfile";
dockerInfo.DockerFilePathARM64v8 = $"Litecoin/{NoRevision(image.Tag)}/linuxarm64v8.Dockerfile";
dockerInfo.GitLink = "https://github.com/btcpayserver/dockerfile-deps";
dockerInfo.GitRef = $"Litecoin/{image.Tag}";
break;
@ -483,25 +599,25 @@ namespace DockerFileBuildHelper
dockerInfo.GitRef = "master";
break;
case "nginx":
dockerInfo.DockerFilePath = $"stable/stretch/Dockerfile";
dockerInfo.DockerFilePathARM32v7 = $"stable/stretch/Dockerfile";
dockerInfo.DockerFilePathARM64v8 = $"stable/stretch/Dockerfile";
dockerInfo.DockerFilePath = $"stable/debian/Dockerfile";
dockerInfo.DockerFilePathARM32v7 = $"stable/debian/Dockerfile";
dockerInfo.DockerFilePathARM64v8 = $"stable/debian/Dockerfile";
dockerInfo.GitLink = "https://github.com/nginxinc/docker-nginx";
dockerInfo.GitRef = image.Tag;
dockerInfo.GitRef = "1.23.2"; // In reality we are on 1.23.3, but they didn't published yet
dockerInfo.SupportedByUs = true;
break;
case "docker-gen":
dockerInfo.DockerFilePath = $"linuxamd64.Dockerfile";
dockerInfo.DockerFilePathARM32v7 = $"linuxarm32v7.Dockerfile";
dockerInfo.DockerFilePathARM64v8 = $"linuxarm64v8.Dockerfile";
dockerInfo.DockerFilePath = $"Dockerfile.alpine";
dockerInfo.DockerFilePathARM32v7 = $"Dockerfile.alpine";
dockerInfo.DockerFilePathARM64v8 = $"Dockerfile.alpine";
dockerInfo.GitLink = "https://github.com/btcpayserver/docker-gen";
dockerInfo.GitRef = $"v{image.Tag}";
dockerInfo.GitRef = $"{image.Tag}";
dockerInfo.SupportedByUs = true;
break;
case "letsencrypt-nginx-proxy-companion":
dockerInfo.DockerFilePath = $"linuxamd64.Dockerfile";
dockerInfo.DockerFilePathARM32v7 = $"linuxarm32v7.Dockerfile";
dockerInfo.DockerFilePathARM64v8 = $"linuxarm64v8.Dockerfile";
dockerInfo.DockerFilePath = $"Dockerfile";
dockerInfo.DockerFilePathARM32v7 = $"Dockerfile";
dockerInfo.DockerFilePathARM64v8 = $"Dockerfile";
dockerInfo.GitLink = "https://github.com/btcpayserver/docker-letsencrypt-nginx-proxy-companion";
dockerInfo.GitRef = $"v{image.Tag}";
dockerInfo.SupportedByUs = true;
@ -517,11 +633,11 @@ namespace DockerFileBuildHelper
dockerInfo.GitRef = $"f1a8498333ae3ab340b5b39fbac1d7e1dc0d628c";
break;
case "postgres":
dockerInfo.DockerFilePath = $"9.6/Dockerfile";
dockerInfo.DockerFilePathARM32v7 = $"9.6/Dockerfile";
dockerInfo.DockerFilePathARM64v8 = $"9.6/Dockerfile";
dockerInfo.GitLink = "https://github.com/docker-library/postgres";
dockerInfo.GitRef = $"b7cb3c6eacea93be2259381033be3cc435649369";
dockerInfo.DockerFilePath = $"Postgres/{NoRevision(image.Tag)}/linuxamd64.Dockerfile";
dockerInfo.DockerFilePathARM32v7 = $"Postgres/{NoRevision(image.Tag)}/linuxarm32v7.Dockerfile";
dockerInfo.DockerFilePathARM64v8 = $"Postgres/{NoRevision(image.Tag)}/linuxarm64v8.Dockerfile";
dockerInfo.GitLink = "https://github.com/btcpayserver/dockerfile-deps";
dockerInfo.GitRef = $"Postgres/{image.Tag}";
dockerInfo.SupportedByUs = true;
break;
case "traefik":
@ -555,10 +671,10 @@ namespace DockerFileBuildHelper
break;
case "thunderhub":
dockerInfo.DockerFilePath = $"Dockerfile";
dockerInfo.DockerFilePathARM32v7 = "arm32v7.Dockerfile";
dockerInfo.DockerFilePathARM64v8 = "arm64v8.Dockerfile";
dockerInfo.DockerFilePathARM32v7 = "Dockerfile";
dockerInfo.DockerFilePathARM64v8 = "Dockerfile";
dockerInfo.GitLink = "https://github.com/apotdevin/thunderhub";
dockerInfo.GitRef = $"{image.Tag.Split('-')[1]}";
dockerInfo.GitRef = $"v{image.Tag.Split('-')[1]}";
dockerInfo.SupportedByUs = false;
break;
case "python-teos":
@ -569,28 +685,34 @@ namespace DockerFileBuildHelper
dockerInfo.GitRef = $"master";
dockerInfo.SupportedByUs = false;
break;
case "benjaminchodroff/rust-teos":
dockerInfo.DockerFilePath = $"docker/Dockerfile";
dockerInfo.GitLink = "https://github.com/benjaminchodroff/rust-teos";
dockerInfo.GitRef = $"master";
dockerInfo.SupportedByUs = false;
break;
case "zammad/zammad-docker-compose" when image.Tag.StartsWith("zammad-postgresql-"):
dockerInfo.DockerFilePath = $"containers/zammad-postgresql/Dockerfile";
dockerInfo.GitLink = "https://github.com/zammad/zammad-docker-compose";
dockerInfo.GitRef = $"master";
dockerInfo.GitRef = $"ff20084ce2829486076e9781fe27407ca6cc09bb";
dockerInfo.SupportedByUs = false;
break;
case "zammad/zammad-docker-compose" when image.Tag.StartsWith("zammad-elasticsearch-"):
dockerInfo.DockerFilePath = $"containers/zammad-elasticsearch/Dockerfile";
dockerInfo.GitLink = "https://github.com/zammad/zammad-docker-compose";
dockerInfo.GitRef = $"master";
dockerInfo.GitRef = $"ff20084ce2829486076e9781fe27407ca6cc09bb";
dockerInfo.SupportedByUs = false;
break;
case "zammad/zammad-docker-compose" when image.Tag.StartsWith("zammad-"):
dockerInfo.DockerFilePath = $"containers/zammad/Dockerfile";
dockerInfo.GitLink = "https://github.com/zammad/zammad-docker-compose";
dockerInfo.GitRef = $"master";
dockerInfo.GitRef = $"ff20084ce2829486076e9781fe27407ca6cc09bb";
dockerInfo.SupportedByUs = false;
break;
case "memcached" when image.Tag.EndsWith("alpine"):
dockerInfo.DockerFilePath = $"alpine/Dockerfile";
dockerInfo.GitLink = "https://github.com/docker-library/memcached";
dockerInfo.GitRef = $"master";
dockerInfo.GitRef = $"eb38bf28263b8e5bb7367797cb7b181b65d769bd";
dockerInfo.SupportedByUs = false;
break;
case "bwt":
@ -600,6 +722,86 @@ 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.DockerFilePathARM32v7 = $"Dockerfile";
dockerInfo.DockerFilePathARM64v8 = $"Dockerfile";
dockerInfo.GitLink = "https://github.com/stakwork/sphinx-relay";
dockerInfo.GitRef = $"{image.Tag}";
dockerInfo.SupportedByUs = false;
break;
case "lndhub":
dockerInfo.DockerFilePath = $"Dockerfile";
dockerInfo.DockerFilePathARM32v7 = $"Dockerfile";
dockerInfo.DockerFilePathARM64v8 = $"Dockerfile";
dockerInfo.GitLink = "https://github.com/BlueWallet/LndHub";
dockerInfo.GitRef = $"{image.Tag.Split("@")[0]}";
dockerInfo.SupportedByUs = false;
dockerInfo.Deprecated = true;
break;
case "fireflyiii/core":
dockerInfo.DockerFilePath = $"Dockerfile";
dockerInfo.DockerFilePathARM32v7 = $"Dockerfile";
dockerInfo.DockerFilePathARM64v8 = $"Dockerfile";
dockerInfo.GitLink = "https://dev.azure.com/Firefly-III/_git/MainImage";
dockerInfo.RawLink = "https://dev.azure.com/Firefly-III/66fb773b-063e-42d7-b6a5-e7729a22e8b3/_apis/git/repositories/e9c3dcf8-4533-4ef1-83cc-75527cab3377/items?path=%2FDockerfile&versionDescriptor%5BversionOptions%5D=0&versionDescriptor%5BversionType%5D=0&versionDescriptor%5Bversion%5D=main&resolveLfs=true&%24format=octetStream&api-version=5.0&download=true";
dockerInfo.GitRef = null;
break;
case "lightninglabs/lightning-terminal":
dockerInfo.GitLink = "https://github.com/lightninglabs/lightning-terminal";
dockerInfo.DockerFilePath = $"Dockerfile";
dockerInfo.DockerFilePathARM64v8 = $"Dockerfile";
dockerInfo.GitRef = image.Tag.Replace("-path-prefix", "");
break;
case "chatwoot/chatwoot":
dockerInfo.DockerFilePath = $"docker/Dockerfile";
dockerInfo.DockerFilePathARM32v7 = $"docker/Dockerfile";
dockerInfo.DockerFilePathARM64v8 = $"docker/Dockerfile";
dockerInfo.GitLink = "https://github.com/chatwoot/chatwoot";
dockerInfo.GitRef = $"{image.Tag}";
break;
case "podcastindexorg/podcasting20-helipad":
dockerInfo.DockerFilePath = $"umbrel/Dockerfile";
dockerInfo.DockerFilePathARM32v7 = $"umbrel/Dockerfile";
dockerInfo.DockerFilePathARM64v8 = $"umbrel/Dockerfile";
dockerInfo.GitLink = "https://github.com/Podcastindex-org/helipad";
dockerInfo.GitRef = $"{image.Tag}";
break;
case "kukks/nnostr-relay":
dockerInfo.DockerFilePath = $"Relay/Dockerfile";
dockerInfo.DockerFilePathARM32v7 = $"Relay/Dockerfile";
dockerInfo.DockerFilePathARM64v8 = $"Relay/Dockerfile";
dockerInfo.GitLink = "https://github.com/kukks/nnostr";
dockerInfo.GitRef = $"Relay/{image.Tag}";
break;
case "mempool/frontend":
dockerInfo.DockerFilePath = $"docker/frontend/Dockerfile";
dockerInfo.DockerFilePathARM32v7 = $"docker/frontend/Dockerfile";
dockerInfo.DockerFilePathARM64v8 = $"docker/frontend/Dockerfile";
dockerInfo.GitLink = "https://github.com/mempool/mempool";
dockerInfo.GitRef = image.Tag;
break;
case "mempool/backend":
dockerInfo.DockerFilePath = $"docker/backend/Dockerfile";
dockerInfo.DockerFilePathARM32v7 = $"docker/backend/Dockerfile";
dockerInfo.DockerFilePathARM64v8 = $"docker/backend/Dockerfile";
dockerInfo.GitLink = "https://github.com/mempool/mempool";
dockerInfo.GitRef = image.Tag;
break;
case "timescale/timescaledb":
dockerInfo.DockerFilePath = $"Dockerfile";
dockerInfo.DockerFilePathARM32v7 = $"Dockerfile";
dockerInfo.DockerFilePathARM64v8 = $"Dockerfile";
dockerInfo.GitLink = "https://github.com/timescale/timescaledb-docker";
dockerInfo.GitRef = "main";
break;
case "ghcr.io/bisoncraft/decred":
dockerInfo.DockerFilePath = $"Dockerfile.decred";
//dockerInfo.DockerFilePathARM32v7 = $"Dockerfile.decred";
//dockerInfo.DockerFilePathARM64v8 = $"Dockerfile.decred";
dockerInfo.GitLink = "https://github.com/bisoncraft/btcpayserver-decred-plugin";
dockerInfo.GitRef = $"v{image.Tag}";
break;
default:
if (firstTry)
{

File diff suppressed because it is too large Load Diff

View File

@ -1,36 +1,39 @@
# Fast sync for Bitcoin
# Fast sync Bitcoin for BTCPay Server
## What problem does Fast Sync solve?
When you start a new BTCPay Server, you need to synchronize your Bitcoin node from the genesis block.
Validating from the genesis blocks takes in general 1 or 2 days on affordable servers. (around 10$ per months)
Validating from the genesis blocks takes, in general, 1 or 2 days on affordable servers. (around 10$ per month)
However, on some low powered devices like raspberry PI, synchronization time will take around 2 weeks nowadays. (and it will linearly increase with time)
However, synchronization time will take around two weeks on some low-powered devices like a raspberry PI. (and it will linearly increase with time)
Fast sync provides a solution to decrease dramatically the synchronization time to minutes or few hours.
Fast Sync provides a solution to decrease the synchronization time dramatically to minutes or a few hours.
__Current UTXO Set snapshots only work for Bitcoin Core 0.17.0 or higher. Do NOT use these sets on older versions of Bitcoin Core (0.16.3 or lower)__
:::warning
Current UTXO Set snapshots only work for Bitcoin Core 0.17.0 or higher. Do NOT use these sets on older versions of Bitcoin Core (0.16.3 or lower)
:::
## How does Fast Sync solve it?
## How does Fast Sync solve the problem?
In order for Bitcoin software to operate, you do not need all the history of blocks from the genesis.
For Bitcoin software to operate, you do not need all the history of blocks from the genesis.
What you need is the state of Bitcoin up to a certain block (this state is called `UTXO Set`), and around 300 blocks before this point.
You need the state of Bitcoin up to a certain block (this state is called `UTXO Set`), and around ~300 blocks before this point.
Fast Sync downloads the UTXO Set at a specific block on an external server, and deploy it on your node. We call this file a `UTXO Set snapshot`.
When your node start up again, it will only need to synchronize from the snapshot, to the latest blocks.
When your node starts up again, with the `UTXO Set snapshot` it will only need to synchronize from this point to the latest blocks.
## What are the downsides of Fast Sync?
### Malicious UTXO Set
Fast Sync can be potentially abused:
1. The attacker gives you an `UTXO Set snapshot` which does not follow Bitcoin consensus
2. The attacker makes a purchase to your store.
3. Nodes following the consensus would not recognize the payment as valid, but your node will.
4. The coins the attacker sent you are just worthless
Fast Sync can potentially get abused:
1. The attacker gives you a `UTXO Set snapshot`, which does not follow Bitcoin consensus.
2. The attacker makes a purchase to your store.
3. Nodes following the consensus would not recognize the payment as valid, but your node will.
4. The coins the attacker sent you are just worthless.
Other attacks can completely bring down your node.
@ -40,133 +43,202 @@ As a merchant, you generally do not care about this issue. Merchants are mainly
However, if you plan to send payments from your lightning node, you may have issues:
Because you do not have old blocks, then your lightning node won't see any channels which have been created prior to the snapshot.
Because you do not have old blocks, your lightning node won't see any channels created prior to the snapshot.
If this is a problem for you, just use an older snapshot.
If this is a problem for you, use an older snapshot.
## How to verify that the UTXO Set snapshot follows the consensus?
### If you trust the owner of this repository....
The snapshots recognized as valid by the `btcpayserver-docker` repository you cloned can be found on [utxo-sets](utxo-sets).
The snapshots recognized as valid by the `btcpayserver-docker` repository you've cloned, can be found on [utxo-sets](utxo-sets).
When you SSH into your new Sync BTCPay Server (by the use of Putty, for example), the first thing you have to do is become `root`.
```bash
sudo su -
```
Before you start the [load-utxo-set.sh](load-utxo-set.sh), you must bring down your BTCPay Server.
In the `btcpayserver-docker` directory you run `btcpay-down.sh` to bring down your instance.
```bash
cd $BTCPAY_BASE_DIRECTORY/btcpayserver-docker
./btcpay-down.sh
```
![BTCPay Server FastSync](../../docs/img/fastsync/btcpayfastsync1.jpg)
After you've shut down BTCPay Server, you now go into the FastSync directory and run the `load-utxo-set.sh` script:
```bash
cd $BTCPAY_BASE_DIRECTORY/btcpayserver-docker/contrib/FastSync
./load-utxo-set.sh
```
The script [load-utxo-set.sh](load-utxo-set.sh) will download the utxo-set from the environment variable `UTXO_DOWNLOAD_LINK`.
If `UTXO_DOWNLOAD_LINK` is empty, `NBITCOIN_NETWORK` (with value set to `mainnet` or `testnet`) will be used to take a default `UTXO_DOWNLOAD_LINK` that we hard coded inside [load-utxo-set.sh](load-utxo-set.sh).
![BTCPay Server FastSync](../../docs/img/fastsync/btcpayfastsync2.jpg)
Once the files are downloaded, the hash will be checked against those in [utxo-sets](utxo-sets).
![BTCPay Server FastSync](../../docs/img/fastsync/btcpayfastsync3.jpg)
However: This only prove that `if the owner of this git repository is honest`, then the utxo-set are correct.
After the [load-utxo-set.sh](load-utxo-set.sh) is done, you will be warned, and asked to delete the docker volume `generated_bitcoin_wallet_datadir`.
This will be recreated when we now run the `btcpay-up.sh` script.
NOTE: **Completing those steps does not mean that the UTXO set snapshot is legit**. It only mean that you trust the owner of this git repositoy to have verified that it is legit.
```bash
docker volume rm generated_bitcoin_wallet_datadir
```
Now go back to the `btcpayserver-docker` directory, and let's restart your Server with `./btcpay-up.sh` to sync the rest!
```bash
cd $BTCPAY_BASE_DIRECTORY/btcpayserver-docker
./btcpay-up.sh
```
The rest of the Sync will take place on your BTCPay Server until it reaches the latest block height.
You can either follow this process in the UI of the BTCPay Server or run the following command in the CLI. This will show you the latest log output and the current block height of your `Fast Sync` node.
```bash
docker logs --tail -100 btcpayserver_bitcoind
```
![BTCPay Server FastSync](../../docs/img/fastsync/btcpayfastsync4.jpg)
:::warning
**However: This will only prove that the owner of this git repository is honest, and the utxo-sets are verified and correct.**
**Completing those steps does not mean that the UTXO set snapshot is legit. It only means that you trust the owner of this git repository to have verified that it is legit.**
:::
### Don't trust, verify!<a name="donttrust"></a>
If you don't trust anybody, which should be the case as much as possible, then here are the steps to verify that the UTXO set you just loaded is not malicious.
1. You need another node that you own, entirely `under your control`, that `you synchronized from the genesis block`. Let's call this node `Trusty`.
2. In the previous [step](./README.md#if-you-trust-the-owner-of-this-repository) you've set up the `Fast Sync` node. Let's call this `Synchy`.
3. Wait for `Synchy` to be fully synced.
4. Now on, `Synchy` and `Trusty` run the following command at the same time:
If `Synchy` or `Trusty` are both using BTCPay Server, go to the `btcpayserver-docker` directory and use:
```bash
cd $BTCPAY_BASE_DIRECTORY/btcpayserver-docker
./bitcoin-cli.sh gettxoutsetinfo
```
Or use if non BTCPay Server node :
```bash
bitcoin-cli gettxoutsetinfo
```
Running this command might take some time, and nothing will show up in the terminal in the meantime.
5. Verify that the output of `Synchy` and `Trusty` are identical (you can ignore `disk_size`).
![BTCPay Server FastSync](../../docs/img/fastsync/btcpayfastsync6.jpg)
:::warning
**Completing those steps, assuming the software you are running is not malicious, correctly prove that the UTXO set snapshot is legit**.
:::
### If you trust someone else...
This repository contains the signatures of some developers, for example [sigs/NicolasDorier.utxo-sets.asc](sigs/NicolasDorier.utxo-sets.asc) contains the hashes that `NicolasDorier` verified himself.
You need to verify with [KeyBase command line](https://keybase.io/docs/command_line) that the signature is legit:
```bash
keybase pgp verify -i sigs/NicolasDorier.utxo-sets.asc
```
If you don't like command line, you can verify against [keybase verify page](https://keybase.io/verify) by just copying and pasting the content of [sigs/NicolasDorier.utxo-sets.asc](sigs/NicolasDorier.utxo-sets.asc).
You can verify that the handle `NicolasDorier` refers to the person who controls `NicolasDorier` Twitter, GitHub, and Reddit handle on [the keybase profile page](https://keybase.io/NicolasDorier).
You can verify that the handle `NicolasDorier` refers to the person who controls `NicolasDorier` twitter, github and reddit handle on [the keybase profile page](https://keybase.io/NicolasDorier).
NOTE: **Completing those steps does not mean that the UTXO set snapshot is legit**. It only mean that you trust the owner of a Keybase account who has proved access to some social media accounts in the past.
### Don't trust, verify!<a name="donttrust"></a>
If you don't trust anybody, which should be the case as much as possible, then here are the steps to verify that the UTXO set is not malicious.
1. You need another node that you own, `under your control`, that `you synchronized from the genesis block`. Let's call this node `Trusty`.
2. You need to create a new node which use `Fast Sync` with the UTXO snapshot you want to verify. Let's call this node, `Synchy`.
3. Wait that `Synchy` is fully synched.
4. Now on `Synchy` and `Trusty` run at the same time:
```bash
bitcoin-cli gettxoutsetinfo
```
If `Synchy` or `Trusty` are using BTCPay Server use:
```bash
bitcoin-cli.sh gettxoutsetinfo
```
5. Verify that the output of `Synchy` and `Trusty` are identical (you can ignore `disk_size`).
NOTE: Completing those steps, under the assumption the software you are running is not malicious, **correctly prove that the UTXO set snapshot is legit**.
:::tip
**Completing those steps does not mean that the UTXO set snapshot is legit**. It only means that you trust the owner of a Keybase account, who has proved access to some social media accounts in the past.
:::
## FAQ
### Can I add my signature to this repository?
If you are a bitcoin developer or public figure, feel free to add your signature. For this you need:
If you are a bitcoin developer or public figure, feel free to add your signature. For this, you need:
1. A [keybase account](http://keybase.io) linked to your social media accounts.
2. Follow the steps described in the [Don't trust, verify!](#donttrust) section each snapshots you want to sign.
3. Create a file with same format as [utxo-sets](utxo-sets) with the snapshots you validated. (Let's call this file `YOU.utxo-sets`)
2. Follow the steps described in the [Don't trust, verify!](#donttrust) section for each snapshot you want to sign.
3. Create a file with the same format as [utxo-sets](utxo-sets) with the snapshots you validated. (Let's call this file `YOU.utxo-sets`)
4. Run the following command line
```bash
# Assuming your are inside the FastSync directory
cd $BTCPAY_BASE_DIRECTORY/btcpayserver-docker/contrib/FastSync
keybase pgp sign -i YOU.utxo-sets -c -t -o sigs/YOU.utxo-sets.asc
rm YOU.utxo-sets
git add sigs/YOU.utxo-sets.asc
git commit -m "Add YOU utxo-set signature" --all
```
And make a pull request to `btcpayserver-docker` repository.
### Where can I download UTXO set snapshots
You should not need to do this, because [load-utxo-set.sh](load-utxo-set.sh) do the hard work for you.
You should not need to do this because [load-utxo-set.sh](load-utxo-set.sh) will do the hard work for you.
But if you really want, just browse on [this listing](http://utxosets.blob.core.windows.net/public?restype=container&comp=list&include=metadata).
But if you want, browse on [this listing](http://utxosets.blob.core.windows.net/public?restype=container&comp=list&include=metadata).
Select the snapshot you want, and download it by querying `http://utxosets.blob.core.windows.net/public/{blobName}`.
### How can I create my own snapshot?
Assuming you have a node running on a docker deployment of BTCPay Server, you just need to run [save-utxo-set.sh](save-utxo-set.sh).
Assuming you have a node running on a docker deployment of BTCPay Server, you need to run [save-utxo-set.sh](save-utxo-set.sh).
This script shows the steps to create an archive of the current UTXO Set
It will:
This script shows the steps to create an archive of the current UTXO Set
It will:
1. Shutdown BTCPay Server
2. Start bitcoind
3. Prune it to up to 289 blocks from the tip
4. Stop bitcoind
5. Archive in a tarball the blocks and chainstate directories
6. Restart BTCPay
7. If `AZURE_STORAGE_CONNECTION_STRING` is set, then upload to azure storage and make the blob public, else print hash and tarball
7. If `AZURE_STORAGE_CONNECTION_STRING` is set, then upload to azure storage and make the blob public else print hash and tarball
### How can I do this for my altcoin?
Your altcoin does not need it, almost nobody use it compared to bitcoin.
Your altcoin does not need it. Almost nobody uses it compared to bitcoin.
However, if you insist, follow what we did for Bitcoin, we can't hand hold you on this.
However, if you insist follow what we did for Bitcoin, we can't handhold you on this.
### Do you plan to destroy Bitcoin?
This feature may be controversial, because of the risk that almost nobody will follow the [Don't trust, verify!](#donttrust) step.
This feature may be controversial because of the risk that almost nobody will follow the [Don't trust, verify!](#donttrust) step.
What if somebody start spreading a corrupted snapshot on wild scale?
What if somebody starts spreading a corrupted snapshot on the wild scale?
I think this issue can be mitigated at the social layer. If several person start using social media for spreading their `bitcoin-cli getutxosetinfo` every 10 000 blocks, any corrupt snapshot would be soon detected. We plan to make expose the hash via `BTCPayServer` and make it easy for people to share.
I think this issue can be mitigated at the social layer. If several people start using social media to spread their `bitcoin-cli getutxosetinfo` every 10 000 blocks, any corrupt snapshot would be soon detected. We plan to make expose the hash via `BTCPayServer` and make it easy for people to share.
### Why you don't just: Make BTCPayServer rely on SPV
All SPV solution brings a systemic risk to Bitcoin. If everybody relies on SPV to accept payment and miners want to change consensus rules, then you will have no leverage as individual, nor as a community to decide against.
All SPV solution brings a systemic risk to Bitcoin. Suppose everybody relies on SPV to accept payment, and miners want to change consensus rules. In that case, you will have no leverage as an individual or a community to decide against.
Even with `UTXO Set snapshots` you continue to validate consensus rules from the block of the snapshot.
Even with `UTXO Set snapshots`, you continue to validate consensus rules from the block of the snapshot.
### Why you don't just: Make BTCPayServer rely on an external trusted node
Why not just hosting BTCPayServer on the raspberry pi, but the bitcoin full node on another machine?
Why not just host BTCPayServer on the raspberry pi, but the full bitcoin node on another machine?
For two reasons:
First, `BTCPayServer` is trying to bring down the technical barriers to operate payments on your own. Running on an external node means that the user need the technical skills to set it up.
First, `BTCPayServer` is trying to reduce the technical barriers to operating payments on your own. Running on an external node means that the user needs the technical skills to set it up.
`BTCPayServer` also relies on Bitcoin's RPC which is not meant to be exposed on internet. We can't see any simple enough solution which would allow normal people to run an external node somewhere else.
`BTCPayServer` also relies on Bitcoin's RPC, which is not meant to be exposed on the internet. We can't see a simple enough solution that would allow normal people to run an external node elsewhere.
The second reason is about reliability: You want your service to be self contained. If you host a node on another server, and for some reason this server goes down, then your `BTCPayServer` hosted on the raspberry PI will also cease to function.
The second reason is reliability: You want your service to be self-contained. If you host a node on another server, and for some reason, this Server goes down, then your `BTCPayServer` hosted on the raspberry PI will also cease to function.

View File

@ -11,7 +11,7 @@ set -e
# This will download the utxo set and untar it in bitcoin's folder
# Usage: ./load-utxo-set.sh
# This will use the tar to load the utxo in bitcoin's folder
# Usage: ./load-utxo-set.sh utxo-snapshot-bitcoin-mainnet-565305.tar
# Usage: ./load-utxo-set.sh utxo-snapshot-bitcoin-mainnet-699714.tar
if ! [ "$0" = "$BASH_SOURCE" ]; then
echo "This script must not be sourced"
@ -28,11 +28,19 @@ if ! [[ "$NBITCOIN_NETWORK" ]]; then
exit 1
fi
if ! [[ "$BTCPAYGEN_ADDITIONAL_FRAGMENTS" == *"opt-save-storage"* ]]; then
echo "Pruning must be enabled, please update BTCPAYGEN_ADDITIONAL_FRAGMENTS by running:"
echo ""
echo 'BTCPAYGEN_ADDITIONAL_FRAGMENTS="$BTCPAYGEN_ADDITIONAL_FRAGMENTS;opt-save-storage-s"'
echo '. btcpay-setup.sh -i'
exit 1
fi
TAR_FILE="$1"
if ! [[ "$UTXO_DOWNLOAD_LINK" ]]; then
[[ $NBITCOIN_NETWORK == "mainnet" ]] && UTXO_DOWNLOAD_LINK="http://utxosets.blob.core.windows.net/public/utxo-snapshot-bitcoin-mainnet-651474.tar"
[[ $NBITCOIN_NETWORK == "testnet" ]] && UTXO_DOWNLOAD_LINK="http://utxosets.blob.core.windows.net/public/utxo-snapshot-bitcoin-testnet-1445586.tar"
[[ $NBITCOIN_NETWORK == "mainnet" ]] && UTXO_DOWNLOAD_LINK="https://snapshots.btcpay.tech/utxo-snapshot-bitcoin-mainnet-867690.tar"
[[ $NBITCOIN_NETWORK == "testnet" ]] && UTXO_DOWNLOAD_LINK="https://eu2.contabostorage.com/1f50a74c9dc14888a8664415dad3d020:utxosets/utxo-snapshot-bitcoin-testnet-1445586.tar"
fi
if ! [[ "$UTXO_DOWNLOAD_LINK" ]] && ! [[ "$TAR_FILE" ]]; then
@ -58,7 +66,7 @@ cd "$TAR_DIR"
IS_DOWNLOADED=false
if [ ! -f "$TAR_FILE" ]; then
echo "Downloading $UTXO_DOWNLOAD_LINK to $TAR_FILE"
wget "$UTXO_DOWNLOAD_LINK" -q --show-progress
wget "$UTXO_DOWNLOAD_LINK" -c -O $TAR_FILE.partial -q --show-progress && mv $TAR_FILE.partial $TAR_FILE
IS_DOWNLOADED=true
else
echo "$TAR_FILE already exists"
@ -109,4 +117,4 @@ if docker volume inspect generated_bitcoin_wallet_datadir &>/dev/null; then
echo -e '\033[33mHow to proceed: If you agree to delete your Bitcoin Core wallet, run "docker volume rm generated_bitcoin_wallet_datadir"\033[0m'
else
echo "You can now run btcpay again (btcpay-up.sh)"
fi
fi

View File

@ -7,14 +7,18 @@ eabaaa717bb8eeaf603e383dd8642d9d34df8e767fccbd208b0c936b79c82742 utxo-snapshot-
58f65fc3e2abc367602c07ab0e7ae4a042e6acf2bc026623c7322d1886f52098 utxo-snapshot-bitcoin-mainnet-585333.tar
52f0fc62dd28d016f49a75c22a6fa0827efc730f882bfa8cbc5ef96736d12100 utxo-snapshot-bitcoin-mainnet-609375.tar
0afe8ca07e0ad2b538f43fc3ada89500b3e8594e8c16e0813c30d25fcff0d5a3 utxo-snapshot-bitcoin-mainnet-651474.tar
587ac27b1929123313f842edbdb798afe116548e2a1bddea46d8d7068a6bc156 utxo-snapshot-bitcoin-mainnet-680891.tar
79d5b28fb140c23602bebaf90e829fc89aef2bb95cb2a5d492cd818f22f01836 utxo-snapshot-bitcoin-mainnet-699714.tar
58b3c9c8a3e5f7b3449521e8d7f8435db2e948918063cb7f5b0e635862e03891 utxo-snapshot-bitcoin-mainnet-720179.tar
83f55203f4fca7d4197ef6261a9d3ce09e1ed308e1ecf969f223eb20038dc1dd utxo-snapshot-bitcoin-mainnet-744358.tar
-----BEGIN PGP SIGNATURE-----
iQEzBAEBCgAdFiEEC5br8+cf2C1k8QnTslYYXTqXGQgFAl9+62YACgkQslYYXTqX
GQh5cgf/Y+0h40ngbndJzs+VuvD2m98fBFpGEDMC1FvZLSEu3MekbEWqTIjHGV9O
vW1p+DL6WgEow+TlYlOorWfAn/hkZqsnuCf4CaPOcazriMbyu2xbXfDiGXo2V64h
eZlGQ8c4VKAPNJOD3NuUNBji5yC2cmYpid7W9Du6o/o+31+uUYJtjSGfVg9q8sAN
t8Iiip4S69xu8TDVJc7j98CvjireHJHWGYh/ku6+NlCH0I7JhqAYMBo5+WwRMPaT
x/t7yPOkCAYY2161u+X0KwcRBdY1HOerG0m+/qODRtvEYcpK/Z0lcfLJ0m5gTrxo
v/JBKugS1UrYVR6hZ5ujLUYSbH3fdg==
=w+jO
iQEzBAEBCgAdFiEEnGJq0mr2sgeLfBk5qSc7WtPke0UFAmLNiFgACgkQqSc7WtPk
e0UGsgf+JrVIXjQHnGo8HvbdKWXn+aemaC6SfM0kCdS+Av6Hvg14YVj3LpfVE9if
15ITBG+Q3LP8pO4A5T+RxG1YlfvnhsDP7GyhFiG55ew0H6G68Uf9iLwiBzqiqnqm
gYOcNtVNaDhAP5ocRnyALSxVH7aWgPD68OPL3xsWvKjC85jsM7dkyWGBdzN4tfua
Gp5Kcz1b3oGyvRSm/3syrWx1J/Cht0oO/tK6zVcwEo7Wq4fDOQD7AUZwiviJYbq5
Q1GoBDEmFe/ZHlta9Qx4sIkib5ZeNRX7KOVFJAkAD/hzbFBBpLjwnTRSGwU+Aulh
kRn9K2XG49yyL0tjJuNzEVwZ9Ynh8Q==
=tb07
-----END PGP SIGNATURE-----

View File

@ -7,19 +7,25 @@ eabaaa717bb8eeaf603e383dd8642d9d34df8e767fccbd208b0c936b79c82742 utxo-snapshot-
58f65fc3e2abc367602c07ab0e7ae4a042e6acf2bc026623c7322d1886f52098 utxo-snapshot-bitcoin-mainnet-585333.tar
52f0fc62dd28d016f49a75c22a6fa0827efc730f882bfa8cbc5ef96736d12100 utxo-snapshot-bitcoin-mainnet-609375.tar
0afe8ca07e0ad2b538f43fc3ada89500b3e8594e8c16e0813c30d25fcff0d5a3 utxo-snapshot-bitcoin-mainnet-651474.tar
587ac27b1929123313f842edbdb798afe116548e2a1bddea46d8d7068a6bc156 utxo-snapshot-bitcoin-mainnet-680891.tar
79d5b28fb140c23602bebaf90e829fc89aef2bb95cb2a5d492cd818f22f01836 utxo-snapshot-bitcoin-mainnet-699714.tar
58b3c9c8a3e5f7b3449521e8d7f8435db2e948918063cb7f5b0e635862e03891 utxo-snapshot-bitcoin-mainnet-720179.tar
83f55203f4fca7d4197ef6261a9d3ce09e1ed308e1ecf969f223eb20038dc1dd utxo-snapshot-bitcoin-mainnet-744358.tar
11b355b08a799e2bef7fffb5dea390d0e23f51ef2c31056fbf8d92e007a3d398 utxo-snapshot-bitcoin-mainnet-769818.tar
725a049bc5a9fd60b05bba4d4825d35115d99f05ab5b7716d4507c295d05172d utxo-snapshot-bitcoin-mainnet-820852.tar
-----BEGIN PGP SIGNATURE-----
wsFcBAEBCAAQBQJffrH/CRBmGHY+8JGG/gAA5hIQAHIPmHgFrmK6EVmUxDzt1Z8c
9Kxa6cGEFKpjvRemRMfnLqn7JI2W+2i3BcFMYaft1VrtFm0q7HygeG5waLw08lW+
sVrizEz/Ovlq2yQ+TjwZW+dCPsYi/7qMhevnGO8YUJUyIuQCrlDsYwwZmTSQe7tp
d5eJ5k9Q9aNpEegZSq2iAcx2ejSXUmSSpoJ56DBPSrUMt07qfj6Pzo/YeDm2pY5e
CNwsbqKsAAtwOZwJq5YZHkFOXKZTo6yFPs9LlZ5jNGpnI+7JwTdP7T3Kf3bxmY0m
exYN/6+0Ga8Ndf+w3lSv95XFMKfPoJCU8nnHgzQUObQ2t/2zZoc6hXxloS+BX4Yi
kIWYeU4Abrby+2RnJPYPnJaranrthrhT6aIT1/BWUkD/8uaCabW5t8he4SGlflF6
zzWb6SYzF/BSxjzi+pngWTYzRZeALj+Ib1ku5j60Rc8rrGw2yl8qrh3ROc+Z7EEh
4mfwI0NYYlTrdmiFqSXc3VQWr20WlyyBQ90H9sS7t8eI7jX1RXe4P7TP/DTS0F9g
jyy0empdVFGxL3q2Mc1Dz35BfQlzEoc4xgMe9NVUAFJv94aoeGuxpJLcnYMuk0cU
pENZYJ3qCHkuTgCQfLO3MM0GNUPVzd27biNU0u9HM/vNBitWdlW2rP/4LFYAYnYW
jJY95tNwjhIQr+mPoiWl
=/na8
wsFcBAEBCAAQBQJletbECRBmGHY+8JGG/gAACiQQAHoG7cXpdfks1sdb5Uzu44jl
ABzgVCcIQ8qpQWuiwqBB/Cux/YW63wU4Ku95KMvOVC6P5Q3Dmil5Q2LEibHFzKjb
/TofEdjKWIcqw2xut7Q3GSnyeMdjhm2fdUH4b3rhkt3Zh8T2BOvi1aWt3CsiaTnd
+UooDXb218db28OKYzGZ9cbfaTueRW2rsX0T7xZhYUmo7ExOfe9xGN7AVljSxSnm
OIammIuqi5uKbB6t+t1p2pl2lr2g/eLyY4iPzFRv3yk7tl9v4Uoj8Ry1+AT1E8+b
p1M0uWj8c9sHbCizr8xW5RkVr7CQrgrNJbol00IfQVyooQI33szMX0jQ5X8Nt6y8
KdwUvT8ZyT2eS1VG4RjH3Oq9V/ZxODPtaA8su8lAWTd10xrsRGKwO/qHYdhISOUC
+NQmT9f6pFX35UH0CSk5T8c0jNTAChZcw7NlDUWQaKj3H63qajnVHnx/NuZCmhCe
5L6ilWsYnqYnfjJX7d0i4ZMUNCXkeBTKZHBasWzEBp3ds8nOsHY5dCFcWkppABNw
ynLkCSDN7TY1a8sTgdEIpNpZ6m2oq3rMhmxVzijcFuXV5eRtIxGY1mZPJTggZQXB
8/1RT8B5EDbl0L9Bq+q8lYL/dDLRKQJH0IA3FKGzPDNcin+d8oWh0Ep1IuYDlRJ8
xY8CXryVjzmbglJvC1Wt
=PNpf
-----END PGP SIGNATURE-----

View File

@ -0,0 +1,21 @@
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256
83f55203f4fca7d4197ef6261a9d3ce09e1ed308e1ecf969f223eb20038dc1dd utxo-snapshot-bitcoin-mainnet-744358.tar
11b355b08a799e2bef7fffb5dea390d0e23f51ef2c31056fbf8d92e007a3d398 utxo-snapshot-bitcoin-mainnet-769818.tar
-----BEGIN PGP SIGNATURE-----
wsFcBAEBCAAQBQJjtfiOCRDXzmZXIX7aPwAADIsQANT3WzkTcTlKV/t74q+WFRpE
5QkPWuOUsHdQzg5eHYzwjrt3KHO12JmX0efWG0ACb1VrXQtAnJuX8Xzzf04kTELp
UGJfpPdHuqxiW+X+VtHiJBe0EqbLOum11rHaYylWmVK6tK/cId4UIaQv3LWwfRCJ
BGrR4ay6SJtQvNxDs8M0lQdzNohmJnpVxbnAVP78/cBRLoHHrNgzqp0QnDISllfS
m6DvWRX88Ul+xwfaBek3CKR9Z7cV6LyrveLh13VEyPt1KO/sGP0acY/uTCEmUKfY
k5AK75nY4Rk349iVvlptxt2vPOdi6hTfuUF253s51XmBxEJfWswZQtxqdqNMD0m9
7abxv5X+SpfnybpQQmiFj41CNWTmxCe/QPowGIejDwjBZtww5nhwI79uvSIbamwk
tcClQG5agbqhDOB94tqxHZZVqG7OCanLKbuynmyp+4uiQ+zVnB623vP56PrUnNQv
M0fhnNJBQFNARz3XU59/spTzmrso0lnKTGeKyMrN+/i84r+lHd6ynRe7gbVCj3Fh
wshhCKZ64nAQkkJGsHgBxjbz9HZs3sPd5vatPl6sqyxtCyiVdpxN1WEk7FairTHx
MkyiVHYkH7ip/fz0vdmf0DiQpTJ53plTVOQkxLpT0AGruzZtsgVjLYaU07hnzHLD
L8cZ2glroURtcHgwbaPB
=OVeC
-----END PGP SIGNATURE-----

View File

@ -0,0 +1,20 @@
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256
83f55203f4fca7d4197ef6261a9d3ce09e1ed308e1ecf969f223eb20038dc1dd utxo-snapshot-bitcoin-mainnet-744358.tar
-----BEGIN PGP SIGNATURE-----
wsFcBAEBCAAQBQJi8FGeCRAUIb9sTcmBfwAAJskQACzQmpio4/iDgmBlSYOgcsDn
JXxFX7uiAxf4yr4ujLm7heDZAtA7P9p9ddVHCDsP/xp566RQXDqQQFSW8Jkh87JP
8NZi5lEZMO1dMVXNgucg5MqLQOgE0JhMtpexS0TB4jW1dqcSjUHGU16Aq29MJQzW
aF6egNkicEnc3KX9M5YV43wG0jklFqwkjUyjR1kUJgLoCjG9yzVRlp83oUZtI189
K9XWYLPB4YbO7+S0Gug7OEQFPf0yuQR6vcfJynA1ney0QwIv+2C4JJPd/r1h3g4R
TFQsTmlLBsrseMnCfSRxPv6+tHg4r010lfryDYwSq/N6eaj1AYSKeTDe2xPSBuGt
L8FwPDJCTdXMmSwTas5XYUiTNUkIxa8as/Hqs5+sIDcBxH6zEOfmYuxdoXpOuMpw
du/4Wk05Rd+lU9neSLTQJOxu40/SxRsBemLGfhcWBmzbOFYaPWyVxbBiwvhAliwK
x8vtbk6JFQxIZlgq/N0VJFgEj/jkEiwDxIA6zMXI34UF18lStIHIDzGkrnnUpKEb
erZxOk/tGNAjx/+fahLkQuz6fBY3LARBGlE//vX0+PFbv6R7ILGo1OYERjmYAsjy
Wh7AoVpDu9TBwAolx15oYWgDNI6MTd3VN4/cxVAHqjj4HFEu6BZiBrgFQTg85pnH
bJOZw3b3FWTCz8kJMBpg
=NP2V
-----END PGP SIGNATURE-----

View File

@ -1,20 +1,23 @@
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256
eabaaa717bb8eeaf603e383dd8642d9d34df8e767fccbd208b0c936b79c82742 utxo-snapshot-bitcoin-testnet-1445586.tar
58f65fc3e2abc367602c07ab0e7ae4a042e6acf2bc026623c7322d1886f52098 utxo-snapshot-bitcoin-mainnet-585333.tar
79d5b28fb140c23602bebaf90e829fc89aef2bb95cb2a5d492cd818f22f01836 utxo-snapshot-bitcoin-mainnet-699714.tar
83f55203f4fca7d4197ef6261a9d3ce09e1ed308e1ecf969f223eb20038dc1dd utxo-snapshot-bitcoin-mainnet-744358.tar
-----BEGIN PGP SIGNATURE-----
wsFcBAEBCAAQBQJdbzuvCRALBDDNn2xJswAAAi4QAEXnV/2HBXogOmQRC1Tlpy5I
hHjaNXy2ygHKTWECRQsZb7EzVtpEKK55Md7/yH1REy0Q9aoWxilWu0VLI52//NS5
+tNhTipj3/ykUPaMZSfHdY/OU8Czkzpfzzqi4swddgQWPHcL20g8Xgl/OQPfNWN3
+Bgjsvv1c3p2iXdMjg5JeQjN+qA1Byv4UJ9zcpiIADR1DLFR3PbjFhLx0vM9abO6
TQa2XBfNaH3Jm9zJJgth7Xq5n061aw8ZKO+KxPe415G6xtFVL7lXnBifzHiWwF0F
0wl9/5y3pv7SXn5T3tasgqB17hNcQJFp7aXsaCu6K0rVcwvGpDdKfe4FAfVpkuje
c8z0zJ7Brg5ito7Mtmx4O+9m6qTEdjYsAYRenTMZX7a7legPMIZ4KomfjUit/Cw7
PdNH1n56eE5fN97no14dyrTsb6hFQ02soO+X+Z3FhkM92ocjpKBdyeouw+bs6hYT
aGtMA80rMHGhXFz/zRxZiRpDz+RkYUwaNnmsr0NvxmWqaIBKZjM3LYYKKn6URVFY
U2Xxr9RyThD8AW0bMiKc5cHQJD8j45PIMWSsxVbTHduEm9gFHH0TCaCOrYRUHk+y
jIDevEv3nbg7A9kyARpnuS5Yfg5SDMpgNFZEPuCZdH9By3M7jBg3Y7cxOdZAs07p
GPQRzKSRqbbIfB7E1cht
=IAdY
wsFcBAEBCAAQBQJi0NlnCRBzZKIvLFvMBgAA5nQQADzO5UPHON+QqT+sbWDQMu2V
zKDklR6CguqEtG+PCWg39r5u0E3bDUgsp3qMtw5liquKHWKhGa+D5xLrPYgdU2Ts
91/6Dn4VIxyqcLNQYsw0jg3X6dlFIfKO2ULKULsDqUZRfi1vfeVFXxvPO48qMHel
JMAObUXgCXirVdL4YZ0F40g5Sikv9/YhTIx0Pua5UxArCnCYp6vjmzMsS+84MAC3
INW0ToziTedF7ROWtGSegzP75s11qEdJ9ObxIGhRmV1pvPwouVc0FQscdQ0s9tfc
1E4B0p1i5HuC7BfuEETvP4bpk8idIZkVACJPu6qjEtKuGDtOwxyQvxOyCCFl5RY3
RcFepZdWQjJ0Z2jufFPkowXlAlRAdd8COcDoNtuPigsjNY4MbvCSunQGy00k1dch
0ZGhcf5t0XTO3yWfvfwK0WxAcReiccsgnASq8BifAWIZLrM4GfmBz/wVxltn/fXX
cQPGKFsuBxxNv9ka0wdovClr3eLJZ5fZctQ+TNGzd6/ZmbsjZ0TNLAUjb/K3isTg
yVrl9pry9iv9Yxd4DWLWOuwmS61TfuHMK1NnJHH9vpJoTEu2UKNEl0PfsfDuXnhu
izxT3KpqqMPbrRfFTnmyEgX4Si7b0wqp2OqHIGTt25WyyJoieVNat8PGxCZ7qsS/
+Y+qBlGDmRuWrLvvWxjb
=2tFb
-----END PGP SIGNATURE-----

View File

@ -0,0 +1,22 @@
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA512
fab994299273080bf7124c8c45c4ada867974ca747900178496a69e450cf713f utxo-snapshot-bitcoin-mainnet-551636.tar
eabaaa717bb8eeaf603e383dd8642d9d34df8e767fccbd208b0c936b79c82742 utxo-snapshot-bitcoin-testnet-1445586.tar
8e18176138be351707aee95f349dd1debc714cc2cc4f0c76d6a7380988bf0d22 utxo-snapshot-bitcoin-mainnet-565305.tar
58f65fc3e2abc367602c07ab0e7ae4a042e6acf2bc026623c7322d1886f52098 utxo-snapshot-bitcoin-mainnet-585333.tar
52f0fc62dd28d016f49a75c22a6fa0827efc730f882bfa8cbc5ef96736d12100 utxo-snapshot-bitcoin-mainnet-609375.tar
0afe8ca07e0ad2b538f43fc3ada89500b3e8594e8c16e0813c30d25fcff0d5a3 utxo-snapshot-bitcoin-mainnet-651474.tar
587ac27b1929123313f842edbdb798afe116548e2a1bddea46d8d7068a6bc156 utxo-snapshot-bitcoin-mainnet-680891.tar
79d5b28fb140c23602bebaf90e829fc89aef2bb95cb2a5d492cd818f22f01836 utxo-snapshot-bitcoin-mainnet-699714.tar
58b3c9c8a3e5f7b3449521e8d7f8435db2e948918063cb7f5b0e635862e03891 utxo-snapshot-bitcoin-mainnet-720179.tar
83f55203f4fca7d4197ef6261a9d3ce09e1ed308e1ecf969f223eb20038dc1dd utxo-snapshot-bitcoin-mainnet-744358.tar
11b355b08a799e2bef7fffb5dea390d0e23f51ef2c31056fbf8d92e007a3d398 utxo-snapshot-bitcoin-mainnet-769818.tar
725a049bc5a9fd60b05bba4d4825d35115d99f05ab5b7716d4507c295d05172d utxo-snapshot-bitcoin-mainnet-820852.tar
-----BEGIN PGP SIGNATURE-----
iHUEARYKAB0WIQRQdmI2dt3KIgDgNOtP4h9f/4TJvAUCZxAV6gAKCRBP4h9f/4TJ
vOvTAP4/MPtLjt2jWc8h7hWtc71pP43Q1s7I2/Fo6TqZwqmn4QEAyin+ylkz7OvQ
+Zok4KaPDdHpHJk/ncdS3qKpX7E0iAg=
=UO3X
-----END PGP SIGNATURE-----

View File

@ -0,0 +1,20 @@
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256
83f55203f4fca7d4197ef6261a9d3ce09e1ed308e1ecf969f223eb20038dc1dd utxo-snapshot-bitcoin-mainnet-744358.tar
-----BEGIN PGP SIGNATURE-----
wsFcBAEBCAAQBQJi0edkCRADBN2I1mxLvwAAqAEQAKzMbFyV2Kn9SN3LP1IaQCcH
cRVyD8sgb5AkHVzdX/ThvzIr/IkHXdt+cR1bIGQWDtLpo7uTsFlvXoU/hqCzI+lf
7EPaGLiGzUNav26d9LFbSqhuve62AkzCJuy63achwE/enOQWvwUZ4QR8sO/PtHDU
h0ci/uWanLxwxrPuK5Zhy7/aQ3MLVgDlbH4suAriUn9LNrQqqVx+8Feiupxwwu7p
8bOstKztrNJvrJLRqo6/tCJBv4ktnR3dSi9kxNwxRVDTjvxic6M7DmVFae1H5wiq
mHkssDxGbCnRHQPUBgr0N58vR+NA/u2c7ojkfkxJRKavHpAxhzYSXQmoqCE5rrKS
+FMmpawDZJiPigId6cbhkoKgmlZLlqYaP41zFbEGpOggkFAQ8kzACbrSUHu7/NRO
KMHMhw0G0BtFc9+PejTQtjLrhhXVO4cLU5NtrsS2ghL+hCaWNl1nkX5PdtMyGK3l
HO8EmJe2G0sp8tzXfIGCSGNr0Nre7oIGvdU00HQ/W72HdsbB6DnlRBXHuLe9+n/7
LLlRLhF/ESqQAZFRnpU8Ei+n8714wIV77vgUZsAZo6MjeydhzQtwoRSDKxc6WMD9
vrVTLfHHVCBI9lTA72Ak+wUxEGkJgu/qljoavBnNn8At8vFxTaTw+hTBc8ZI5K1U
Sg+bMiPa1T1D6QwqfG22
=yu81
-----END PGP SIGNATURE-----

View File

@ -0,0 +1,21 @@
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256
83f55203f4fca7d4197ef6261a9d3ce09e1ed308e1ecf969f223eb20038dc1dd utxo-snapshot-bitcoin-mainnet-744358.tar
11b355b08a799e2bef7fffb5dea390d0e23f51ef2c31056fbf8d92e007a3d398 utxo-snapshot-bitcoin-mainnet-769818.tar
-----BEGIN PGP SIGNATURE-----
iQIzBAEBCAAdFiEEkBNUT2D+8eESG4wviEz9aed8MMQFAmO2tLkACgkQiEz9aed8
MMR2pRAAmn33MR+zOeTnQIYa49jg1OVRVfU81VNFnc6pABNO8s8Z2AYukM4GunSs
SUIItJqiF1O+e2POiZa2tEDWzTAmkCfZ3r+bxJcbis5SLlkBf5fPesQhlwK7QfXK
rAXUwTMLA2T7XJEFkhwYD5A7k21ea8T/ly1kE1eNInci6uPysYLGfYeUIaCSBAuZ
UqmoaqBwKVSu3KyjagAuik1BTphNYqHgidA+3yWiMyHsgPuHjqp4HY+0xHiw/w5x
XZIm1CEzpj2GOjNbaBHp0EOWQ5q4686qRYSAogqSklPvj0MLP6IhchLi+QIJKUEg
yBTt5/8a6Ox81BSHBBVWrhjJYtAaHam4zWC3wv/6BF61BdiXIiV7ova58x8K/Zji
QsIZqNaCZ/KkfB7CZycJ1LKyxELdMaOipbjkgVifUuNf9RL9Vle8zAENR2Mo5Kk/
aATw8VO0Z/IIxuuDeT2w/9ogeoBiv4Bv5PBxRtm5gXQGpZyWYyCeeDukNQp3UKQD
pgSGriyCBkWGzuHMltGXv6N/fndAmWau9W/fRGnVt01IgTNwjliQqkR2FcmfUfBN
a+lFqcerVmTMUxExQKIwPqINqV5y2DE3gOWb4VZ97t8Yx2fPPbFuQ6fzPvhWcbtz
Ffkg9aFpjkP4NFwDkrMG1ItBhXyDEVd/b9m1sqpP1B+YFOyd/mM=
=TDDP
-----END PGP SIGNATURE-----

View File

@ -0,0 +1,20 @@
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256
83f55203f4fca7d4197ef6261a9d3ce09e1ed308e1ecf969f223eb20038dc1dd utxo-snapshot-bitcoin-mainnet-744358.tar
-----BEGIN PGP SIGNATURE-----
wsFcBAEBCAAQBQJi0LpTCRA2RAJ4cwSb5gAAgMUQAKaeNu4NR8hydLnk4nCJlaSG
zQOXXz5JYT0Sz32yG7jQxundNbOFNEKDh0ggKRUAubmkmYcOR23kXMCn1OAbHROM
PDwvKSzed3M9J1FceSe4GW4zXecWKFuCOwnVXHIbz6AAp8raI5HbZLTLHX6x+VvP
zkyWw2uG5DN0GUv9ytLQ2YVFaoBJK5w+Dw/UQwkzxo6dtc5dcwhsjNv/2PaPPZdn
0qG3vPUGyPhhAZN50YCjfq5LIgSv1vpUipyLRTAcH3a/XWHJxe1/P0tKENlOCa8j
FBAe6kRsVwAeggKrrNOl9paRoAy+zjHqdRQdVe7H9f1L9Vc06EmorelH+9gXv8C+
LZ5A1nf4OSNcGfY+flkfYNO2QZ10q5ttjIgtvfwbkj96/KFSHXG698gwQkYR4BHd
qtF8BTO3bnJa581/blwKjtUpwTEtTVUijlQbo2tSnACVF0MwtYxuqdEjLhk9RbR3
QS9UcKuYq7tvNSZed8GtLDwIW5KMh0kgdoG9gTvD+BKm43YD+l2oFUYCJyZXCqlo
lsiluXRax9fqevGiPVdRyRX5cl/nFVUhTJNmLg8Z5+Lm2D2ZfM84dPW0A/uVTS5b
7cYMmO1olt4qE1WeyOb5T2S8T5QGQ1/BBe0gyQJ9e7u7Pkdm72UhEwCYNeaTnoYR
GXnDDB80H93DUFv4GUoo
=YaXu
-----END PGP SIGNATURE-----

View File

@ -1,22 +1,34 @@
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256
Hash: SHA512
fab994299273080bf7124c8c45c4ada867974ca747900178496a69e450cf713f utxo-snapshot-bitcoin-mainnet-551636.tar
eabaaa717bb8eeaf603e383dd8642d9d34df8e767fccbd208b0c936b79c82742 utxo-snapshot-bitcoin-testnet-1445586.tar
8e18176138be351707aee95f349dd1debc714cc2cc4f0c76d6a7380988bf0d22 utxo-snapshot-bitcoin-mainnet-565305.tar
58f65fc3e2abc367602c07ab0e7ae4a042e6acf2bc026623c7322d1886f52098 utxo-snapshot-bitcoin-mainnet-585333.tar
52f0fc62dd28d016f49a75c22a6fa0827efc730f882bfa8cbc5ef96736d12100 utxo-snapshot-bitcoin-mainnet-609375.tar
0afe8ca07e0ad2b538f43fc3ada89500b3e8594e8c16e0813c30d25fcff0d5a3 utxo-snapshot-bitcoin-mainnet-651474.tar
587ac27b1929123313f842edbdb798afe116548e2a1bddea46d8d7068a6bc156 utxo-snapshot-bitcoin-mainnet-680891.tar
79d5b28fb140c23602bebaf90e829fc89aef2bb95cb2a5d492cd818f22f01836 utxo-snapshot-bitcoin-mainnet-699714.tar
58b3c9c8a3e5f7b3449521e8d7f8435db2e948918063cb7f5b0e635862e03891 utxo-snapshot-bitcoin-mainnet-720179.tar
83f55203f4fca7d4197ef6261a9d3ce09e1ed308e1ecf969f223eb20038dc1dd utxo-snapshot-bitcoin-mainnet-744358.tar
11b355b08a799e2bef7fffb5dea390d0e23f51ef2c31056fbf8d92e007a3d398 utxo-snapshot-bitcoin-mainnet-769818.tar
725a049bc5a9fd60b05bba4d4825d35115d99f05ab5b7716d4507c295d05172d utxo-snapshot-bitcoin-mainnet-820852.tar
744c42885df700513331a978b289d9c9d5b27e0cf1147f2f5a287b4492ff940c utxo-snapshot-bitcoin-mainnet-867690.tar
-----BEGIN PGP SIGNATURE-----
Version: Keybase OpenPGP v2.1.13
Comment: https://keybase.io/crypto
wsFcBAEBCAAQBQJcqUdICRB5wjOsK6943QAAJ98QABNFxxBSI3HEWS7X/3twN9/E
5eF2mzfApfNjaLSs1v3G82IpZOC6GV3vwa3X3TOMrgzNO4SqGbWUYPykxOZY+2kZ
puww78tc22B5I4E9Yq7caWE8vdMX/lAyfi62iWWqGx/HolbacsTXIdLDMcKtDY55
tzL2QaXBj3u8ZibAxAlRieHoX759AJwdYohx5MzUQIbxXMlPcrXDK3NY4oKpj6Rv
dmJ5DRyxWEW4qIKnK/itlKBO9fBEp/DEN9CMEkbBA9pgOiZFgOKOwBJevYooYOUK
1XyaF77hhk7RC66pFaAtxAgXETtRmGv3YAL7vFVR9Yrvb0BrNKKsNH305inBvEHU
OMqxpQo34fE8YaPAhE/i3emiHIMQ8rMChmFLLbjRg5+oEW6H0yvVxYszdPMt2trq
MaFeunpfDy4r2FC92lBYo1pfbFp4q5CFKSJiv9joxoqZmsMW1MCj6WcLDmvMQzxw
Lu8GzWQxKuXJfncCUdWlLvBH901PvzJBJUcBX0gUpBRESNIzbKr283gwl+Y7W70C
1djJ7UMaruvY53QnjiAv93QJnMvSpDT24HpOe0ZEmLrbKMknS+ArWbEJ/bCWMxlI
CV2IoNMO+lVLoW9NbEaDsRkJWeGWMtcuD6u7kbHYcezc/ZgJmJCnU7pGiTlF7fC/
C8G4yDrxxeR2riTfofjB
=h45/
wsFcBAABCgAGBQJnPpBHAAoJEHnCM6wrr3jdJEwP/3bSVFvciVH/z78UNbeUFQkE
Jh93IBqWj7hOXy2MfE4w7X8t0uvHNH0TjtQ6bThTdABkYnT8M9oEkry7WoWfFgEb
MQtCZq3jAUVwyuK3TN41KZMLhSqFkV0lEO5ZK6BT6pIUzHrPQfkjQLS0GHslvnWi
xLrdO9wMBhLF40I76DBqeEutGd7HEw26D7QJUp9Mq4mMAQ0/X9uvQgjh/47szR8C
Ip4tH6u/woMffr2IgVsjkfXM4uFLW6rrijyhL5ZIEbgaiz93M6fRBhYxEXpXSSAp
IRS35GoY30aN0a6ZxPaj3UKMyBw4xRbfTtLWJsSJqhbMIq0iWuyLI2HDFHtfH3yy
loRJG0/d1pfsAB5zYRVYjmey4cAI0wjK7eGbJ6uYnKrQ7JO7IWHiSE4PGGgF/4TG
pUhGF6JhXCqoK9pn/ZvFb8lsc6tCoJYtGceGEClpOLSovxw2KQ9R82Dlmf3TK6rv
NW2hyEpyhI9M6WwcKIuhKKrKmi//bwSWF8Rw602IEuyNGLCzChTA6AATI2QGPhBq
QbcBhhu7UblAES9Wgk1e9/gZq8yH7SKtoipICc7rQDV3PURw8o5qJeQHYTxY9kQv
SDTnwZZYWY/2nupHdNrAN2KvtDT0MlufZf4jtE8c7pgxJO/FrucfwIuW0pvLHkg6
J5Rw3AofuAa1ql3kJvOI
=2QeW
-----END PGP SIGNATURE-----

View File

@ -0,0 +1,20 @@
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256
83f55203f4fca7d4197ef6261a9d3ce09e1ed308e1ecf969f223eb20038dc1dd utxo-snapshot-bitcoin-mainnet-744358.tar
-----BEGIN PGP SIGNATURE-----
wsFcBAEBCAAQBQJi0ENyCRCP0DYsF/YIBQAAaGUQAIYlvPkZqUoQmv2Pv4YgjiRH
dbXUbSzFP2azdDQhiQ4Ju8cMKCvQKXBg0DC3DgvK0yadhb0iaNsut+Qne1uMMfHl
Mu9lmdgMZp86yl8ozp0MJHPEMNJcrP513N5xslMLRRKS+fnCwFa3e9i19NYWJa1N
Cvc9uf16CJMnIQ4TijNJvgAxFz4Y1rJESob3AoZxSX2DglV08rhJhL5uk42szwTw
7GN2oM5BNEdAdqpor59NE0Erl1TsoHIPPzHDecPgXvA4KDa8jfBD722j8PBHWtDq
7XuUcx49MDZxKZzVWriDyuaut2CfKWginO9yc7jVJjXd/JXTSD/x0RR2i6Oh0oPV
03AEthcmDVsKddsNVWqfm4GeYnZw7EXNsMgOnnplz9UIAfSzZFLTfgrUWfGOsisQ
ewSLb2KFoS5NNvmaYDurUz+raB/R1JG2/qMt07yU6rL6dBSbZD1IlaUsD2Jn9XEI
wtmyI3JfA2+H5e9WUL79TOAFi08zpwf9h0U7CFGVqvTEAsWjb4KpARN1PYQ0omY+
6cmEhiKnWSl/Sk+X4tcAbjUNEG3iEqbuB2UN1L1IIql3WqVOZclu+dfpFErSYvqW
G7ni9H3peAZtgJ68N5dvhjkb33fcQ/hNjOaECOJq0LfAJspmyHR0eNmRjsrDWNVb
u18meA/Q/Jzutg0BUpLl
=NNl1
-----END PGP SIGNATURE-----

View File

@ -3,4 +3,11 @@ eabaaa717bb8eeaf603e383dd8642d9d34df8e767fccbd208b0c936b79c82742 utxo-snapshot-
8e18176138be351707aee95f349dd1debc714cc2cc4f0c76d6a7380988bf0d22 utxo-snapshot-bitcoin-mainnet-565305.tar
58f65fc3e2abc367602c07ab0e7ae4a042e6acf2bc026623c7322d1886f52098 utxo-snapshot-bitcoin-mainnet-585333.tar
52f0fc62dd28d016f49a75c22a6fa0827efc730f882bfa8cbc5ef96736d12100 utxo-snapshot-bitcoin-mainnet-609375.tar
0afe8ca07e0ad2b538f43fc3ada89500b3e8594e8c16e0813c30d25fcff0d5a3 utxo-snapshot-bitcoin-mainnet-651474.tar
0afe8ca07e0ad2b538f43fc3ada89500b3e8594e8c16e0813c30d25fcff0d5a3 utxo-snapshot-bitcoin-mainnet-651474.tar
587ac27b1929123313f842edbdb798afe116548e2a1bddea46d8d7068a6bc156 utxo-snapshot-bitcoin-mainnet-680891.tar
79d5b28fb140c23602bebaf90e829fc89aef2bb95cb2a5d492cd818f22f01836 utxo-snapshot-bitcoin-mainnet-699714.tar
58b3c9c8a3e5f7b3449521e8d7f8435db2e948918063cb7f5b0e635862e03891 utxo-snapshot-bitcoin-mainnet-720179.tar
83f55203f4fca7d4197ef6261a9d3ce09e1ed308e1ecf969f223eb20038dc1dd utxo-snapshot-bitcoin-mainnet-744358.tar
11b355b08a799e2bef7fffb5dea390d0e23f51ef2c31056fbf8d92e007a3d398 utxo-snapshot-bitcoin-mainnet-769818.tar
725a049bc5a9fd60b05bba4d4825d35115d99f05ab5b7716d4507c295d05172d utxo-snapshot-bitcoin-mainnet-820852.tar
744c42885df700513331a978b289d9c9d5b27e0cf1147f2f5a287b4492ff940c utxo-snapshot-bitcoin-mainnet-867690.tar

File diff suppressed because it is too large Load Diff

View File

@ -1,5 +1,5 @@
#
FROM mcr.microsoft.com/dotnet/core/sdk:3.1.202 AS builder
FROM --platform=$BUILDPLATFORM mcr.microsoft.com/dotnet/sdk:10.0.201-noble AS builder
WORKDIR /source
COPY src/docker-compose-generator.csproj docker-compose-generator.csproj
# Cache some dependencies
@ -8,7 +8,7 @@ COPY src/. .
RUN dotnet publish --output /app/ --configuration Release
#
FROM mcr.microsoft.com/dotnet/core/runtime:3.1.4-buster-slim
FROM mcr.microsoft.com/dotnet/runtime:10.0.5-noble
LABEL org.btcpayserver.image=docker-compose-generator
WORKDIR /datadir
WORKDIR /app

View File

@ -2,92 +2,121 @@
{
"Crypto": "ltc",
"CryptoFragment": "litecoin",
"CLightningFragment": "litecoin-clightning",
"LNDFragment": "litecoin-lnd",
"EclairFragment": null
"CLightningFragment": null,
"LNDFragment": null,
"EclairFragment": null,
"PhoenixdFragment": null
},
{
"Crypto": "btc",
"CryptoFragment": "bitcoin",
"CLightningFragment": "bitcoin-clightning",
"LNDFragment": "bitcoin-lnd",
"EclairFragment": "bitcoin-eclair"
"EclairFragment": "bitcoin-eclair",
"PhoenixdFragment": "phoenixd"
},
{
"Crypto": "btx",
"CryptoFragment": "bitcore",
"CLightningFragment": null,
"LNDFragment": null,
"EclairFragment": null
"EclairFragment": null,
"PhoenixdFragment": null
},
{
"Crypto": "btg",
"CryptoFragment": "bgold",
"CLightningFragment": null,
"LNDFragment": "bgold-lnd",
"EclairFragment": null
"EclairFragment": null,
"PhoenixdFragment": null
},
{
"Crypto": "ftc",
"CryptoFragment": "feathercoin",
"CLightningFragment": null,
"LNDFragment": null,
"EclairFragment": null
"EclairFragment": null,
"PhoenixdFragment": null
},
{
"Crypto": "grs",
"CryptoFragment": "groestlcoin",
"CLightningFragment": "groestlcoin-clightning",
"LNDFragment": "groestlcoin-lnd",
"EclairFragment": "groestlcoin-eclair"
"EclairFragment": "groestlcoin-eclair",
"PhoenixdFragment": null
},
{
"Crypto": "via",
"CryptoFragment": "viacoin",
"CLightningFragment": null,
"LNDFragment": null,
"EclairFragment": null
"EclairFragment": null,
"PhoenixdFragment": null
},
{
"Crypto": "dash",
"CryptoFragment": "dash",
"CLightningFragment": null,
"LNDFragment": null,
"EclairFragment": null
"EclairFragment": null,
"PhoenixdFragment": null
},
{
"Crypto": "doge",
"CryptoFragment": "dogecoin",
"CLightningFragment": null,
"LNDFragment": null,
"EclairFragment": null
"EclairFragment": null,
"PhoenixdFragment": null
},
{
"Crypto": "mona",
"CryptoFragment": "monacoin",
"CLightningFragment": null,
"LNDFragment": null,
"EclairFragment": null
"EclairFragment": null,
"PhoenixdFragment": null
},
{
"Crypto": "xmr",
"CryptoFragment": "monero",
"CLightningFragment": null,
"LNDFragment": null,
"EclairFragment": null
"EclairFragment": null,
"PhoenixdFragment": null
},
{
"Crypto": "bdx",
"CryptoFragment": "beldex",
"CLightningFragment": null,
"LNDFragment": null,
"EclairFragment": null,
"PhoenixdFragment": null
},
{
"Crypto": "lbtc",
"CryptoFragment": "liquid",
"CLightningFragment": null,
"LNDFragment": null,
"EclairFragment": null
"EclairFragment": null,
"PhoenixdFragment": null
},
{
"Crypto": "eth",
"CryptoFragment": "ethereum",
"Crypto": "zec",
"CryptoFragment": "zcash",
"CLightningFragment": null,
"LNDFragment": null,
"EclairFragment": null
"EclairFragment": null,
"PhoenixdFragment": null
},
{
"Crypto": "dcr",
"CryptoFragment": "decred",
"CLightningFragment": null,
"LNDFragment": null,
"EclairFragment": null,
"PhoenixdFragment": null
}
]

View File

@ -0,0 +1,31 @@
services:
beldexd:
restart: unless-stopped
container_name: btcpayserver_beldexd
image: beldex/beldex:7.0.0
command: beldexd --rpc-bind-ip=0.0.0.0 --confirm-external-bind --rpc-bind-port=19091 --non-interactive --block-notify="/bin/sh ./scripts/notifier.sh -X GET http://btcpayserver:49392/beldexlikedaemoncallback/block?cryptoCode=bdx&hash=%s" --hide-my-port
expose:
- "19091"
volumes:
- "bdx_data:/data"
beldexd_wallet:
restart: unless-stopped
container_name: btcpayserver_beldex_wallet
image: beldex/beldex:7.0.0
command: beldex-wallet-rpc --rpc-bind-ip=0.0.0.0 --disable-rpc-login --confirm-external-bind --rpc-bind-port=19092 --non-interactive --trusted-daemon --daemon-address=beldexd:19091 --wallet-dir=/wallet --tx-notify="/bin/sh ./scripts/notifier.sh -X GET http://btcpayserver:49392/beldexlikedaemoncallback/tx?cryptoCode=bdx&hash=%s"
expose:
- "19092"
volumes:
- "bdx_wallet:/wallet"
depends_on:
- beldexd
btcpayserver:
environment:
BTCPAY_BDX_DAEMON_URI: http://beldexd:19091
BTCPAY_BDX_WALLET_DAEMON_URI: http://beldexd_wallet:19092
BTCPAY_BDX_WALLET_DAEMON_WALLETDIR: /root/bdx_wallet
volumes:
- "bdx_wallet:/root/bdx_wallet"
volumes:
bdx_wallet:
bdx_data:

View File

@ -1,5 +1,3 @@
version: "3"
services:
lnd_bitcoingold:
image: kamigawabul/btglnd:latest

View File

@ -1,5 +1,3 @@
version: "3"
services:
bgoldd:
restart: unless-stopped
@ -29,3 +27,5 @@ services:
BTCPAY_BTGEXPLORERURL: http://nbxplorer:32838/
volumes:
bgold_datadir:
required:
- "nbxplorer"

View File

@ -1,8 +1,6 @@
version: "3"
services:
clightning_bitcoin:
image: btcpayserver/lightning:v0.9.3-1
image: btcpayserver/lightning:v26.06.1
container_name: btcpayserver_clightning_bitcoin
restart: unless-stopped
environment:
@ -15,100 +13,70 @@ services:
LIGHTNINGD_OPT: |
bitcoin-datadir=/etc/bitcoin
bitcoin-rpcconnect=bitcoind
database-upgrade=true
rpc-file-mode=0666
clnrest-port=3010
clnrest-protocol=http
clnrest-host=0.0.0.0
grpc-port=9736
volumes:
- "clightning_bitcoin_datadir:/root/.lightning"
- "bitcoin_datadir:/etc/bitcoin"
- "nbxplorer_datadir:/root/.nbxplorer"
ports:
- "9735:9735"
- "3010"
expose:
- "9736"
links:
- bitcoind
clightning_bitcoin_charge:
image: shesek/lightning-charge:0.4.19-standalone
restart: unless-stopped
environment:
NETWORK: ${NBITCOIN_NETWORK:-regtest}
COOKIE_FILE: /data/.cookie
URL: ${BTCPAY_ROOTPATH:-/}lightning-charge/btc/
volumes:
- "clightning_bitcoin_datadir:/etc/lightning"
- "clightning_bitcoin_charge:/data"
expose:
- "9112"
links:
- clightning_bitcoin
clightning_bitcoin_spark:
image: shesek/spark-wallet:0.2.9-standalone
restart: unless-stopped
environment:
NETWORK: ${NBITCOIN_NETWORK:-regtest}
SPARK_OPT: --no-tls -C /data/.cookie
volumes:
- "clightning_bitcoin_datadir:/etc/lightning"
- "clightning_bitcoin_spark:/data"
links:
- clightning_bitcoin
expose:
- "9737"
clightning_bitcoin_rest:
image: saubyk/c-lightning-rest:0.4.3
restart: unless-stopped
stop_signal: SIGKILL
environment:
PROTOCOL: "http"
NODE: clightning_bitcoin:9835
LIGHTNINGD_READY_FILE: /root/.nbxplorer/btc_fully_synched
links:
- clightning_bitcoin
volumes:
- "clightning_bitcoin_datadir:/root/.lightning"
- "bitcoin_datadir:/etc/bitcoin"
- "clightning_bitcoin_rest_datadir:/usr/src/app"
- "nbxplorer_datadir:/root/.nbxplorer"
expose:
- "3001"
bitcoin_rtl:
image: shahanafarooqui/rtl:0.10.0
image: shahanafarooqui/rtl:v0.15.4
restart: unless-stopped
environment:
LN_IMPLEMENTATION: CLT
LN_IMPLEMENTATION: CLN
CONFIG_PATH: /root/.lightning/config
LN_SERVER_URL: http://clightning_bitcoin_rest:3001/v1
MACAROON_PATH: /etc/clightning_bitcoin_rest/certs
LN_SERVER_URL: http://clightning_bitcoin:3010
RUNE_PATH: /root/.lightning/rune.env
RTL_CONFIG_PATH: /data/
BITCOIND_CONFIG_PATH: /etc/bitcoin/bitcoin.conf
RTL_SSO: 1
RTL_COOKIE_PATH: /data/.cookie
LOGOUT_REDIRECT_LINK: /server/services
labels:
traefik.enable: "true"
traefik.http.routers.bitcoin_rtl.rule: Host(`${BTCPAY_HOST}`) && (Path(`/rtl`) || PathPrefix(`/rtl/`))
volumes:
- "clightning_bitcoin_datadir:/root/.lightning"
- "bitcoin_datadir:/etc/bitcoin"
- "clightning_bitcoin_rtl_datadir:/data"
- "clightning_bitcoin_rest_datadir:/etc/clightning_bitcoin_rest"
expose:
- "3000"
mempool_api:
environment:
LIGHTNING_ENABLED: "true"
LIGHTNING_BACKEND: "cln"
CLIGHTNING_SOCKET: "/etc/lightning/lightning-rpc"
volumes:
- "clightning_bitcoin_datadir:/etc/lightning"
mempool_web:
environment:
LIGHTNING: "true"
btcpayserver:
environment:
BTCPAY_BTCLIGHTNING: "type=clightning;server=unix://etc/clightning_bitcoin/lightning-rpc"
BTCPAY_BTCEXTERNALSPARK: "server=/spark/btc/;cookiefile=/etc/clightning_bitcoin_spark/.cookie"
BTCPAY_BTCEXTERNALCHARGE: "server=/lightning-charge/btc/;cookiefilepath=/etc/clightning_bitcoin_charge/.cookie"
BTCPAY_BTCEXTERNALRTL: "server=/rtl/api/authenticate/cookie;cookiefile=/etc/clightning_bitcoin_rtl/.cookie"
BTCPAY_BTCEXTERNALCLIGHTNINGREST: "server=/clightning-rest/btc;macaroonfilepath=/etc/clightning_bitcoin_rest/certs/access.macaroon;macaroondirectorypath=/etc/clightning_bitcoin_rest/certs"
volumes:
- "clightning_bitcoin_datadir:/etc/clightning_bitcoin"
- "clightning_bitcoin_spark:/etc/clightning_bitcoin_spark"
- "clightning_bitcoin_charge:/etc/clightning_bitcoin_charge"
- "clightning_bitcoin_rtl_datadir:/etc/clightning_bitcoin_rtl"
- "clightning_bitcoin_rest_datadir:/etc/clightning_bitcoin_rest"
links:
- clightning_bitcoin
volumes:
clightning_bitcoin_datadir:
clightning_bitcoin_spark:
clightning_bitcoin_charge:
clightning_bitcoin_rtl_datadir:
clightning_bitcoin_rest_datadir:
exclusive:
- lightning

View File

@ -1,5 +1,3 @@
version: "3"
services:
bitcoind:
environment:
@ -9,11 +7,10 @@ services:
container_name: btcpayserver_eclair_bitcoin
restart: unless-stopped
stop_signal: SIGINT
image: acinq/eclair:release-0.4.1
image: acinq/eclair:release-0.7.0
environment:
PUBLIC_HOST: ${BTCPAY_HOST}
JAVA_OPTS: |
-Xmx256m
-Declair.printToConsole
-Declair.headless
-Declair.chain=${NBITCOIN_NETWORK:-regtest}
@ -29,11 +26,11 @@ services:
-Declair.bitcoind.rpcport=43782
-Declair.bitcoind.rpcuser=eclair
-Declair.bitcoind.rpcpassword=sFLjcg99Puh4k3CAZCQkLvC-fcoFUFRyKwKcXQKa7dw=
-Declair.bitcoind.zmqblock=tcp://bitcoind:28332
-Declair.bitcoind.zmqblock=tcp://bitcoind:28334
-Declair.bitcoind.zmqtx=tcp://bitcoind:28333
expose:
- "9735" # server port
- "8080" # api port
- "9735" # server port
- "8080" # api port
volumes:
- "bitcoin_datadir:/etc/bitcoin"
- "eclair_bitcoin_datadir:/data"
@ -41,7 +38,7 @@ services:
- bitcoind
bitcoin_rtl:
image: shahanafarooqui/rtl:0.10.0
image: shahanafarooqui/rtl:v0.15.4
restart: unless-stopped
environment:
LN_IMPLEMENTATION: ECL
@ -57,6 +54,9 @@ services:
- "eclair_bitcoin_rtl_datadir:/data"
expose:
- "3000"
labels:
traefik.enable: "true"
traefik.http.routers.bitcoin_rtl.rule: Host(`${BTCPAY_HOST}`) && (Path(`/rtl`) || PathPrefix(`/rtl/`))
links:
- eclair_bitcoin
@ -78,3 +78,5 @@ incompatible:
required:
- "opt-add-zmq"
- "opt-txindex"
exclusive:
- lightning

View File

@ -1,8 +1,6 @@
version: "3"
services:
lnd_bitcoin:
image: btcpayserver/lnd:v0.11.0-beta
image: btcpayserver/lnd:v0.19.3-beta-1
container_name: btcpayserver_lnd_bitcoin
restart: unless-stopped
environment:
@ -12,40 +10,48 @@ services:
LND_ALIAS: ${LIGHTNING_ALIAS}
LND_ENVIRONMENT: "${NBITCOIN_NETWORK:-regtest}"
LND_READY_FILE: /root/.nbxplorer/btc_fully_synched
LND_REST_LISTEN_HOST: http://lnd_bitcoin:8080
LND_HOST_FOR_LOOP: 127.0.0.1:10009
LND_EXTRA_ARGS: |
restlisten=0.0.0.0:8080
restlisten=lnd_bitcoin:8080
rpclisten=127.0.0.1:10008
rpclisten=0.0.0.0:10009
rpclisten=lnd_bitcoin:10009
rpclisten=127.0.0.1:10009
bitcoin.node=bitcoind
bitcoind.rpchost=bitcoind:43782
bitcoind.rpcuser=lnd
bitcoind.rpcpass=afixedpasswordbecauselndsuckswithcookiefile
bitcoind.rpchost=bitcoind:43782
bitcoind.zmqpubrawblock=tcp://bitcoind:28332
bitcoind.zmqpubrawtx=tcp://bitcoind:28333
adminmacaroonpath=/data/admin.macaroon
invoicemacaroonpath=/data/invoice.macaroon
readonlymacaroonpath=/data/readonly.macaroon
notls=1
tlsextradomain=lnd_bitcoin
no-rest-tls=1
protocol.wumbo-channels=1
ports:
- "9735:9735"
expose:
- "8080"
- "8081"
- "9735"
volumes:
- "lnd_bitcoin_datadir:/data"
- "lndloop_bitcoin_datadir:/root/.loop/${NBITCOIN_NETWORK:-regtest}"
- "bitcoin_datadir:/deps/.bitcoin"
- "nbxplorer_datadir:/root/.nbxplorer"
links:
- bitcoind
bitcoin_rtl:
image: shahanafarooqui/rtl:0.10.0
image: shahanafarooqui/rtl:v0.15.4
container_name: generated_lnd_bitcoin_rtl_1
restart: unless-stopped
environment:
LND_SERVER_URL: http://lnd_bitcoin:8080/v1
MACAROON_PATH: /etc/lnd
SWAP_SERVER_URL: https://lnd_bitcoin:8081/v1
SWAP_MACAROON_PATH: /etc/lndloop
RTL_CONFIG_PATH: /data/
LND_CONFIG_PATH: /etc/lnd/lnd.conf
BITCOIND_CONFIG_PATH: /etc/bitcoin/bitcoin.conf
@ -55,9 +61,14 @@ services:
volumes:
- "bitcoin_datadir:/etc/bitcoin"
- "lnd_bitcoin_datadir:/etc/lnd"
- "lnd_bitcoin_datadir:/root/.lnd"
- "lndloop_bitcoin_datadir:/etc/lndloop"
- "lnd_bitcoin_rtl_datadir:/data"
expose:
- "3000"
labels:
traefik.enable: "true"
traefik.http.routers.bitcoin_rtl.rule: Host(`${BTCPAY_HOST}`) && (Path(`/rtl`) || PathPrefix(`/rtl/`))
links:
- lnd_bitcoin
@ -94,9 +105,29 @@ services:
volumes:
- "lnd_bitcoin_datadir:/lnd"
mempool_api:
environment:
LIGHTNING_ENABLED: "true"
LIGHTNING_BACKEND: "lnd"
LND_TLS_CERT_PATH: "/etc/lnd/tls.cert"
LND_MACAROON_PATH: "/etc/lnd/readonly.macaroon"
LND_REST_API_URL: "http://lnd_bitcoin:8080"
LND_TIMEOUT: 1000000
volumes:
- "lnd_bitcoin_datadir:/etc/lnd"
mempool_web:
environment:
LIGHTNING: "true"
volumes:
lnd_bitcoin_datadir:
lndloop_bitcoin_datadir:
lnd_bitcoin_rtl_datadir:
recommended:
- "opt-lnd-grpc"
required:
- "opt-add-zmq"
exclusive:
- lightning

View File

@ -1,12 +1,11 @@
version: "3"
services:
bitcoind:
restart: unless-stopped
container_name: btcpayserver_bitcoind
image: btcpayserver/bitcoin:0.21.0
image: btcpayserver/bitcoin:29.2
environment:
BITCOIN_NETWORK: ${NBITCOIN_NETWORK:-regtest}
CREATE_WALLET: "false"
BITCOIN_WALLETDIR: "/walletdata"
# rpcport and rpcbind seems duplicates, but they are not
# rpcport is using by some tooling to automatically get
@ -38,3 +37,10 @@ services:
volumes:
bitcoin_datadir:
bitcoin_wallet_datadir:
exclusive:
- bitcoin-node
recommended:
- "opt-mempoolfullrbf"
required:
- "nbxplorer"

View File

@ -0,0 +1,46 @@
services:
bitcoind:
restart: unless-stopped
container_name: btcpayserver_bitcoind
image: btcpayserver/bitcoin:31.0
environment:
BITCOIN_NETWORK: ${NBITCOIN_NETWORK:-regtest}
CREATE_WALLET: "false"
BITCOIN_WALLETDIR: "/walletdata"
# rpcport and rpcbind seems duplicates, but they are not
# rpcport is using by some tooling to automatically get
# the rpcport from the configuration file. Do not remove!
BITCOIN_EXTRA_ARGS: |
rpcport=43782
rpcbind=0.0.0.0:43782
rpcallowip=0.0.0.0/0
port=39388
whitelist=0.0.0.0/0
maxmempool=500
expose:
- "43782"
- "39388"
volumes:
- "bitcoin_datadir:/data"
- "bitcoin_wallet_datadir:/walletdata"
nbxplorer:
environment:
NBXPLORER_CHAINS: "btc"
NBXPLORER_BTCRPCURL: http://bitcoind:43782/
NBXPLORER_BTCNODEENDPOINT: bitcoind:39388
volumes:
- "bitcoin_datadir:/root/.bitcoin"
btcpayserver:
environment:
BTCPAY_CHAINS: "btc"
BTCPAY_BTCEXPLORERURL: http://nbxplorer:32838/
volumes:
bitcoin_datadir:
bitcoin_wallet_datadir:
exclusive:
- bitcoin-node
recommended:
- "opt-mempoolfullrbf"
required:
- "nbxplorer"

View File

@ -0,0 +1,46 @@
services:
bitcoind:
restart: unless-stopped
container_name: btcpayserver_bitcoind
image: btcpayserver/bitcoinknots:29.3.knots20260508
environment:
BITCOIN_NETWORK: ${NBITCOIN_NETWORK:-regtest}
CREATE_WALLET: "false"
BITCOIN_WALLETDIR: "/walletdata"
# rpcport and rpcbind seems duplicates, but they are not
# rpcport is using by some tooling to automatically get
# the rpcport from the configuration file. Do not remove!
BITCOIN_EXTRA_ARGS: |
rpcport=43782
rpcbind=0.0.0.0:43782
rpcallowip=0.0.0.0/0
port=39388
whitelist=0.0.0.0/0
maxmempool=500
expose:
- "43782"
- "39388"
volumes:
- "bitcoin_datadir:/data"
- "bitcoin_wallet_datadir:/walletdata"
nbxplorer:
environment:
NBXPLORER_CHAINS: "btc"
NBXPLORER_BTCRPCURL: http://bitcoind:43782/
NBXPLORER_BTCNODEENDPOINT: bitcoind:39388
volumes:
- "bitcoin_datadir:/root/.bitcoin"
btcpayserver:
environment:
BTCPAY_CHAINS: "btc"
BTCPAY_BTCEXPLORERURL: http://nbxplorer:32838/
volumes:
bitcoin_datadir:
bitcoin_wallet_datadir:
exclusive:
- bitcoin-node
recommended:
- "opt-mempoolfullrbf"
required:
- "nbxplorer"

View File

@ -1,5 +1,3 @@
version: "3"
services:
bitcoinplusd:
restart: unless-stopped
@ -33,3 +31,5 @@ services:
BTCPAY_TZCEXPLORERURL: http://nbxplorer:32838/
volumes:
bitcoinplus_datadir:
required:
- "nbxplorer"

View File

@ -1,10 +1,8 @@
version: "3"
services:
bitcored:
restart: unless-stopped
container_name: btcpayserver_bitcored
image: dalijolijo/docker-bitcore:0.90.9.1
image: dalijolijo/docker-bitcore:0.90.9.10
environment:
BITCOIN_EXTRA_ARGS: |
rpcport=43782
@ -32,3 +30,5 @@ services:
volumes:
bitcore_datadir:
required:
- "nbxplorer"

View File

@ -1,5 +1,3 @@
version: "3"
services:
btcpayserver:

View File

@ -1,9 +1,7 @@
version: "3"
services:
btcpayserver:
ports:
- "80:49392"
- "${NOREVERSEPROXY_HTTP_PORT:-80}:49392"
exclusive:
- proxy

View File

@ -1,15 +1,13 @@
version: "3"
services:
btcpayserver:
restart: unless-stopped
image: ${BTCPAY_IMAGE:-btcpayserver/btcpayserver:1.0.7.0$<BTCPAY_BUILD_CONFIGURATION>?}
container_name: generated_btcpayserver_1
image: ${BTCPAY_IMAGE:-btcpayserver/btcpayserver:2.4.0}
expose:
- "49392"
environment:
# BTCPay settings
BTCPAY_POSTGRES: User ID=postgres;Host=postgres;Port=5432;Database=btcpayserver${NBITCOIN_NETWORK:-regtest}
BTCPAY_POSTGRES: User ID=postgres;Host=postgres;Port=5432;Application Name=btcpayserver;Database=btcpayserver${NBITCOIN_NETWORK:-regtest}
BTCPAY_NETWORK: ${NBITCOIN_NETWORK:-regtest}
BTCPAY_BIND: 0.0.0.0:49392
BTCPAY_ROOTPATH: ${BTCPAY_ROOTPATH:-/}
@ -20,11 +18,15 @@ services:
BTCPAY_DEBUGLOG: btcpay.log
BTCPAY_UPDATEURL: https://api.github.com/repos/btcpayserver/btcpayserver/releases/latest
BTCPAY_DOCKERDEPLOYMENT: "true"
BTCPAY_NODEFAULTCHAIN: "true"
labels:
traefik.enable: "true"
traefik.http.routers.btcpayserver.rule: Host(`${BTCPAY_HOST}`)
# Traefic can not accept list from BTCPAY_ADDITIONAL_HOSTS, see Traefik/README.md
links:
- postgres
volumes:
- "btcpay_datadir:/datadir"
- "nbxplorer_datadir:/root/.nbxplorer"
- "$<BTCPAY_HOST_SSHAUTHORIZEDKEYS>?:${BTCPAY_SSHAUTHORIZEDKEYS}"
- "btcpay_pluginsdir:/root/.btcpayserver/Plugins"
@ -34,7 +36,6 @@ volumes:
required:
- "postgres"
- "nbxplorer"
- "btcpayserver"
recommended:
- "opt-add-tor"

View File

@ -1,15 +1,18 @@
version: "3"
services:
dashd:
restart: unless-stopped
container_name: btcpayserver_dashd
image: btcpayserver/dash:0.16.1.1
image: btcpayserver/dash:23.1.2
environment:
# rpcport and rpcbind seems duplicates, but they are not
# rpcport is using by some tooling to automatically get
# the rpcport from the configuration file. Do not remove!
BITCOIN_EXTRA_ARGS: |
${NBITCOIN_NETWORK:-regtest}=1
port=9999
rpcport=9998
rpcbind=0.0.0.0:9998
rpcallowip=0.0.0.0/0
whitelist=0.0.0.0/0
expose:
- "9998"
@ -29,3 +32,5 @@ services:
BTCPAY_DASHEXPLORERURL: http://nbxplorer:32838/
volumes:
dash_datadir:
required:
- "nbxplorer"

View File

@ -0,0 +1,23 @@
services:
dcrwallet:
restart: unless-stopped
container_name: btcpayserver_dcrwallet
image: ghcr.io/bisoncraft/decred:2.1.5
command:
- dcrwallet
- --spv
- --username=btcpay
- --password=btcpay
- --rpclisten=0.0.0.0:9110
- --pass=${BTCPAY_DCR_WALLET_PASSPHRASE}
expose:
- "9110"
volumes:
- "dcr_wallet:/root/.dcrwallet"
btcpayserver:
environment:
BTCPAY_DCR_WALLET_URI: https://dcrwallet:9110
BTCPAY_DCR_RPC_USERNAME: btcpay
BTCPAY_DCR_RPC_PASSWORD: btcpay
volumes:
dcr_wallet:

View File

@ -1,10 +1,8 @@
version: "3"
services:
dogecoind:
restart: unless-stopped
container_name: btcpayserver_dogecoind
image: btcpayserver/dogecoin:1.14.2
image: btcpayserver/dogecoin:1.14.7
environment:
DOGECOIN_EXTRA_ARGS: |
rpcuser=ceiwHEbqWI83
@ -17,8 +15,6 @@ services:
# Reducing memory usage of dogecoind. Don't try running this container without at least 2 GB of memory
# https://www.reddit.com/r/dogecoin/comments/5wynqe/reducing_memory_usage_of_dogecoind/
dbcache=50
ports:
- "22555:22555"
expose:
- "22555" # RPC
- "22556" # P2P
@ -39,3 +35,5 @@ services:
BTCPAY_DOGEEXPLORERURL: http://nbxplorer:32838/
volumes:
dogecoin_datadir:
required:
- "nbxplorer"

View File

@ -1,5 +1,3 @@
version: "3"
services:
btcpayserver:
environment:

View File

@ -1,5 +1,3 @@
version: "3"
services:
feathercoind:
restart: unless-stopped
@ -29,3 +27,5 @@ services:
BTCPAY_FTCEXPLORERURL: http://nbxplorer:32838/
volumes:
feathercoin_datadir:
required:
- "nbxplorer"

View File

@ -1,32 +1,25 @@
version: "3"
services:
clightning_groestlcoin:
image: groestlcoin/lightning:v0.9.2
stop_signal: SIGKILL
image: groestlcoin/lightning:v24.08
container_name: btcpayserver_clightning_groestlcoin
restart: unless-stopped
environment:
LIGHTNINGD_NETWORK: ${NBITCOIN_NETWORK:-regtest}
LIGHTNINGD_CHAIN: grs
LIGHTNINGD_ALIAS: ${LIGHTNING_ALIAS}
LIGHTNINGD_ANNOUNCEADDR: ${BTCPAY_ANNOUNCEABLE_HOST}
LIGHTNINGD_PORT: 9736
LIGHTNINGD_EXPLORERURL: "http://nbxplorer:32838/"
LIGHTNINGD_OPT: |
bitcoin-datadir=/etc/groestlcoin
bitcoin-rpcconnect=groestlcoind
bitcoin-rpcport=43782
log-level=debug
announce-addr=${BTCPAY_HOST}:9738
bind-addr=0.0.0.0:9735
network=${NBITCOIN_NETWORK:-regtest}
alias=${LIGHTNING_ALIAS}
groestlcoin-datadir=/etc/groestlcoin
groestlcoin-rpcconnect=groestlcoind
volumes:
- "clightning_groestlcoin_datadir:/root/.lightning"
- "groestlcoin_datadir:/etc/groestlcoin"
- "nbxplorer_datadir:/root/.nbxplorer"
ports:
- "9738:9735"
- "9736:9736"
links:
- nbxplorer
- groestlcoind
clightning_groestlcoin_charge:
image: groestlcoin/groestlcoin-lightning-charge:version-0.4.22
@ -35,6 +28,8 @@ services:
NETWORK: ${NBITCOIN_NETWORK:-regtest}
COOKIE_FILE: /data/.cookie
URL: ${BTCPAY_ROOTPATH:-/}lightning-charge/grs/
LN_NET_PATH: /etc/lightning
LN_NET: /etc/lightning
volumes:
- "clightning_groestlcoin_datadir:/etc/lightning"
- "clightning_groestlcoin_charge:/data"
@ -42,6 +37,21 @@ services:
- "9112"
links:
- clightning_groestlcoin
clightning_groestlcoin_spark:
image: groestlcoin/groestlcoin-spark:version-0.2.16
restart: unless-stopped
environment:
NETWORK: ${NBITCOIN_NETWORK:-regtest}
SPARK_OPT: --no-tls -C /data/.cookie
volumes:
- "clightning_groestlcoin_datadir:/etc/lightning"
- "clightning_groestlcoin_spark:/data"
links:
- clightning_groestlcoin
expose:
- "9736"
btcpayserver:
environment:
BTCPAY_GRSLIGHTNING: "type=clightning;server=unix://etc/clightning_groestlcoin/lightning-rpc"
@ -53,20 +63,6 @@ services:
- "clightning_groestlcoin_charge:/etc/clightning_groestlcoin_charge"
links:
- clightning_groestlcoin
clightning_groestlcoin_spark:
image: groestlcoin/groestlcoin-spark:version-0.2.16
stop_signal: SIGKILL
restart: unless-stopped
environment:
NETWORK: ${NBITCOIN_NETWORK:-regtest}
SPARK_OPT: --no-tls --port 9739 -C /data/.cookie
volumes:
- "clightning_groestlcoin_datadir:/etc/lightning"
- "clightning_groestlcoin_spark:/data"
links:
- clightning_groestlcoin
expose:
- "9739"
volumes:
clightning_groestlcoin_datadir:
clightning_groestlcoin_charge:

View File

@ -1,5 +1,3 @@
version: "3"
services:
groestlcoind:
environment:
@ -9,7 +7,7 @@ services:
container_name: btcpayserver_eclair_groestlcoin
restart: unless-stopped
stop_signal: SIGINT
image: groestlcoin/eclair:v0.3.3
image: groestlcoin/eclair:v0.6.0
environment:
PUBLIC_HOST: ${BTCPAY_HOST}
JAVA_OPTS: |
@ -19,7 +17,7 @@ services:
-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.server.port=9736
-Declair.api.enabled=true
-Declair.api.binding-ip=0.0.0.0
-Declair.api.port=8080
@ -32,13 +30,14 @@ services:
-Declair.bitcoind.zmqblock=tcp://groestlcoind:21441
-Declair.bitcoind.zmqtx=tcp://groestlcoind:21441
expose:
- "9735" # server port
- "9736" # 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"
@ -49,6 +48,8 @@ services:
volumes:
eclair_groestlcoin_datadir:
incompatible:
- pruning
required:
- "opt-add-zmq"
- "opt-txindex"

View File

@ -1,5 +1,3 @@
version: "3"
services:
lnd_groestlcoin:
image: groestlcoin/lnd:v0.10.0-grs
@ -11,22 +9,30 @@ services:
LND_PORT: 9736
LND_ALIAS: ${LIGHTNING_ALIAS}
LND_ENVIRONMENT: "${NBITCOIN_NETWORK:-regtest}"
LND_REST_LISTEN_HOST: http://lnd_groestlcoin:8080
LND_HOST_FOR_LOOP: 127.0.0.1:10009
LND_EXTRA_ARGS: |
restlisten=0.0.0.0:8080
restlisten=lnd_groestlcoin:8080
rpclisten=127.0.0.1:10008
rpclisten=0.0.0.0:10009
rpclisten=lnd_groestlcoin:10009
rpclisten=127.0.0.1:10009
groestlcoin.node=groestlcoind
groestlcoind.rpchost=groestlcoind:43782
groestlcoind.rpcuser=lnd
groestlcoind.rpcpass=afixedpasswordbecauselndsuckswithcookiefile
groestlcoind.zmqpubrawblock=tcp://groestlcoind:21441
groestlcoind.zmqpubrawtx=tcp://groestlcoind:21441
adminmacaroonpath=/data/admin.macaroon
invoicemacaroonpath=/data/invoice.macaroon
readonlymacaroonpath=/data/readonly.macaroon
notls=1
tlsextradomain=lnd_groestlcoin
no-rest-tls=1
protocol.wumbo-channels=1
ports:
- "9736:9736"
expose:
- "8080"
- "8081"
- "9736"
volumes:
- "lnd_groestlcoin_datadir:/data"
@ -46,6 +52,15 @@ services:
links:
- lnd_groestlcoin
groestlcoind:
environment:
GROESTLCOIN_EXTRA_ARGS: |
# rpcuser=lnd
# rpcpassword=afixedpasswordbecauselndsuckswithcookiefile
# We need to use rpcauth because we also need cookieauth. rpcpassword disabled cookie file auth.
# Be careful if you copy the line below from the docker-compose.yml! A dollar sign is escaped.
rpcauth=lnd:d031f7567c5b02ba95524170e51c77f4$$827ce5412f653d6613c2f480e521eb437c866b999bdeb2ee4f9c41d3b00dff1c
nginx:
links:
- "lnd_groestlcoin"

View File

@ -1,14 +1,18 @@
version: "3"
services:
groestlcoind:
restart: unless-stopped
container_name: btcpayserver_groestlcoind
image: groestlcoin/docker-groestlcoin:2.21.0
image: btcpayserver/groestlcoin:25.0
environment:
GROESTLCOIN_NETWORK: ${NBITCOIN_NETWORK:-regtest}
GROESTLCOIN_WALLETDIR: "/walletdata"
# rpcport and rpcbind seems duplicates, but they are not
# rpcport is using by some tooling to automatically get
# the rpcport from the configuration file. Do not remove!
GROESTLCOIN_EXTRA_ARGS: |
rpcport=43782
${NBITCOIN_NETWORK:-regtest}=1
rpcbind=0.0.0.0:43782
rpcallowip=0.0.0.0/0
port=39388
whitelist=0.0.0.0/0
expose:
@ -16,6 +20,7 @@ services:
- "39388"
volumes:
- "groestlcoin_datadir:/data"
- "groestlcoin_wallet_datadir:/walletdata"
nbxplorer:
environment:
NBXPLORER_CHAINS: "grs"
@ -29,3 +34,6 @@ services:
BTCPAY_GRSEXPLORERURL: http://nbxplorer:32838/
volumes:
groestlcoin_datadir:
groestlcoin_wallet_datadir:
required:
- "nbxplorer"

View File

@ -0,0 +1,6 @@
services:
elementsd_liquid:
environment:
ELEMENTS_EXTRA_ARGS: |
prune=5000
trim_headers=1

View File

@ -1,22 +1,23 @@
version: "3"
services:
elementsd_liquid:
restart: unless-stopped
container_name: btcpayserver_elementsd_liquid
image: btcpayserver/elements:0.18.1.7
image: btcpayserver/elements:23.2.3
environment:
ELEMENTS_NETWORK: ${NBITCOIN_NETWORK:-regtest}
ELEMENTS_MAINNET_CHAIN: "liquidv1"
ELEMENTS_WALLETDIR: "/walletdata"
# rpcport and rpcbind seems duplicates, but they are not
# rpcport is using by some tooling to automatically get
# the rpcport from the configuration file. Do not remove!
ELEMENTS_EXTRA_ARGS: |
rpcport=43782
rpcbind=0.0.0.0:43782
rpcauth=liquid:c8bf1a8961d97f224cb21224aaa8235d$$402f4a8907683d057b8c58a42940b6e54d1638322a42986ae28ebb844e603ae6
rpcallowip=0.0.0.0/0
port=39388
whitelist=0.0.0.0/0
rpcauth=liquid:c8bf1a8961d97f224cb21224aaa8235d$$402f4a8907683d057b8c58a42940b6e54d1638322a42986ae28ebb844e603ae6
validatepegin=0
prune=5000
fallbackfee=0.000001
expose:
- "43782"
@ -40,3 +41,8 @@ services:
volumes:
elements_datadir:
elements_wallet_datadir:
recommended:
- "liquid-default-prune"
required:
- "nbxplorer"

View File

@ -1,34 +0,0 @@
version: "3"
services:
clightning_litecoin:
image: btcpayserver/lightning:v0.9.0-1
container_name: btcpayserver_clightning_litecoin
restart: unless-stopped
environment:
LIGHTNINGD_NETWORK: ${NBITCOIN_NETWORK:-regtest}
LIGHTNINGD_CHAIN: ltc
LIGHTNINGD_ALIAS: ${LIGHTNING_ALIAS}
LIGHTNINGD_ANNOUNCEADDR: ${BTCPAY_ANNOUNCEABLE_HOST}
LIGHTNINGD_PORT: 9735
LIGHTNINGD_READY_FILE: /root/.nbxplorer/ltc_fully_synched
LIGHTNINGD_OPT: |
bitcoin-datadir=/etc/litecoin
bitcoin-rpcconnect=litecoind
volumes:
- "clightning_litecoin_datadir:/root/.lightning"
- "litecoin_datadir:/etc/litecoin"
- "nbxplorer_datadir:/root/.nbxplorer"
ports:
- "9736:9735"
links:
- litecoind
btcpayserver:
environment:
BTCPAY_LTCLIGHTNING: "type=clightning;server=unix://etc/clightning_litecoin/lightning-rpc"
volumes:
- "clightning_litecoin_datadir:/etc/clightning_litecoin"
links:
- clightning_litecoin
volumes:
clightning_litecoin_datadir:

View File

@ -1,52 +0,0 @@
version: "3"
services:
lnd_litecoin:
image: btcpayserver/lnd:v0.11.0-beta
container_name: btcpayserver_lnd_litecoin
restart: unless-stopped
environment:
LND_CHAIN: "ltc"
LND_EXTERNALIP: ${BTCPAY_ANNOUNCEABLE_HOST}
LND_PORT: 9736
LND_ALIAS: ${LIGHTNING_ALIAS}
LND_ENVIRONMENT: "${NBITCOIN_NETWORK:-regtest}"
LND_READY_FILE: /root/.nbxplorer/ltc_fully_synched
LND_EXTRA_ARGS: |
restlisten=0.0.0.0:8080
rpclisten=127.0.0.1:10008
rpclisten=0.0.0.0:10009
litecoin.node=litecoind
litecoind.rpchost=litecoind:43782
litecoind.zmqpubrawblock=tcp://litecoind:28332
litecoind.zmqpubrawtx=tcp://litecoind:28333
adminmacaroonpath=/data/admin.macaroon
invoicemacaroonpath=/data/invoice.macaroon
readonlymacaroonpath=/data/readonly.macaroon
notls=1
ports:
- "9736:9736"
expose:
- "8080"
- "9736"
volumes:
- "lnd_litecoin_datadir:/data"
- "litecoin_datadir:/deps/.litecoin"
- "nbxplorer_datadir:/root/.nbxplorer"
links:
- litecoind
btcpayserver:
environment:
BTCPAY_LTCLIGHTNING: "type=lnd-rest;server=http://lnd_litecoin:8080/;macaroonfilepath=/etc/lnd_litecoin/admin.macaroon;allowinsecure=true"
BTCPAY_LTCEXTERNALLNDSEEDBACKUP: "/etc/lnd_litecoin/data/chain/litecoin/${NBITCOIN_NETWORK:-regtest}/walletunlock.json"
volumes:
- "lnd_litecoin_datadir:/etc/lnd_litecoin"
links:
- lnd_litecoin
volumes:
lnd_litecoin_datadir:
required:
- "opt-add-zmq"

View File

@ -1,14 +1,15 @@
version: "3"
services:
litecoind:
restart: unless-stopped
container_name: btcpayserver_litecoind
image: btcpayserver/litecoin:0.17.1-1
image: btcpayserver/litecoin:0.21.5.5
environment:
BITCOIN_NETWORK: ${NBITCOIN_NETWORK:-regtest}
BITCOIN_WALLETDIR: "/walletdata"
BITCOIN_EXTRA_ARGS: |
rpcport=43782
rpcbind=0.0.0.0:43782
rpcallowip=0.0.0.0/0
port=39388
whitelist=0.0.0.0/0
expose:
@ -16,6 +17,7 @@ services:
- "39388"
volumes:
- "litecoin_datadir:/data"
- "litecoin_wallet_datadir:/walletdata"
nbxplorer:
environment:
NBXPLORER_CHAINS: "ltc"
@ -30,3 +32,6 @@ services:
volumes:
litecoin_datadir:
litecoin_wallet_datadir:
required:
- "nbxplorer"

View File

@ -1,14 +1,14 @@
version: "3"
services:
monacoind:
restart: unless-stopped
container_name: btcpayserver_monacoind
image: wakiyamap/docker-monacoin:0.17.1
image: wakiyamap/docker-monacoin:0.20.2
environment:
BITCOIN_EXTRA_ARGS: |
rpcport=43782
${NBITCOIN_NETWORK:-regtest}=1
rpcport=43782
rpcbind=0.0.0.0:43782
rpcallowip=0.0.0.0/0
port=39388
whitelist=0.0.0.0/0
expose:
@ -30,3 +30,5 @@ services:
volumes:
monacoin_datadir:
required:
- "nbxplorer"

View File

@ -1,20 +1,18 @@
version: "3"
services:
monerod:
restart: unless-stopped
container_name: btcpayserver_monerod
image: btcpayserver/monero:0.17.1.8
entrypoint: monerod --rpc-bind-ip=0.0.0.0 --confirm-external-bind --rpc-bind-port=18081 --non-interactive --block-notify="/bin/sh ./scripts/notifier.sh -X GET http://btcpayserver:49392/monerolikedaemoncallback/block?cryptoCode=xmr&hash=%s" --hide-my-port --prune-blockchain --enable-dns-blocklist
image: btcpayserver/monero:0.18.4.3
command: monerod --rpc-bind-ip=0.0.0.0 --confirm-external-bind --rpc-bind-port=18081 --non-interactive --block-notify="/bin/sh ./scripts/notifier.sh -X GET http://btcpayserver:49392/monerolikedaemoncallback/block?cryptoCode=xmr&hash=%s" --hide-my-port --prune-blockchain --enable-dns-blocklist
expose:
- "18081"
volumes:
- "xmr_data:/home/monero/.bitmonero"
- "xmr_data:/data"
monerod_wallet:
restart: unless-stopped
container_name: btcpayserver_monero_wallet
image: btcpayserver/monero:0.17.1.8
entrypoint: monero-wallet-rpc --rpc-bind-ip=0.0.0.0 --disable-rpc-login --confirm-external-bind --rpc-bind-port=18082 --non-interactive --trusted-daemon --daemon-address=monerod:18081 --wallet-file=/wallet/wallet --password-file=/wallet/password --tx-notify="/bin/sh ./scripts/notifier.sh -X GET http://btcpayserver:49392/monerolikedaemoncallback/tx?cryptoCode=xmr&hash=%s"
image: btcpayserver/monero:0.18.4.3
command: monero-wallet-rpc --rpc-bind-ip=0.0.0.0 --disable-rpc-login --confirm-external-bind --rpc-bind-port=18082 --non-interactive --trusted-daemon --daemon-address=monerod:18081 --wallet-dir=/wallet --tx-notify="/bin/sh ./scripts/notifier.sh -X GET http://btcpayserver:49392/monerolikedaemoncallback/tx?cryptoCode=xmr&hash=%s"
expose:
- "18082"
volumes:
@ -23,7 +21,6 @@ services:
- monerod
btcpayserver:
environment:
BTCPAY_CHAINS: "xmr"
BTCPAY_XMR_DAEMON_URI: http://monerod:18081
BTCPAY_XMR_WALLET_DAEMON_URI: http://monerod_wallet:18082
BTCPAY_XMR_WALLET_DAEMON_WALLETDIR: /root/xmr_wallet

View File

@ -1,10 +1,9 @@
version: "3"
services:
nbxplorer:
restart: unless-stopped
image: nicolasdorier/nbxplorer:2.1.49
container_name: generated_nbxplorer_1
image: nicolasdorier/nbxplorer:2.6.8
expose:
- "32838"
environment:
@ -12,8 +11,17 @@ services:
NBXPLORER_BIND: 0.0.0.0:32838
NBXPLORER_TRIMEVENTS: 10000
NBXPLORER_SIGNALFILESDIR: /datadir
NBXPLORER_POSTGRES: User ID=postgres;Host=postgres;Port=5432;Application Name=nbxplorer;MaxPoolSize=20;Database=nbxplorer${NBITCOIN_NETWORK:-regtest}
links:
- postgres
volumes:
- "nbxplorer_datadir:/datadir"
btcpayserver:
environment:
BTCPAY_EXPLORERPOSTGRES: User ID=postgres;Host=postgres;Port=5432;Application Name=btcpayserver;MaxPoolSize=80;Database=nbxplorer${NBITCOIN_NETWORK:-regtest}
volumes:
- "nbxplorer_datadir:/root/.nbxplorer"
volumes:
nbxplorer_datadir:

View File

@ -1,9 +1,7 @@
version: "3"
services:
letsencrypt-nginx-proxy-companion:
restart: unless-stopped
image: btcpayserver/letsencrypt-nginx-proxy-companion:1.12.2
image: btcpayserver/letsencrypt-nginx-proxy-companion:2.2.9-2
container_name: letsencrypt-nginx-proxy-companion
volumes:
- "/var/run/docker.sock:/var/run/docker.sock:ro"
@ -11,13 +9,13 @@ services:
- "nginx_vhost:/etc/nginx/vhost.d"
- "nginx_html:/usr/share/nginx/html"
- "nginx_certs:/etc/nginx/certs:rw"
- "acme:/etc/acme.sh"
environment:
NGINX_DOCKER_GEN_CONTAINER: "nginx-gen"
NGINX_PROXY_CONTAINER: "nginx"
ACME_CA_URI: ${ACME_CA_URI:-staging}
ACME_CA_URI: ${ACME_CA_URI:-production}
links:
- nginx-gen
nginx:
ports:
- "${REVERSEPROXY_HTTPS_PORT:-443}:443"
@ -27,3 +25,5 @@ services:
nginx-gen:
volumes:
- "nginx_certs:/etc/nginx/certs:ro"
volumes:
acme:

View File

@ -1,9 +1,7 @@
version: "3"
services:
nginx:
restart: unless-stopped
image: nginx:1.16.0
image: nginx:1.25.3-bookworm
container_name: nginx
ports:
- "${REVERSEPROXY_HTTP_PORT:-80}:80"
@ -13,7 +11,7 @@ services:
- "nginx_html:/usr/share/nginx/html"
nginx-gen:
restart: unless-stopped
image: btcpayserver/docker-gen:0.7.8
image: btcpayserver/docker-gen:0.10.7
container_name: nginx-gen
environment:
DEFAULT_HOST: ${REVERSEPROXY_DEFAULT_HOST:-none}

View File

@ -0,0 +1,39 @@
# DO NOT USE THOSE ARE DEPRECATED
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.4.1"
user: "0:0"
depends_on: [ "bluewallet_lndhub_redis" ]
restart: "on-failure"
stop_grace_period: "1m"
volumes:
- "lnd_bitcoin_datadir:/lnd:ro"
environment:
PORT: "3000"
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": ""}}'
# overrides to fix file permissions, see original: https://github.com/BlueWallet/LndHub/blob/master/Dockerfile
entrypoint: "bash"
command: -c "cp /lnd/tls.cert /lnd/admin.macaroon /lndhub/ && cd /lndhub && chown lndhub:lndhub admin.macaroon tls.cert && npm start"
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"

View File

@ -1,5 +1,3 @@
version: "3"
services:
btcqbo:
image: jvandrew/btcqbo:0.3.36

View File

@ -1,9 +1,7 @@
version: "3"
services:
btctransmuter:
restart: unless-stopped
image: btcpayserver/btctransmuter:0.0.56
image: btcpayserver/btctransmuter:0.0.59
container_name: btctransmuter
environment:
TRANSMUTER_Database: User ID=postgres;Host=postgres;Port=5432;Database=btctransmuter${NBITCOIN_NETWORK:-regtest}
@ -21,6 +19,9 @@ services:
VIRTUAL_HOST: ${BTCTRANSMUTER_HOST}
VIRTUAL_HOST_NAME: "btctransmuter"
TRANSMUTER_BTCPayAuthServer: "http://btcpayserver:49392"
labels:
traefik.enable: "true"
traefik.http.routers.btctransmuter.rule: Host(`${BTCPAY_HOST}`) && (Path(`/btctransmuter`) || PathPrefix(`/btctransmuter/`))
expose:
- "80"
links:

View File

@ -1,5 +1,3 @@
version: "3"
services:
bwt:
image: shesek/bwt:0.2.2-electrum

View File

@ -0,0 +1,68 @@
services:
chatwoot:
image: chatwoot/chatwoot:v1.7.0
restart: unless-stopped
container_name: chatwoot
env_file: chatwoot-config.env
environment:
FRONTEND_URL: ${BTCPAY_PROTOCOL:-https}://${CHATWOOT_HOST}
FORCE_SSL: "true"
REDIS_URL: redis://redis:6379
POSTGRES_HOST: postgres
POSTGRES_USERNAME: postgres
RAILS_ENV: production
NODE_ENV: production
RAILS_MAX_THREADS: 5
REDIS_PASSWORD: ""
RAILS_LOG_TO_STDOUT: "true"
LOG_LEVEL: info
LOG_SIZE: 500
IOS_APP_ID: 6C953F3RX2.com.chatwoot.app
LETSENCRYPT_HOST: ${CHATWOOT_HOST}
LETSENCRYPT_EMAIL: ${LETSENCRYPT_EMAIL:-<no value>}
VIRTUAL_HOST: ${CHATWOOT_HOST}
VIRTUAL_HOST_NAME: "chatwoot"
VIRTUAL_PORT: 3000
expose:
- "3000"
depends_on:
- postgres
- redis
entrypoint: docker/entrypoints/rails.sh
command: "bundle exec rails s -p 3000 -b 0.0.0.0"
chatwoot_sidekiq:
image: chatwoot/chatwoot:v1.7.0
restart: unless-stopped
env_file: chatwoot-config.env
environment:
FRONTEND_URL: ${BTCPAY_PROTOCOL:-https}://${CHATWOOT_HOST}
FORCE_SSL: "true"
REDIS_URL: redis://redis:6379
POSTGRES_HOST: postgres
POSTGRES_USERNAME: postgres
RAILS_ENV: production
NODE_ENV: production
RAILS_MAX_THREADS: 5
REDIS_PASSWORD: ""
RAILS_LOG_TO_STDOUT: "true"
LOG_LEVEL: info
LOG_SIZE: 500
IOS_APP_ID: 6C953F3RX2.com.chatwoot.app
depends_on:
- postgres
- redis
command: "bundle exec sidekiq -C config/sidekiq.yml"
redis:
image: redis:5.0.2-alpine
restart: unless-stopped
expose:
- "6379"
volumes:
- "redis_datadir:/data"
btcpayserver:
environment:
BTCPAY_EXTERNALSERVICES: "Chatwoot:${BTCPAY_PROTOCOL:-https}://${CHATWOOT_HOST};"
volumes:
redis_datadir:

View File

@ -0,0 +1,10 @@
services:
cloudflared:
container_name: 'cloudflared-tunnel'
image: btcpayserver/cloudflared:2024.8.2-4
command: 'tunnel --no-autoupdate run --token ${CLOUDFLARE_TUNNEL_TOKEN}'
restart: 'on-failure'
environment:
REAL_IP_HEADER: Cf-Connecting-Ip
links:
- nginx

View File

@ -1,5 +1,3 @@
version: "3"
services:
configurator:
restart: unless-stopped

View File

@ -1,12 +1,10 @@
version: "3"
services:
bitcoind:
environment:
BITCOIN_EXTRA_ARGS: |
rpcauth=eps:3d1cff5ee81ddeb3ba94483150310e74$$4626aeb95b2a2b066eac8833c1ad936f65cf7492aa836ec8f173ff65ac428a0e
electrum_ps:
image: btcpayserver/eps:0.2.1.1
image: btcpayserver/eps:0.2.2
restart: unless-stopped
ports:
- "50002:50002"

View File

@ -1,14 +1,13 @@
version: "3"
services:
bitcoind:
environment:
BITCOIN_EXTRA_ARGS: |
txindex=1
rpcauth=electrumx:7d8ee47c089e6072635f82b34796e878$$13649d99453ccdf78e85007286422599c00e6953289f41bf8e92961076ba14db
electrumx:
image: lukechilds/electrumx
restart: unless-stopped
expose:
- "50001"
ports:
- "50002:50002"
volumes:
@ -20,3 +19,5 @@ volumes:
electrumx_datadir:
incompatible:
- pruning
required:
- "opt-txindex"

View File

@ -0,0 +1,31 @@
services:
fireflyiii:
image: fireflyiii/core:latest
container_name: generated_fireflyiii_1
environment:
- APP_ENV=local
- APP_KEY=MustBe32DropDbAndChangeItIfUWant
- APP_URL=http://${FIREFLY_HOST}
- TRUSTED_PROXIES=**
- DB_CONNECTION=pgsql
- DB_HOST=postgres
- DB_PORT=5432
- DB_DATABASE=fireflyiii
- DB_USERNAME=postgres
- DB_PASSWORD=
- VIRTUAL_HOST_NAME=fireflyiii
- VIRTUAL_HOST=${FIREFLY_HOST}
- VIRTUAL_PORT=8080
- LETSENCRYPT_HOST=${FIREFLY_HOST}
- LETSENCRYPT_EMAIL=${LETSENCRYPT_EMAIL:-<no value>}
expose:
- 8080
volumes:
- firefly_iii_export:/var/www/firefly-iii/storage/export
- firefly_iii_upload:/var/www/firefly-iii/storage/upload
depends_on:
- postgres
volumes:
firefly_iii_export:
firefly_iii_upload:

View File

@ -0,0 +1,28 @@
services:
helipad:
container_name: helipad
image: podcastindexorg/podcasting20-helipad:v0.1.10
restart: unless-stopped
user: "root"
expose:
- 2112
volumes:
- helipad_datadir:/data
- lnd_bitcoin_datadir:/lnd:ro
environment:
LND_URL: "lnd_bitcoin:10009"
LND_ADMINMACAROON: "/lnd/admin.macaroon"
LND_TLSCERT: "/lnd/tls.cert"
links:
- lnd_bitcoin
btcpayserver:
environment:
BTCPAY_EXTERNALSERVICES: "Podcast Index Helipad:${BTCPAY_PROTOCOL:-https}://${BTCPAY_HOST}/helipad;"
volumes:
helipad_datadir:
required:
- "bitcoin-lnd"

View File

@ -0,0 +1,44 @@
services:
joinmarket:
container_name: joinmarket
image: btcpayserver/joinmarket:0.9.10
restart: unless-stopped
environment:
READY_FILE: /root/.nbxplorer/btc_fully_synched
ENSURE_WALLET: 1
jm_gaplimit: 2000
jm_tor_control_host: tor
jm_tor_control_port: 9051
jm_onion_socks5_host: tor
jm_onion_socks5_port: 9050
jm_socks5_host: tor
jm_socks5_port: 9050
jm_network: ${NBITCOIN_NETWORK:-regtest}
jm_rpc_host: bitcoind
jm_rpc_port: 43782
jm_rpc_user: joinmarket
jm_rpc_password: afixedpasswordforjoinmarket
volumes:
- "joinmarket_datadir:/root/.joinmarket"
- "nbxplorer_datadir:/root/.nbxplorer"
- "tor_datadir:/home/tor/.tor"
expose:
- 62601 # obwatch
- 8080 # payjoin server
links:
- bitcoind
bitcoind:
environment:
BITCOIN_EXTRA_ARGS: |
# rpcuser=joinmarket
# rpcpassword=afixedpasswordforjoinmarket
# We need to use rpcauth because we also need cookieauth. rpcpassword disabled cookie file auth.
# Be careful if you copy the line below from the docker-compose.yml! A dollar sign is escaped.
rpcauth=joinmarket:4b4dbcb712557eb8c8bfd56a2b6a7707$$6497d80877f10dc375829724f369f546b070fc706121a361438a4a1e51025bea
volumes:
joinmarket_datadir:
required:
- "opt-add-tor"

View File

@ -1,4 +1,3 @@
version: '3'
services:
librepatron:
container_name: librepatron

View File

@ -0,0 +1,36 @@
services:
btcpayserver:
environment:
BTCPAY_EXTERNALSERVICES: "Lightning Terminal:${BTCPAY_PROTOCOL:-https}://${BTCPAY_HOST}/lit/;"
lnd_bitcoin:
environment:
LND_EXTRA_ARGS: |
rpcmiddleware.enable=true
lnd_lit:
image: "lightninglabs/lightning-terminal:v0.14.1-alpha-path-prefix"
restart: unless-stopped
expose:
- "8080"
volumes:
- "lnd_lit_datadir:/root/.lit"
- "lnd_bitcoin_datadir:/data/lnd:ro"
links:
- bitcoind
- lnd_bitcoin
command:
- "--insecure-httplisten=0.0.0.0:8080"
- "--network=${NBITCOIN_NETWORK}"
- "--uipassword=${LIT_PASSWD}"
- "--lnd-mode=remote"
- "--remote.lnd.rpcserver=lnd_bitcoin:10009"
- "--remote.lnd.macaroonpath=/data/lnd/admin.macaroon"
- "--remote.lnd.tlscertpath=/data/lnd/tls.cert"
- "--faraday.connect_bitcoin"
- "--faraday.bitcoin.host=bitcoind:43782"
- "--faraday.bitcoin.user=lnd"
- "--faraday.bitcoin.password=afixedpasswordbecauselndsuckswithcookiefile"
volumes:
lnd_lit_datadir:
required:
- "bitcoin-lnd"
- "opt-lnd-grpc"

View File

@ -0,0 +1,14 @@
services:
btcpayserver:
environment:
BTCPAY_LTC_MWEB_DAEMON_URI: http://mwebd:12345
mwebd:
restart: unless-stopped
container_name: mwebd
image: hectorchu1/mwebd
volumes:
- "mwebd_datadir:/data"
volumes:
mwebd_datadir:
required:
- "litecoin"

View File

@ -0,0 +1,67 @@
# reference: https://github.com/mempool/mempool/blob/master/docker/docker-compose.yml
services:
bitcoind:
environment:
BITCOIN_EXTRA_ARGS: |
# We need to use rpcauth because we also need cookieauth. rpcpassword disabled cookie file auth.
# Be careful if you copy the line below from the docker-compose.yml! A dollar sign is escaped.
rpcauth=mempool:d77ee0acf132038f6aaa9d4500d745ec$$72cc78dcf18191c91d10c15ff8f7c3dbbd170c4d3107cca35d71c6bf96af2ed9
mempool_web:
image: mempool/frontend:v2.5.0
restart: on-failure
stop_grace_period: 1m
command: "./wait-for mempool_db:3306 --timeout=720 -- nginx -g 'daemon off;'"
expose:
- "8080"
environment:
FRONTEND_HTTP_PORT: "8080"
BACKEND_MAINNET_HTTP_HOST: "mempool_api"
mempool_api:
image: mempool/backend:v2.5.0
restart: on-failure
stop_grace_period: 1m
command: "./wait-for-it.sh mempool_db:3306 --timeout=720 --strict -- ./start.sh"
expose:
- "8999"
environment:
MEMPOOL_BACKEND: "electrum"
MEMPOOL_CACHE_DIR: "/backend/cache"
ELECTRUM_HOST: "electrumx"
ELECTRUM_PORT: "50001"
ELECTRUM_TLS_ENABLED: "false"
CORE_RPC_HOST: "bitcoind"
CORE_RPC_PORT: "43782"
CORE_RPC_USERNAME: "mempool"
CORE_RPC_PASSWORD: "mempool"
DATABASE_ENABLED: "true"
DATABASE_HOST: "mempool_db"
DATABASE_DATABASE: "mempool"
DATABASE_USERNAME: "mempool"
DATABASE_PASSWORD: "mempool"
mempool_db:
image: mariadb:10.11
restart: on-failure
expose:
- "3306"
volumes:
- "mempool_db_datadir:/var/lib/mysql"
environment:
MYSQL_DATABASE: "mempool"
MYSQL_USER: "mempool"
MYSQL_PASSWORD: "mempool"
MYSQL_ROOT_PASSWORD: "admin"
btcpayserver:
environment:
BTCPAY_EXTERNALSERVICES: "Mempool Explorer:/mempool"
volumes:
mempool_db_datadir:
required:
- "opt-add-electrumx"
incompatible:
- pruning

Some files were not shown because too many files have changed in this diff Show More