MAINNET
Installation

Installation

🖥️Hardware Requirements

  • CPU: 8 Core(s)
  • Memory: 32GB
  • Storage: 500GB-2TB

📝Manual Installation

This guide is created under the assumption you are using Ubuntu 22.04 LTS If you use other OS, please modify the commands accordingly

export INSTALLATION_DIR=${HOME}/appl
export DAEMON_NAME=crossfid
export DAEMON_HOME=${HOME}/.mineplex-chain
export SERVICE_NAME=crossfi-mainnet
export MONIKER="YOUR_NODE_NAME_HERE"
export WALLET="YOUR_WALLET_NAME_HERE"

DAEMON_HOME is reference only, you can set wherever you want.

Write env to .profile

echo 'export DAEMON_NAME=${DAEMON_NAME}' >> ~/.profile
echo 'export DAEMON_HOME=${DAEMON_HOME}' >> ~/.profile
echo 'export DAEMON_ALLOW_DOWNLOAD_BINARIES=true' >> ~/.profile
echo 'export DAEMON_RESTART_AFTER_UPGRADE=true' >> ~/.profile
echo 'export DAEMON_LOG_BUFFER_SIZE=512' >> ~/.profile
 
source ~/.profile

Install dependencies

sudo apt -q update
sudo apt -qy install curl git jq lz4 build-essential snapd unzip nginx
sudo apt -qy upgrade

Prepare installation

mkdir -p ${INSTALLATION_DIR}/bin
mkdir -p ${DAEMON_HOME}/cosmovisor/genesis/bin
mkdir -p ${DAEMON_HOME}/cosmovisor/upgrades

Install and Setup CrossFi Daemon

cd ${INSTALLATION_DIR}
 
#Download CrossFi Daemon and basic setup
wget https://github.com/crossfichain/crossfi-node/releases/download/v0.1.1/mineplex-2-node._v0.1.1_linux_amd64.tar.gz && tar -xf mineplex-2-node._v0.1.1_linux_amd64.tar.gz
mv mineplex-chaind bin/${DAEMON_NAME}
git clone https://github.com/crossfichain/mainnet.git
 
#Download and install cosmovisor
wget https://github.com/cosmos/cosmos-sdk/releases/download/cosmovisor%2Fv1.5.0/cosmovisor-v1.5.0-linux-amd64.tar.gz
tar -xvzf cosmovisor-v1.5.0-linux-amd64.tar.gz
 
#Copy Binaries
cp cosmovisor /usr/local/bin/cosmovisor -f
cp ${INSTALLATION_DIR}/bin/${DAEMON_NAME} ${DAEMON_HOME}/cosmovisor/genesis/bin
sudo ln -s ${DAEMON_HOME}/cosmovisor/genesis ${DAEMON_HOME}/cosmovisor/current -f
sudo ln -s ${DAEMON_HOME}/cosmovisor/current/bin/${DAEMON_NAME} /usr/local/bin/${DAEMON_NAME} -f

Check crossfid version

crossfid --home ${DAEMON_HOME} version

Create or Restore Wallet

If you want to create new wallet

crossfid --home ${DAEMON_HOME} keys add ${WALLET}

If you already have wallet and want to use same phrase

crossfid --home ${DAEMON_HOME} keys add ${WALLET} --recover

Check your wallet

crossfid --home ${DAEMON_HOME} keys list

Setup pruning config

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 = "10"|' \
  ${DAEMON_HOME}/config/app.toml

Setting up Cosmovisor

sudo tee /etc/systemd/system/crossfi-mainnet.service > /dev/null <<EOF  
[Unit]
Description=CrossFi Mainnet Daemon (cosmovisor)
After=network-online.target
 
[Service]
User=$USER
ExecStart=$(which cosmovisor) run start --home ${DAEMON_HOME}
Restart=always
RestartSec=3
LimitNOFILE=4096
Environment="DAEMON_NAME=${DAEMON_NAME}"
Environment="DAEMON_HOME=${DAEMON_HOME}"
Environment="DAEMON_ALLOW_DOWNLOAD_BINARIES=true"
Environment="DAEMON_RESTART_AFTER_UPGRADE=true"
Environment="DAEMON_LOG_BUFFER_SIZE=512"
 
[Install]
WantedBy=multi-user.target
EOF

Enable the service

sudo systemctl daemon-reload
sudo systemctl enable crossfi-mainnet.service
sudo systemctl start crossfi-mainnet.service

Check service log

sudo journalctl -xfu crossfi-mainnet
 
 
 
### Clean UP
```js copy
rm -f cosmovisor-v1.5.0-linux-amd64.tar.gz
rm -f crossfi-node_0.3.0-prebuild3_linux_amd64.tar.gz
rm -f README.md CHANGELOG.md LICENSE readme.md cosmovisor