Akash Testnet 3 Week1 挑战1-3攻略

in STEEM CN/中文3 years ago

image.png

很久之前Akash也弄了测试网挑战,那是我第一次参与测试网的撸毛,也开启了撸毛生涯,过了这么就,新的测试网的挑战又来了~

这次挑战的任务列表:https://docs.google.com/spreadsheets/d/1uIvJYbbPnpWH48NqJaFZHcTn8OolIaiA5nKcMLDeS0E/edit#gid=0

任务表格:https://docs.google.com/forms/d/e/1FAIpQLSfYGRuXMUje3IOAb66XYXtlomHJjM2am9iTwansuYwylAfr-w/viewform

有些任务写的并不是太清楚,只能按照我自己的理解来做

设置安装

安装Akash CLI

cd ~/
AKASH_VERSION=v0.15.0-rc14
curl https://raw.githubusercontent.com/ovrclk/akash/master/godownloader.sh | sh -s -- "$AKASH_VERSION"

修改 /etc/environment 文件

vi /etc/environment

把/root/bin 加到文件最后

最后结果如下:

PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/root/bin"

让修改生效

​source /etc/environment

检查Akash CLI是否安装成功

akash version

显示以下内容就代表成功

v0.15.0-rc14

设置一些参数

AKASH_NET="https://raw.githubusercontent.com/ovrclk/net/master/edgenet"
export AKASH_KEYRING_BACKEND=os
export AKASH_NODE="$(curl -s "$AKASH_NET/rpc-nodes.txt" | shuf -n 1)"
export AKASH_CHAIN_ID="$(curl -s "$AKASH_NET/chain-id.txt")"

创建钱包

为了后面的任务方便,创建2个钱包

AKASH_KEY_NAME1=key1
AKASH_KEY_NAME2=key2
akash keys add $AKASH_KEY_NAME1
akash keys add $AKASH_KEY_NAME2
export AKASH_ACCOUNT_ADDRESS1="$(akash keys show $AKASH_KEY_NAME1 -a)"
export AKASH_ACCOUNT_ADDRESS2="$(akash keys show $AKASH_KEY_NAME2 -a)"

领取测试币

网站: http://55ma08d6b9aht4gtovcih95dps.ingress.edgenet-1.ewr1.aksh.pw/
网站不太好领取,可以用脚本领取: https://replit.com/@ericet/AkashTestnet3Faucetjs#index.js


挑战1

挑战要求给提案3投票

akash tx gov vote 3 yes --from $AKASH_KEY_NAME1 --fees 5000uakt -y

提交成功后,从返回的数据里找到txhash,复制hash到挑战1的表格,提交就完成了


挑战2.1

挑战2.1有4个任务:

  • 第一个:Let a different address spend your tokens to deploy. Authorize a second wallet to spend from your wallet
akash tx deployment authz grant $AKASH_ACCOUNT_ADDRESS2 50000000uakt --from $AKASH_ACCOUNT_ADDRESS1  --fees 5000uakt -y

提交成功后,从返回的数据里找到txhash,复制hash到挑战2的表格的任务1

  • 第二个:Have a second address authorize you to spend it’s tokens on a deployment
akash tx deployment authz grant $AKASH_ACCOUNT_ADDRESS1 50000000uakt --from $AKASH_ACCOUNT_ADDRESS2  --fees 5000uakt -y

提交成功后,从返回的数据里找到txhash,复制hash到挑战2的表格的任务2

  • 第三个:Create a deployment.

创建证书

akash tx cert generate client --from $AKASH_KEY_NAME1 --gas-prices="0.025uakt" --gas="auto" --gas-adjustment=1.5
akash tx cert generate client --from $AKASH_KEY_NAME2 --gas-prices="0.025uakt" --gas="auto" --gas-adjustment=1.5

发布证书

