Run a cluster alone
Charon is in an early alpha state and is not ready to be run on mainnet
- 
Clone the charon-distributed-validator-cluster template repo and cdinto the directory.# Clone the repo
 git clone https://github.com/ObolNetwork/charon-distributed-validator-cluster.git
 # Change directory
 cd charon-distributed-validator-cluster/
- 
Prepare the environment variables # Copy the sample environment variables
 cp .env.sample .envFor simplicities sake, this repo is configured to work with a remote Beacon node such as one from Infura. Create an Eth2 project and copy the httpsURL: Replace the placeholder value of CHARON_BEACON_NODE_ENDPOINTin your newly created.envfile with this URL.
- 
Create the artifacts needed to run a testnet distributed validator cluster # Create a testnet distributed validator cluster
 docker run --rm -v "$(pwd):/opt/charon" ghcr.io/obolnetwork/charon:v0.7.0 create cluster --cluster-dir=".charon" --withdrawal-address="0x000000000000000000000000000000000000dead"
- 
Start the cluster # Start the distributed validator cluster
 docker-compose up
- 
Checkout the monitoring dashboard and see if things look all right # Open Grafana
 open http://localhost:3000/d/laEp8vupp
- 
Activate the validator on the testnet using the original staking launchpad site with the deposit data created at .charon/deposit-data.json.- If you use Mac OS, .charonthe default output folder, does not show up on the launchpad's "Upload Deposit Data" file picker. Rectify this by pressingCommand + Shift + .(full stop). This should display hidden folders, allowing you to select the deposit file.
 
- If you use Mac OS, 
Congratulations, if this all worked you are now running a distributed validator cluster on a testnet. Try turning off a single node of the four with docker stop and see if the validator stays online or begins missing duties, to see for yourself the fault-tolerance that can be added to proof of stake validation with this new Distributed Validator Technology.
Don't forget to be a good testnet steward and exit your validator when you are finished testing with it.