kubechain is a small blockchain implementation on top of kubernetes - it includes:
- A small implementation of a blockchain - roughly following this series of awesom blog posts.
- A set of kubernetes CRDs to manage and interact with you're blockchain. (ala
kubectl get blocks) - roughly following Martin Helmlich's awsome blog post as well as kubernetes/sample-controller
- A custome controller for controling / updating / computing PoW for each new block presented to the blockchain.
A word of caution: kubechain is currently a work in progress.
There are two ways to run and buil kubechain:
- Build kubechain from source by running
- Deploy a kubechain container on a kubernetes cluster using the
deployment.ymlfile. This file contains a k8s
kubechainwhich uses the in-cluster configuration to create and monitor the crds.
- Build and run in a container using
make imagefollowed by
docker run nimrodshn/kubechain.
Simply create a Block CRD in you're k8s cluster:
> cat examples/block.yml apiVersion: kubechain.com/v1alpha1 kind: Block metadata: name: "example-block" spec: data: "Move one bitcoin from Alice to Bob." > kubectl create -f examples/block.yml