# Minimal manual setup
DANGER
# Not recommended for production use
Manual installation is NOT recommended for production use unless you are very confident with your Operating System and Bitcoin security expertise. If you are unsure use the docker deployment or one of the other deployment options.
# You must have technical literacy and be able to resolve any issues on your own. The community will not provide extensive support for this deployment.
The process is basically the following:
- Download and sync Bitcoin Core (opens new window)
- Clone and run NBXplorer (opens new window)
- Clone and run BTCPay Server (opens new window)
Take a look at our video to learn more:
# Warning: Not recommended to use in production
Manual installation is NOT recommended in production. It should be only used for learning purpose.
Instead you should use the docker deployment (opens new window).
The docker deployment will provide you easy update system and make sure that all moving parts are wired correctly without any technical knowledge. It will also setup HTTPS for you.
# Typical manual installation
This steps have been done on Ubuntu 18.04, adapt for your own install.
For Testnet specific deployment, after installing Bitcoin, .NET Core, NBXplorer and BTCPayServer, see Commands for Running in Testnet Mode
# 1) Install Bitcoin Core 0.19.1
BITCOIN_VERSION="0.19.1" BITCOIN_URL="https://bitcoin.org/bin/bitcoin-core-0.19.1/bitcoin-0.19.1-x86_64-linux-gnu.tar.gz" BITCOIN_SHA256="5fcac9416e486d4960e1a946145566350ca670f9aaba99de6542080851122e4c" # install bitcoin binaries cd /tmp wget -O bitcoin.tar.gz "$BITCOIN_URL" echo "$BITCOIN_SHA256 bitcoin.tar.gz" | sha256sum -c - && \ mkdir bin && \ sudo tar -xzvf bitcoin.tar.gz -C /usr/local/bin --strip-components=2 "bitcoin-$BITCOIN_VERSION/bin/bitcoin-cli" "bitcoin-$BITCOIN_VERSION/bin/bitcoind" rm bitcoin.tar.gz
Copied!
# 2) Install .NET 8.0 SDK
On my Ubuntu 20.04 (See these instructions (opens new window) or here (opens new window) for different OS).
# Add Microsoft package repository wget https://packages.microsoft.com/config/ubuntu/20.04/packages-microsoft-prod.deb -O packages-microsoft-prod.deb sudo dpkg -i packages-microsoft-prod.deb rm packages-microsoft-prod.deb # Install the SDK sudo apt-get update sudo apt-get install -y apt-transport-https sudo apt-get update sudo apt-get install -y dotnet-sdk-6.0 ## Check dotnet --version
Copied!
# 3) Install NBXplorer
cd ~ git clone https://github.com/dgarage/NBXplorer cd NBXplorer git checkout latest ./build.sh
Copied!
# 4) Install BTCPayServer
cd ~ git clone https://github.com/btcpayserver/btcpayserver cd btcpayserver git checkout latest ./build.sh
Copied!
# 5) Run bitcoind
bitcoind
Copied!
# 6) Run NBXplorer
cd ~/NBXplorer ./run.sh --dbtrie
Copied!
Note that using the --dbtrie
backend for NBXplorer, while easier, is deprecated.
You should better use a postgresql backend as documented on Extended Manual Deployment.
# 7) Run BTCPay Server
cd ~/btcpayserver ./run.sh --port 8080 --bind 0.0.0.0
Copied!
Now you can browse your server on port 8080.
Note that by default, BTCPay Server will use SQLite as backend, while being easier, this is deprecated. You should better use a postgresql backend as documented on Extended Manual Deployment.
# Testnet Specific Deployments
Follow the instructions for installing Bitcoin, .NET Core, NBXplorer and BTCPayServer above.
Then when running them use:
# Run bitcoind in testnet mode
bitcoind -testnet
Copied!
# Run NBXplorer in testnet mode
cd ~/NBXplorer ./run.sh --network=testnet
Copied!
# Run BTCPayServer in testnet mode
cd ~/btcpayserver ./run.sh --port 8080 --bind 0.0.0.0 --network testnet
Copied!