本教程仅供参考,请以官方原文为准。
请以官方原文为准。
- 4 GB RAM, x64 2.0 GHz 2v CPU
- 512 GB SSD
- Stable internet connection
虽然鼓励使用云机器,但测试网不是必须的。 您可以在本地运行,但仅支持 Linux 和 macOS。
我们在内部使用 CosmWasm 来管理 wasm 合约。 CosmWasm 目前不支持 M1 Mac。 阅读 https://github.com/CosmWasm/wasmvm#overview 了解更多信息。
根据您的环境,您可以选择修改此处描述的参数:https://github.com/tendermint/tendermint/blob/master/docs/nodes/running-in-production.md#configuration-parameters
Tendermint 共识的配置要求参考:https://github.com/tendermint/tendermint/blob/master/docs/nodes/running-in-production.md#hardware
sudo apt-get update -y && sudo apt-get upgrade -y;
sudo apt install -y git clang curl libssl-dev llvm libudev-dev build-essential;
sudo rm -rf /usr/local/go;
curl https://dl.google.com/go/go1.18.linux-amd64.tar.gz | sudo tar -C/usr/local -zxvf - ;
cat <<'EOF' >>$HOME/.profile
export GOROOT=/usr/local/go
export GOPATH=$HOME/go
export GO111MODULE=on
export PATH=$PATH:/usr/local/go/bin:$HOME/go/bin
EOF
source $HOME/.profile
安装完毕后可运行 go version
检查go版本
git clone https://github.com/archway-network/archway
cd archway
git checkout main
make install
安装完成后可以运行 archwayd version
检查是否安装成功
注意:配置创世前的验证人节点只能在 gentx 提交期间进行。(目前已经结束)
1.初始化节点,<你的验证人名字>替换为你的验证人名字,例如archwayd init silent --chain-id torii-1
archwayd init <你的验证人名字> --chain-id torii-1
2.下载penultimate_genesis文件,并放置到节点config文件夹中
wget -O genesis.json 'https://raw.githubusercontent.com/archway-network/testnets/main/torii-1/penultimate_genesis.json'
cp genesis.json $HOME/.archway/config/genesis.json
sha256sum genesis.json
184c77cc641765bbc20e38a0df83e7c01cd3f6aa27c1972538105d3b84fa7b0a genesis.json
3.创建钱包,记得保存好你的助记词
archwayd keys add <你的钱包名>
4.为你的钱包在创世时添加资金
archwayd add-genesis-account $(archwayd keys show <你的钱包名> -a ) 1001000utorii
5.在genesis文件中添加你的验证人,得到gentx。
archwayd gentx <你的钱包名> 1000000utorii \
--commission-rate 0.1 \
--commission-max-rate 0.2 \
--commission-max-change-rate 0.01 \
--pubkey $(archwayd tendermint show-validator) \
--chain-id torii-1 \
--from <你的钱包名>
6.github中fork https://github.com/archway-network/testnets
打开链接后,点击fork,得到你的testnets仓库
7.commit你的gentx文件
cd $HOME
git clone https://github.com/<你的github名>/testnets #这里是你刚刚fork得到的testnets仓库地址
cp $HOME/.archway/config/gentx/*.json $HOME/testnets/torii-1/gentx/
cd $HOME/testnets/
git add .
git config --global user.email "你的github邮箱"
git config --global user.name "你的github用户名"
git commit -m "add 你的验证人名字 gentx"
git push
注:git push提示需要personal access token解决办法:参考下方链接。在密码处输入你生成的personal access token
push成功后,打开你刚刚的testnets仓库链接。点击Contribute,Open pull request
点击Create pull request
再次点击Create pull request
就完成了,接下来耐心等待merge。官方将会随机选取125个genesis验证人。
8.提交gentx后,需要填表。表格里有一项ID JSON,生成方法可以参考
9.过了gentx提交期之后,你需要从https://github.com/archway-network/testnets 得到 final_genesis.json,并替换你config文件夹下的genesis.json
cd $HOME
rm -rf testnets
git clone https://github.com/archway-network/testnets
cp testnets/torii/genesis.json $HOME/.archway/config/genesis.json
1.初始化节点,<你的验证人名字>替换为你的验证人名字,例如archwayd init silent --chain-id torii-1(若之前已完成,可跳过)
archwayd init <你的验证人名字> --chain-id torii-1
2.创建钱包,记得保存好你的助记词(若之前已完成,可跳过)
archwayd keys add <你的钱包名>
3.更新genesis.json
cd $HOME
sudo apt install jq -y
wget -qO- https://torii-1.archway.tech/genesis| jq ."result"."genesis" > $HOME/.archway/config/genesis.json
4.更新peers
peers="facf38daac7cbbdcbaf87f531225d6a621cea483@15.235.10.78:26656,83b18e67dca836a838361496a7c87696a488fd05@65.108.99.224:26656,07fd2c5b8838dfc80ff1e9c5577006b552fcb98c@206.221.181.234:46656,c5ca4cb89df8c194e6b404f54be0e27c1258377b@95.214.55.210:26756,ece6b901c278f91410b798edef805ba1d358c660@59.13.223.197:30273,b1cedcd284964d7657d597541ec9516fa3392cd1@185.234.69.139:26656,ce1e6c7a84ab3f8e2fd87d4aef0f95da774a5e98@159.69.11.174:26656,cb1534d2ad2fedb1168b4052f04ede5b12428068@51.250.111.252:26656,2b0c484615d9bafd6cc339c588e366dd9b000221@54.180.95.251:26656,2e422fe3956b7ea2a868dbe832e8cd9af5203ea6@65.108.75.32:26656"
sed -i.bak -e "s/^persistent_peers *=.*/persistent_peers = \"$peers\"/" ~/.archway/config/config.toml
5.建立系统服务
sudo tee <<EOF >/dev/null /etc/systemd/system/archwayd.service
[Unit]
Description=archwayd daemon
After=network-online.target
[Service]
User=$USER
ExecStart=$HOME/go/bin/archwayd start --log_level=info
Restart=on-failure
RestartSec=3
LimitNOFILE=10000
[Install]
WantedBy=multi-user.target
EOF
启动服务
sudo systemctl daemon-reload && \
sudo systemctl enable archwayd && \
sudo systemctl start archwayd
查看日志
sudo journalctl -u archwayd -f
显示如下则已经开始同步区块
检查节点状态
archwayd status
检查是否同步到最新区块
curl localhost:26657/status | grep "catching_up"
若显示为
"catching_up": false
则区块高度已经同步到最新区块。
6.领取测试币,创建验证人
得到你的钱包地址
archwayd keys list
领取测试币
加入官方discord,在#faucet频道发送
!faucet 你的钱包地址
或者在
验证发推后领水
以下操作请等待区块高度同步到最新区块再进行
查询钱包余额
archwayd query bank balances 你的地址
创建验证人
archwayd tx staking create-validator \
--amount=1000000utorii \
--pubkey=$(archwayd tendermint show-validator) \
--chain-id=torii-1 \
--commission-rate="0.10" \
--commission-max-rate="0.20" \
--commission-max-change-rate="0.01" \
--min-self-delegation=1 \
--gas="auto" \
--from 钱包名 \
--moniker="你的验证人名字"
创建验证人后,要成为活跃验证人有一定的质押门槛。(archway当前只有125个活跃验证人)
区块浏览器:
记录好创建验证人成功后的tx hash,在官方表格中登记。
表格里有一项ID JSON,生成方法可以参考
质押
archwayd tx staking delegate validator地址 数量utorii --from 你的钱包名 --gas=auto --fees=0utorii --chain-id torii-1
Unjail
archwayd tx slashing unjail --from 你的钱包名 --gas=auto --fees=0utorii --chain-id torii-1
教程还会持续更新。欢迎关注http://silentvalidator.com/