Gravity est une blockchain de niveau 1 conçue pour une adoption massive et pour l'avenir de l'omnicanal. Son approche fait abstraction des complexités techniques des interactions multi-chaînes en intégrant des technologies avancées telles que les preuves de connaissance zéro, les mécanismes de consensus de pointe et une architecture remodelée pour offrir de hautes performances, une sécurité renforcée et une efficacité en termes de coûts. Gravity sert les 20 millions d'utilisateurs de l'écosystème Galxe, garantissant une expérience transparente et attrayante sur le plus grand réseau de distribution onchain de Web3.
Type de nœud : Mainnet
CPU : 8
RAM : 16GB
Stockage : 250GB
1) Installation automatique.
wget -O gravitym https://raw.githubusercontent.com/111STAVR111/props/main/Gravity/gravitym && chmod +x gravitym && ./gravitym
2) Installation manuelle
Préparation du serveur
sudo apt update && sudo apt upgrade -y
sudo apt install curl tar wget clang pkg-config libssl-dev jq build-essential bsdmainutils git make ncdu gcc git jq chrony liblz4-tool -y
Installation de GO 1.21.6
ver="1.21.6"
wget "https://golang.org/dl/go$ver.linux-amd64.tar.gz"
sudo rm -rf /usr/local/go
sudo tar -C /usr/local -xzf "go$ver.linux-amd64.tar.gz"
rm "go$ver.linux-amd64.tar.gz"
echo "export PATH=$PATH:/usr/local/go/bin:$HOME/go/bin" >> $HOME/.bash_profile
source $HOME/.bash_profile
go version
Version 01.10.24
cd $HOME && mkdir -p go/bin/
mkdir gravity-bin && cd gravity-bin
wget -O gravity https://github.com/Gravity-Bridge/Gravity-Bridge/releases/download/v1.12.0/gravity-linux-amd64
mv gravity-linux-amd64 gravity
wget https://github.com/Gravity-Bridge/Gravity-Bridge/releases/download/v1.12.0/gbt
chmod +x *
mv $HOME/gravity /usr/bin/
mv $HOME/gbt /usr/bin/
Installation de GO 1.21.6
gravity init STAVR_guide --chain-id gravity-bridge-3
gravity config chain-id gravity-bridge-3
gbt init
Création du portefeuille
gravity keys add <wallet_name> --algo secp256k1 --coin-type 118
gravity keys add <wallet_orchestrator_name>
gravity eth_keys add <wallet_eth_name>
Jeu de clés Orchestrator
gbt keys set-ethereum-key --key <your Ethereum PRIVATE key>
gbt keys set-orchestrator-key --phrase "<your mnemonic from orchestrator wallet>"
Installation de Genesis
wget -O $HOME/.gravity/config/genesis.json "https://raw.githubusercontent.com/111STAVR111/props/main/Gravity/genesis.json"
Configuration du prix minimum du gaz et des Peers/Seeds
sed -i.bak -e "s/^minimum-gas-prices *=.*/minimum-gas-prices = "0.001ugraviton"/;" ~/.gravity/config/app.toml
external_address=$(wget -qO- eth0.me)
sed -i.bak -e "s/^external_address *=.*/external_address = "$external_address:26656"/" $HOME/.gravity/config/config.toml
peers=""
sed -i.bak -e "s/^persistent_peers *=.*/persistent_peers = "$peers"/" $HOME/.gravity/config/config.toml
seeds=""
sed -i.bak -e "s/^seeds =.*/seeds = "$seeds"/" $HOME/.gravity/config/config.toml
sed -i 's/max_num_inbound_peers =.*/max_num_inbound_peers = 50/g' $HOME/.gravity/config/config.toml
sed -i 's/max_num_outbound_peers =.*/max_num_outbound_peers = 50/g' $HOME/.gravity/config/config.toml
Élagage (optionnel)
pruning="custom"
pruning_keep_recent="1000"
pruning_keep_every="0"
pruning_interval="10"
sed -i -e "s/^pruning *=.*/pruning = "$pruning"/" $HOME/.gravity/config/app.toml
sed -i -e "s/^pruning-keep-recent *=.*/pruning-keep-recent = "$pruning_keep_recent"/" $HOME/.gravity/config/app.toml
sed -i -e "s/^pruning-keep-every *=.*/pruning-keep-every = "$pruning_keep_every"/" $HOME/.gravity/config/app.toml
sed -i -e "s/^pruning-interval *=.*/pruning-interval = "$pruning_interval"/" $HOME/.gravity/config/app.toml
Indexeur (optionnel)
indexer="null" &&
sed -i -e "s/^indexer *=.*/indexer = "$indexer"/" $HOME/.gravity/config/config.toml
Installation d'addrbook
wget -O $HOME/.gravity/config/addrbook.json "https://raw.githubusercontent.com/111STAVR111/props/main/Gravity/addrbook.json"
Création d'un fichier de service
sudo tee /etc/systemd/system/gravity.service > /dev/null <<EOF
[Unit]
Description=gravity
After=network-online.target
[Service]
User=$USER
ExecStart=$(which gravity) start
Restart=on-failure
RestartSec=3
LimitNOFILE=65535
[Install]
WantedBy=multi-user.target
EOF
Démarrage
sudo systemctl daemon-reload
sudo systemctl enable gravity
sudo systemctl restart gravity && sudo journalctl -fu gravity -o cat
Créer le fichier de service Orchestrator
sudo tee /etc/systemd/system/orchestrator.service > /dev/null <<EOF
[Unit]
Description=Gravity Bridge Orchestrator
Requires=network.target
[Service]
Type=simple
TimeoutStartSec=10s
Restart=on-failure
RestartSec=10
ExecStart=$(which gbt) orchestrator
--fees 5000ugraviton
--gravity-contract-address 0xa4108aA1Ec4967F8b52220a4f7e94A8201F2D906
--ethereum-rpc "https://eth.althea.net/"
[Install]
WantedBy=default.target
EOF
Charger le service et l'exécuter
sudo systemctl daemon-reload && sudo systemctl enable orchestrator
sudo systemctl restart orchestrator && journalctl -fu orchestrator -o cat
Création du validateur
gravity tx staking create-validator
--commission-rate 0.1
--commission-max-rate 0.2
--commission-max-change-rate 0.2
--min-self-delegation "1"
--amount 1000000000000000000ugraviton
--pubkey $(gravity tendermint show-validator)
--from <wallet>
--moniker="STAVR_guide"
--chain-id gravity-bridge-3
--fees="500ugraviton"
--identity=""
--website=""
--details="" -y
Suppression d'un nœud
sudo systemctl stop gravity
sudo systemctl disable gravity
rm /etc/systemd/system/gravity.service
sudo systemctl daemon-reload
cd $HOME
rm -rf gravity-bin
rm -rf .gravity
rm -rf $(which gravity)
Informations
gravity status 2>&1 | jq .NodeInfo
gravity status 2>&1 | jq .SyncInfo
gravity status 2>&1 | jq .ValidatorInfo
Vérifier les journaux de nœuds
sudo journalctl -fu gravity -o cat
Vérifier l'état du service
sudo systemctl status gravity
Redémarrer le service
sudo systemctl restart gravity
Arrêter le service
sudo systemctl stop gravity
Démarrage du service
sudo systemctl start gravity
Redémarrage/arrêt/activation
sudo systemctl daemon-reload
sudo systemctl disable gravity
sudo systemctl enable gravity
Votre pair
echo $(gravity tendermint show-node-id)'@'$(wget -qO- eth0.me)':'$(cat $HOME/.gravity/config/config.toml | sed -n '/Address to listen for incoming connection/{n;p;}' | sed 's/.*://; s/".*//')
Nouvelle clé ou Restaurer la clé
gravity keys add Wallet_Name --algo secp256k1 --coin-type 118
OR
gravity keys add Wallet_Name --recover --algo secp256k1 --coin-type 118
Vérifier toutes les clés
gravity keys list
Vérification de l'équilibre
gravity query bank balances addressjkl1yjgn7z09ua9vms259j
Supprimer une clé
gravity keys delete Wallet_Name
Exporter une clé
gravity keys export wallet
Importer une clé
gravity keys import wallet wallet.backup
Modifier le validateur
gravity tx staking edit-validator
--new-moniker "Your_Moniker"
--identity "Keybase_ID"
--details "Your_Description"
--website "Your_Website"
--security-contact "Your_Email"
--chain-id gravity-bridge-3
--commission-rate 0.05
--from Wallet_Name
--gas 350000 -y
Votre adresse Valope
gravity keys show Wallet_Name --bech val
Votre adresse Valcon
gravity tendermint show-address
Informations sur votre validateur
gravity query staking validator valoperaddress......
Informations sur la prison
gravity query slashing signing-info $(gravity tendermint show-validator)
Unjail
gravity tx slashing unjail --from Wallet_name --chain-id gravity-bridge-3 --gas 350000 -y
Liste des validateurs actifs
gravity q staking validators -oj --limit=3000 | jq '.validators[] | select(.status=="BOND_STATUS_BONDED")' | jq -r '(.tokens|tonumber/pow(10; 6)|floor|tostring) + " t " + .description.moniker' | sort -gr | nl
Liste des validateurs inactifs
gravity q staking validators -oj --limit=3000 | jq '.validators[] | select(.status=="BOND_STATUS_UNBONDED")' | jq -r '(.tokens|tonumber/pow(10; 6)|floor|tostring) + " t " + .description.moniker' | sort -gr | nl
Vérification des clés par rapport au validateur (Gagnant - bon. Perdant - mauvais)
VALOPER=Enter_Your_valoper_Here
[[ $(gravity q staking validator $VALOPER -oj | jq -r .consensus_pubkey.key) = $(gravity status | jq -r .ValidatorInfo.PubKey.value) ]] && echo -e "nYou winn" || echo -e "nYou losen"
Retirer toutes les récompenses de tous les validateurs
gravity tx distribution withdraw-all-rewards --from Wallet_Name --chain-id gravity-bridge-3 --gas 350000 -y
Retirer les fonds et les commissions de votre validateur
gravity tx distribution withdraw-rewards valoper1amx.......g85v07t9ka2tfuhamhldgf8e --from Wallet_Name --gas 350000 --chain-id=gravity-bridge-3 --commission -y
Déléguer des jetons à votre validateur
gravity tx staking delegate Your_valpoer........ "100000000"ugraviton --from Wallet_Name --gas 350000 --chain-id=gravity-bridge-3 -y
Déléguer des jetons à un autre validateur
gravity tx staking delegate valpoer........ "100000000"ugraviton --from Wallet_Name --gas 350000 --chain-id=gravity-bridge-3 -y
Découpler les jetons de votre validateur ou d'un autre validateur
gravity tx staking unbond Your_valpoer........ "100000000"ugraviton l1 --from Wallet_Name --gas 350000 --chain-id=gravity-bridge-3 -y
gravity tx staking unbond valpoer........ "100000000"ugraviton --from Wallet_Name --gas 350000 --chain-id=gravity-bridge-3 -y
Transférer des jetons d'un portefeuille à l'autre
gravity tx bank send Your_address............ address........... "1000000000000000000"ugraviton --gas 350000 --chain-id=gravity-bridge-3 -y
Voir toutes les offres
gravity query gov proposals
Voir une proposition spécifique
gravity query gov proposal 1
Voter pour
gravity tx gov vote 1 yes --from Wallet_Name --gas 350000 --chain-id=gravity-bridge-3 -y
Voter contre
gravity tx gov vote 1 no --from Wallet_Name --gas 350000 --chain-id=gravity-bridge-3 -y
S'abstenir
gravity tx gov vote 1 abstain --from Wallet_Name --gas 350000 --chain-id=gravity-bridge-3 -y
Voter contre avec veto
gravity tx gov vote 1 no_with_veto --from Wallet_Name --gas 350000 --chain-id=gravity-bridge-3 -y
gravity tx ibc-transfer transfer transfer channel-2 Your_OSMOaddress............ "100000"ugraviton --from Your_Gravity_Wallet_Name ---gas 350000 --fees "7000"ugraviton --chain-id=gravity-bridge-3 -y