CrossFi
Run the node using systemd
Chain ID | Port | Version |
---|---|---|
crossfi-evm-testnet-1 | 239 | v0.3.0-prebuild3 |
Recommended Hardware Requirements
Node Type | RAM | STORAGE |
---|---|---|
Validator | 32 G | 500GB-2TB* |
Full | 16 G | 2 TB |
Default | 16 G | 1 TB |
RPC, API, gRPC and Snapshot
✅ RPC: http://109.199.118.239:23957/
✅ API: http://109.199.118.239:23917/
✅ Auto Snapshot daily
- 🖼️ Validator
- 🖼️ Snapshot
Update and install packages for compiling
sudo apt update
sudo apt-get install git curl build-essential make jq gcc snapd chrony lz4 tmux unzip bc -y
Install Go
sudo rm -rf /usr/local/go
curl -Ls https://go.dev/dl/go1.21.7.linux-amd64.tar.gz | sudo tar -xzf - -C /usr/local
eval $(echo 'export PATH=$PATH:/usr/local/go/bin' | sudo tee /etc/profile.d/golang.sh)
eval $(echo 'export PATH=$PATH:$HOME/go/bin' | tee -a $HOME/.profile)
Build binary
cd $HOME
wget https://github.com/crossfichain/crossfi-node/releases/download/v0.3.0-prebuild3/crossfi-node_0.3.0-prebuild3_linux_amd64.tar.gz && sudo mv crossfi-node_0.3.0-prebuild3_linux_amd64.tar.gz crossfid-v0.3.0.tar.gz && sudo tar -xvf crossfid-v0.3.0.tar.gz
mkdir -p $HOME/.mineplex-chain/cosmovisor/genesis/bin
mv bin/crossfid $HOME/.mineplex-chain/cosmovisor/genesis/bin/
rm -rf build
sudo ln -s $HOME/.mineplex-chain/cosmovisor/genesis $HOME/.mineplex-chain/cosmovisor/current -f
sudo ln -s $HOME/.mineplex-chain/cosmovisor/current/bin/crossfid /usr/local/bin/crossfid -f
Cosmovisor Setup
go install cosmossdk.io/tools/cosmovisor/cmd/[email protected]
sudo tee /etc/systemd/system/crossfi.service > /dev/null << EOF
[Unit]
Description=crossfi node service
After=network-online.target
[Service]
User=$USER
ExecStart=$(which cosmovisor) run start
Restart=on-failure
RestartSec=10
LimitNOFILE=65535
Environment="DAEMON_HOME=$HOME/.mineplex-chain"
Environment="DAEMON_NAME=crossfid"
Environment="UNSAFE_SKIP_BACKUP=true"
[Install]
WantedBy=multi-user.target
EOF
sudo systemctl daemon-reload
sudo systemctl enable crossfi
Initialize Node
Replace Name-VNBnode
with your own moniker
MONIKER="Name-VNBnode"
crossfid config chain-id crossfi-evm-testnet-1
crossfid config keyring-backend test
crossfid config node tcp://localhost:23957
crossfid init $MONIKER --chain-id crossfi-evm-testnet-1
Download Genesis & Addrbook
curl -Ls https://snap.vnbnode.com/crossfi/genesis.json > $HOME/.mineplex-chain/config/genesis.json
curl -Ls https://snap.vnbnode.com/crossfi/addrbook.json > $HOME/.mineplex-chain/config/addrbook.json
Configure
sed -i -e "s|^seeds *=.*|seeds = \"[email protected]:23910\"|" $HOME/.mineplex-chain/config/config.toml
sed -i -e "s|^minimum-gas-prices *=.*|minimum-gas-prices = \"10000000000000mpx\"|" $HOME/.mineplex-chain/config/app.toml
Pruning Setting
sed -i \
-e 's|^pruning *=.*|pruning = "custom"|' \
-e 's|^pruning-keep-recent *=.*|pruning-keep-recent = "100"|' \
-e 's|^pruning-keep-every *=.*|pruning-keep-every = "0"|' \
-e 's|^pruning-interval *=.*|pruning-interval = "19"|' \
$HOME/.mineplex-chain/config/app.toml
Custom Port
sed -i -e "s%^proxy_app = \"tcp://127.0.0.1:26658\"%proxy_app = \"tcp://127.0.0.1:23958\"%; s%^laddr = \"tcp://127.0.0.1:26657\"%laddr = \"tcp://127.0.0.1:23957\"%; s%^pprof_laddr = \"localhost:6060\"%pprof_laddr = \"localhost:23960\"%; s%^laddr = \"tcp://0.0.0.0:26656\"%laddr = \"tcp://0.0.0.0:23956\"%; s%^prometheus_listen_addr = \":26660\"%prometheus_listen_addr = \":23966\"%" $HOME/.mineplex-chain/config/config.toml
sed -i -e "s%^address = \"tcp://0.0.0.0:1317\"%address = \"tcp://0.0.0.0:23917\"%; s%^address = \":8080\"%address = \":23980\"%; s%^address = \"0.0.0.0:9090\"%address = \"0.0.0.0:23990\"%; s%^address = \"0.0.0.0:9091\"%address = \"0.0.0.0:23991\"%; s%:8545%:23945%; s%:8546%:23946%; s%:6065%:23965%" $HOME/.mineplex-chain/config/app.toml
Snapshot
curl -L https://snap.vnbnode.com/crossfi/crossfi-evm-testnet-1_snapshot_latest.tar.lz4 | tar -I lz4 -xf - -C $HOME/.mineplex-chain/data
Start Node
sudo systemctl start crossfi
journalctl -u crossfi -f
Snapshot
Stop Node and Reset Data
sudo systemctl stop crossfi
cp $HOME/.mineplex-chain/data/priv_validator_state.json $HOME/.mineplex-chain/priv_validator_state.json.backup
rm -rf $HOME/.mineplex-chain/data && mkdir -p $HOME/.mineplex-chain/data
Download Snapshot
curl -L https://snap.vnbnode.com/crossfi/crossfi-evm-testnet-1_snapshot_latest.tar.lz4 | tar -I lz4 -xf - -C $HOME/.mineplex-chain/data
mv $HOME/.mineplex-chain/priv_validator_state.json.backup $HOME/.mineplex-chain/data/priv_validator_state.json
Restart Node
sudo systemctl restart crossfi && sudo journalctl -u crossfi -f --no-hostname -o cat