上一篇中涮俄,講到了怎樣在Near網(wǎng)絡中跑一個驗證者節(jié)點抹腿。http://www.reibang.com/p/d00033c83063
但是深浮,要成為一個合格的驗證者節(jié)點剩辟,這是不夠的,需要建一個質(zhì)押資金池躯保,并且能夠接受他人的委托存幣旋膳。當資金池的幣量滿足Near網(wǎng)絡的條件(這個條件是動態(tài)的)后,才能加入100個驗證者名單之列途事。
建議質(zhì)押資金池有兩個途徑验懊。一是用命令行建立擅羞,二是用staking pool factory建立
一、先講用命令行建立資金池
1.建立名為staking-pool的文件夾义图,并且下載合約
mkdir staking-pool
cd staking-pool
git clone https://github.com/near/initial-contracts
cd initial-contracts
cd staking-pool
由于上一篇文章祟滴,我們已經(jīng)下載安裝了rust,并且把wasm 添加到了 toolchain歌溉,這里我們開始直接在staking-pool文件夾里面編譯:
./build.sh
2.創(chuàng)建新的合約賬戶
near create_account my_validator --masterAccount=owner
其中, my_validator要填寫你第一次運行節(jié)點時候設置的那個驗證者用戶名 格式為 XXXX.YYYY.betanet骑晶。一定要一致痛垛,不一致以后無法生產(chǎn)區(qū)塊。
owner替換成你betanet錢包賬號?YYYY.betanet
3.為剛才新創(chuàng)建的合約賬戶部署合約
near deploy --accountId=my_validator --wasmFile=res/staking_pool.wasm
注意桶蛔,路徑res/staking_pool.wasm 可能會因為系統(tǒng)不同有所差別匙头,填寫自己正確的路徑
4.初始化合約
near call my_validator new'{"owner_id": "owner", "stake_public_key": "CE3QAXyVLeScmY9YeEyR3Tw9yXfjBPzFLzroTranYtVb", "reward_fee_fraction": {"numerator": 10, "denominator": 100}}'--account_id owner
這個要把 my_validator換成你自己的驗證者用戶名。owner替換成你的betanet錢包賬號仔雷,stake_public_key換成你自己的(在.near/betanet/validator_key.json里面)蹂析,這里reward_fee_fraction費率設置的10%,可以根據(jù)你自己的需求調(diào)節(jié)碟婆。 account_id 后面寫的是 你的驗證者用戶名电抚。
這樣命令行創(chuàng)建的質(zhì)押資金池就建好了
二、用staking pool factory建立質(zhì)押資金池
這就相對簡單多了竖共,網(wǎng)址:https://near-examples.github.io/staking-pool-factory/
出現(xiàn)如下界面:
點Log in with Near Wallet to creat a new staking pool,然后出現(xiàn)如下界面:
stakingpool ID 填寫你剛才創(chuàng)建的驗證者用戶名?XXXX.YYYY.betanet蝙叛,Owner ID 寫成你的betanet錢包賬號,stake_public_key換成你自己的(在.near/betanet/validator_key.json里面)公给,費率根據(jù)自己的需求設置借帘。填寫好后點擊Create Staking Pool創(chuàng)建按鈕,這將要需要扣除30個測試幣淌铐。
這樣你的質(zhì)押資金池就建立好啦肺然。
然后,刪除所有key來鎖住合約:
near delete-key --accessKey ed25519:.................................... --accountId my_validator
其中 Key換成自己的腿准, accountID 后面的換成自己的驗證者用戶名?XXXX.YYYY.betanet
接下來际起,進入github里面near項目,stakewar倉庫释涛,地址:
https://github.com/nearprotocol/stakewars
找到VALIDATORS.md這個文件并點擊:
然后點筆符號進行編輯
里面已經(jīng)有很多人添加了節(jié)點信息加叁,自己按照格式添加一行,寫自己的信息唇撬。注意格式不要寫錯了它匕。
寫完之后,填寫Update VALIDATORS.md窖认,然后點綠色的Proposed change提交豫柬。提交之后告希,點擊?Create pull request, 發(fā)起pull request請求烧给,項目方成員審核通過后燕偶,你的名字就會添加到驗證者名單中。
接下來就可以多方推廣础嫡,讓別人把自己手里的幣存到你的質(zhì)押資金池里面了指么。
存幣100:
near call stakingpool.youlaiwuqu.betanet deposit '{}' --accountId 你自己的betanet錢包用戶名 --amount 100
質(zhì)押100:
near call stakingpool.youlaiwuqu.betanet stake '{"amount": "100000000000000000000000000"}' --accountId 你自己的betanet錢包用戶名
刷新生效:
near call stakingpool.youlaiwuqu.betanet ping '{}' --accountId 你自己的betanet錢包用戶名