# 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
Download and install Bitcoin Core by following the instructions (opens new window).
# 2) Install .NET dependencies
Download and install the .NET 10.0 SDK and the ASP.NET Core Runtime by following the instructions (opens new window).
# 3) Install NBXplorer
cd ~
git clone https://github.com/dgarage/NBXplorer
cd NBXplorer
git checkout latest
./build.sh
# 4) Install BTCPayServer
cd ~
git clone https://github.com/btcpayserver/btcpayserver
cd btcpayserver
git checkout latest
./build.sh
# 5) Run bitcoind
bitcoind
# 6) Run NBXplorer
cd ~/NBXplorer
./run.sh --dbtrie
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
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
# Run NBXplorer in testnet mode
cd ~/NBXplorer
./run.sh --network=testnet
# Run BTCPayServer in testnet mode
cd ~/btcpayserver
./run.sh --port 8080 --bind 0.0.0.0 --network testnet