Install
| Latest Version Tag | Chain ID |
|---|---|
Install dependencies
Update system and install build tools
sudo apt -q updatesudo apt -qy install curl git jq lz4 build-essentialsudo apt -qy upgradeSynchronize date and time
timedatectlIf the NTP service parameter is set to no, then your node’s time may get out of sync. Set up time synchronization by running the command:
timedatectl set-ntp onInstall file2ban
# set and copy the config that will have higher prioritysudo apt install fail2ban -y && \sudo cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local && \sudo nano /etc/fail2ban/jail.local# uncomment and add your IP: ignoreip = 127.0.0.1.1/8 ::1 [ip]sudo systemctl restart fail2ban
# check statussudo systemctl status fail2ban# check which jails are active (by default only sshd)sudo fail2ban-client status# check sshd statisticssudo fail2ban-client status sshd# look at the logssudo tail /var/log/fail2ban.log# stop work and remove from autoloading#sudo systemctl stop fail2ban && sudo systemctl disable fail2banSetup and Connect a node to the Mainnet
cd ~
git clone _repo_path_The binary files required to run JuneoGo are:
- juneogo
- jevm
- srEr2XGGtowDVNQ6YgXcdUb16FGknssLTGUFYg7iMqESJ4h8e
To grant execution permissions of the binary files, please execute the following commands:
chmod +x ~/juneogo-binaries/_project_name_chmod +x ~/juneogo-binaries/plugins/jevmchmod +x ~/juneogo-binaries/plugins/srEr2XGGtowDVNQ6YgXcdUb16FGknssLTGUFYg7iMqESJ4h8eAfter this, the juneogo binary should be moved to the home directory. The remaining two binaries should be moved to the ~/.juneogo/plugins directory.
To do so, please execute the following commands:
mv ~/juneogo-binaries/_project_name_ ~
mkdir -p ~/.juneogo/plugins
mv ~/juneogo-binaries/plugins/jevm ~/.juneogo/pluginsmv ~/juneogo-binaries/plugins/srEr2XGGtowDVNQ6YgXcdUb16FGknssLTGUFYg7iMqESJ4h8e ~/.juneogo/pluginsCreate service file
sudo tee /etc/systemd/system/juneod.service > /dev/null <<EOF[Unit]Description=JUNEO NodeAfter=network.target
[Service]User=$USERType=simpleExecStart=/home/juneo/juneogo-binaries/_project_name_Restart=on-failureLimitNOFILE=65535
[Install]WantedBy=multi-user.targetEOFStart service and check the logs
sudo systemctl daemon-reload && \sudo systemctl enable juneod && \sudo systemctl start juneod && \sudo systemctl status juneodWait for synchronization.
Check logs
sudo journalctl -u juneod.service -f --no-hostname -o catThis will start fetching blocks and bootstrapping your node.
Add a Node to the Validator Set
- Retrieve Your nodeID, publicKey and proofOfPossession:
curl -X POST --data '{ "jsonrpc":"2.0", "id" :1, "method" :"info.getNodeID"}' -H 'content-type:application/json' 127.0.0.1:9650/ext/infoOutput should look like this:
{ "jsonrpc": "2.0", "result": { "nodeID": "NodeID-4JfgcoMWBpxCQL5VmyQ1f6L36mUbLLBga", "nodePOP": { "publicKey": "MyBLSKey", "proofOfPossession": "MyBLSSignature", } }, "id": 1}-
Copy the value for the
nodeID,publicKey, andproofOfPossessionfrom the response. -
Log into mcnwallet.io.
You can use your own seed phrase to connect or create new for this node project.
- Go to Stake and open the Validate window.
Enter the Node ID, BLS key, and BLS signature that you previously saved.
Add at least 100 JUNE token and set the validation period to at least 90 days.