Akash 测试网 3 挑战4攻略

继上一篇攻略Akash 测试网 3  挑战1-3攻略, 这篇介绍怎么完成挑战4。 (跳过设置,如果想了解设置,看上一篇攻略)

挑战4.1的要求是部署一个可存储的应用(数据库之类的)

https://github.com/ovrclk/awesome-akash 找到数据库类型的应用

我找了MongoDB,并做了一些修改。修改后的文件如下:

---

version:"2.0"

services:

mongo:

image: mongo:latest

expose:

- port: 27017

to:

- global:true

env:

- MONGO_INITDB_ROOT_USERNAME=root

- MONGO_INITDB_ROOT_PASSWORD=rootpassword

profiles:

compute:

mongo:

resources:

cpu:

units: 1.0

memory:

size: 1Gi

storage:

size: 1Gi

placement:

akash:

pricing:

mongo:

denom: uakt

amount: 100

deployment:

mongo:

akash:

profile: mongo

count: 1

复制上面的内容到gist上:https://gist.github.com/ 并保存。复制创建好的gist链接到表格的挑战4.1里,这个挑战就算是完成了(因为上面的SDL我测试过是可以用的,并且表格没要求填部署的tx hash)

如果你找其他数据库类型的应用,按照下面步骤部署测试是否能用。

创建部署文件

https://github.com/ovrclk/awesome-akash 找到数据库类型的应用,创建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

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

AKASH_DSEQ=

获取竞标的名单

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

如果没获得竞标,那就可能是配置高了,或者价格低了,修改一下再部署试试

如果有获得竞标名单,从名单里选一个provider,然后输入下面命令

AKASH_PROVIDER=

创建租借合约

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

查看租借合约是否开启

akash query market lease list --owner$AKASH_ACCOUNT_ADDRESS--node$AKASH_NODE--dseq$AKASH_DSEQ

发送Manifest

akash provider send-manifest deploy.yaml --node$AKASH_NODE--dseq$AKASH_DSEQ--provider$AKASH_PROVIDER--home ~/.akash --from$AKASH_KEY_NAME1

如果输出显示Pass,代表成功部署了

获取部署的链接

akash provider lease-status --node$AKASH_NODE--home ~/.akash --dseq$AKASH_DSEQ--from$AKASH_KEY_NAME1--provider$AKASH_PROVIDER

我部署的mongodb获得的链接是这样子的

{

"services": {

"mongo": {

"name":"mongo",

"available": 1,

"total": 1,

"uris": null,

"observed_generation": 1,

"replicas": 1,

"updated_replicas": 1,

"ready_replicas": 1,

"available_replicas": 1

}

},

"forwarded_ports": {

"mongo": [

{

"host":"provider.edgenet-3.ca.aksh.pw",

"port": 27017,

"externalPort": 31628,

"proto":"TCP",

"available": 1,

"name":"mongo"

}

]

}

}

连接数据库也没有问题。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容