akash tx cert publish client --from $AKASH_KEY_NAME1 --gas-prices="0.025uakt" --gas="auto" --gas-adjustment=1.15 -y
akash tx cert publish client --from $AKASH_KEY_NAME2 --gas-prices="0.025uakt" --gas="auto" --gas-adjustment=1.15 -y

获取deploy.yaml文件

curl -s https://raw.githubusercontent.com/mando222/testnetSDL/main/deploy.yaml > deploy.yaml

创建部署

akash tx deployment create deploy.yaml --from $AKASH_KEY_NAME1 --node $AKASH_NODE --chain-id $AKASH_CHAIN_ID --gas-prices="0.025uakt" --gas="auto" --gas-adjustment=1.5 -y

从返回的数据中找到txhash和dseq号码。把txhash填到表格的任务3处

  • 第四个:Cancel Deployment
    上面的任务获得的dseq号码填入下面命令
akash tx deployment close --dseq <DSEQ号码> --from $AKASH_KEY_NAME1 --fees 5000uakt -y

从返回的数据中获得txhash,填入到任务4处

完成上面这4的任务挑战2.1就完成了,但是Akash的表格可能出错了,后面还有2个挑战2.5的任务需要填写。你可以填写N/A


挑战2.5

任务1: Have a second address authorize you to spend it’s tokens on a deployment using the Authorize Spend feature.

在挑战2.1的第二个任务中,你已经授权第二个钱包给第一个钱包权限部署合约,接下来只需部署就行了

创建部署

akash tx deployment create --depositor-account $AKASH_ACCOUNT_ADDRESS2 --from $AKASH_ACCOUNT_ADDRESS1 deploy.yaml --fees 5000uakt -y

提交成功后,从返回的数据里找到txhash,复制hash到挑战2.5的表格的任务1处

任务2:See if you can do any other actions with tokens authorized from another wallet

尝试转账

akash tx bank send $AKASH_ACCOUNT_ADDRESS2 
 <任意地址> 10000000uakt --fees 5000uakt --from $AKASH_KEY_NAME1 --fees 5000uakt -y

提交成功后,从返回的数据里找到txhash,复制hash到挑战2.5的表格的任务2处


挑战3.1

任务要求部署一个低于1 uakt 每区块价格的网站

修改一下deploy.yaml,降低配置

---
version: "2.0"

services:
  web:
    image: ovrclk/lunie-light
    expose:
      - port: 3000
        as: 80
        to:
          - global: true

profiles:
  compute:
    web:
      resources:
        cpu:
          units: 0.1
        memory:
          size: 256Mi
        storage:
          size: 256Mi
  placement:
    westcoast:
      pricing:
        web:
          denom: uakt
          amount: 100

deployment:
  web:
    westcoast:
      profile: web
      count: 1

创建部署

akash tx deployment create deploy.yaml --from $AKASH_KEY_NAME1 --node $AKASH_NODE --chain-id $AKASH_CHAIN_ID --gas-prices="0.025uakt" --gas="auto" --gas-adjustment=1.5 -y

从返回的数据中找到dseq号码,输入下面命令

AKASH_DSEQ=<DSEQ号码>

获取竞标的名单

akash query market bid list --owner=$AKASH_ACCOUNT_ADDRESS1 --node $AKASH_NODE --dseq $AKASH_DSEQ

从名单里选一个价格低于1uakt的provider,然后输入下面命令

AKASH_PROVIDER=<provider-address>

创建租借合约

akash tx market lease create --chain-id $AKASH_CHAIN_ID --node $AKASH_NODE --owner $AKASH_ACCOUNT_ADDRESS1 --dseq $AKASH_DSEQ --provider $AKASH_PROVIDER --from $AKASH_KEY_NAME1 --gas-prices="0.025uakt" --gas="auto" --gas-adjustment=1.5 -y

提交成功后,从返回的数据里找到txhash,复制hash到挑战3.1的表格的任务处


挑战4有点麻烦,不写了

Sort:  

村长按照这个步骤执行,卡在了创建钱包那一步是啥原因?
image.png