BTCD Kube provides a simple way to deploy a full bitcoin node with BTCD into Kubernetes.
This project is confirmed to work for simnet, testnet and mainnet on a minikube instance and a gke instance.
This project implements a full bitcoin node running in Kubernetes using https://github.com/btcsuite/btcd deployed by Jenkins X.
The Lightning Kube project gives a better high level view of how to install a fully functional Lightning Node.
To install this project:
Requirments:
- Running Kubernetes cluster
- Jenkins X Executable installation
- Jenkins X instance running on Kubernetes cluster
*See Lightning Kube for help with requirements.
- Clone this project and the jx environment projects.
git clone https://github.com/kevinstl/btcd-kube ~/Developer/projects/btcd-kube
git clone https://github.com/kevinstl/environment-jx-lightning-kube-simnet
git clone https://github.com/kevinstl/environment-jx-lightning-kube-testnet
git clone https://github.com/kevinstl/environment-jx-lightning-kube-mainnet
- Change to project directory
cd ~/Developer/projects/btcd-kube
- Change the following variables in the Jenkinsfile to match your setup: ORG, APP_NAME, GITHUB_ADDRESS and ENV_REPO_PREFIX.
- Change to scripts directory
cd ~/Developer/projects/btcd-kube/scripts
- Add your persistent volume claim:
./create-pv.sh "" lightning-kube-mainnet -mainnet mainnet 275Gi gke
- Add your secrets:
./create-secrets.sh minikube lightning-kube mainnet YOUR_MINING_ADDRESS YOUR_RPC_USER YOUR_RPC_PASSWORD
- Import this project and the jx environment projects into your Jenkins X instance.
jx import
If the installation is successful you should see the btcd pod running from kubernetes dashboard.