- DigitalOcean droplets are our favorites if you are new.
sudo apt-get update
sudo apt-get install python3-pip -y
pip3 install --upgrade pip setuptools
sudo apt-get install -y mongodb
For some reason, DigitalOcean droplets, and perhaps other cloud providers, have /dev/random
blocking problems. This probably is because they are running many small computers on a single Linux instance and the entropy pool dries up pretty quickly. If this doesn't make sense, install Haveged and don't worry about it.
If it does, libsodium
, which is the public-private key cryptography library we use, uses /dev/random
with no option to use /dev/urandom
. Haveged solves this problem.
sudo apt-get install haveged -y
systemctl start haveged
systemctl enable haveged
git clone https://github.com/Lamden/contracting.git
cd contracting
git fetch
git checkout dev
python3 setup.py develop
cd ~
git clone https://github.com/Lamden/cilantro-enterprise.git
cd cilantro-enterprise
git fetch
git checkout ori1-rel-gov-socks
python3 setup.py develop
mkdir ~/blocks
mongod --dbpath ~/blocks --logpath ~/logs.log --bind_ip 127.0.0.1 --fork
# cd cilantro-enterprise/scripts
# python3 create_user.py # nolonger needed
nano ~/constitution.json
{
"masternodes": [<list of vks here>],
"masternode_min_quorum": <int>,
"delegates": [<list of vks here>],
"delegate_min_quorum": <int>
}
Ctrl+X, save the file.
cil <masternode | delegate> -k <sk in hex format> -bn <list of ip addresses that are currently online>