我对hyperledger fabric1.1.0的执着(三):运行e2e_cli测试案例以及踩过的坑
1、运行e2e_cli案例:
(1.1)下载平台特定二进制文件,如图下载对应版本,下载地址为:
(1.2)将文件上传到/opt/gopath/src/github.com/hyperledger/fabric目录,并解压,会得到一个bin和config目录,最终目录结构如图:
(1.3)删除/opt/gopath/src/github.com/hyperledger/fabric/examples/目录下的e2e_cli文件夹,下载fabric源码找到/fabric/examples/目录下的e2e_cli并上传。(相当于用fabric1.0版本的e2e_cli案例代替这里1.1版本的案例)
(1.4)进入e2e_cli目录并启动:
cd /opt/gopath/src/github.com/hyperledger/fabric/examples/e2e_cli
bash network_setup.sh up
--------------------------------------------------------------------------------------------------------------------------------------
启动过成功可能会遇到各种奇葩又看不懂的错误,以下仅记录个人踩过的坑(英文的错误是跑阿里云服务器遇到的,中文的错误是跑本地笔记本遇到的,作为补充):
2、运行e2e_cli过程中遇到的错误:
错误一:./scripts/script.sh:Permission denied
卡在以下界面不动,提示./scripts/script.sh:Permission denied
解决:
ctrl+z退出,执行命令:bash network_setup.sh down
然后授权:sudo chmod +x scripts/script.sh
查看:ll scripts/script.sh ,如下图:
然后重新启动:bash network_setup.sh up
错误二:generateArtifacts.sh:行58: /opt/gopath/src/github.com/hyperledger/fabric/examples/e2e_cli/../../release/linux-amd64/bin/cryptogen: 没有那个文件或目录。如图:
原因是cryptogen文件不在/opt/gopath/src/github.com/hyperledger/fabric/examples/e2e_cli/../../release/linux-amd64/bin/文件夹。
解决:将平台下载的二进制文件上传至该目录并解压,最终目录如图:
错误三:generateArtifacts.sh:行58: /opt/gopath/src/github.com/hyperledger/fabric/examples/e2e_cli/../../release/linux-amd64/bin/cryptogen: 权限不够,如图:
原因:二进制文件权限不足
解决:给二进制文件进行赋权操作
sudo chmod +x /opt/gopath/src/github.com/hyperledger/fabric/release/linux-amd64/bin/cryptogen
sudo chmod +x /opt/gopath/src/github.com/hyperledger/fabric/release/linux-amd64/bin/configtxgen
查看是否授权成功:
ll /opt/gopath/src/github.com/hyperledger/fabric/release/linux-amd64/bin/cryptogen
ll /opt/gopath/src/github.com/hyperledger/fabric/release/linux-amd64/bin/configtxgen
重启。
错误四、fatal error: unexpected signal during runtime execution ,如图:
解决:
修改/etc/resolv.conf文件:vim /etc/resolv.conf
将第一行options timeout:2 attempts:3 rotate single-request-reopen注释掉。
然后重启:
bash network_setup.sh down
bash network_setup.sh up
错误五:Error: Error endorsing chaincode: rpc error: code = Unknown desc = error starting container: API error (404): {"message":"network e2ecli_default not found"}
解决方法:
修改/opt/gopath/src/github.com/hyperledger/fabric/examples/e2e_cli/base目录下的peer-base.yaml,将网络名改成如下名称即可,如图:
- CORE_VM_DOCKER_HOSTCONFIG_NETWORKMODE=e2e_cli_default
关闭并重启。
最终如图,表示启动成功:
阅读更多
- Hyperledger Fabric 1.0 从零开始(五)——运行测试e2e
- hyperledger fabric 1.0 mac环境搭建并运行示例e2c_cli
- 构建hyperledger fabric测试和运行环境(最新版)
- 我对hyperledger fabric1.1.0的执着(四):部署单机多节点网络
- 超级记账本学习笔记:Hyperledger Fabric 1.0环境搭建,及运行e2e的问题
- 在Ubuntu中部署并测试HyperLedger Fabric 0.6
- (一) Hyperledger Fabric在CentOS 7.2 64位下 开发与运行环境搭建
- 实战:区块链hyperledger fabric 初体验 - 2: 测试网络
- 【推荐】 HyperLedger Fabric环境搭建、测试及注意事项 [详尽指导] [亲测有效]
- 搭建和运行hyperledger fabric1.0alpha版本过程分析
- hyperledger fabric-sample 运行 chaincode-docker-devmode 遇到的坑
- 区块链基础知识系列第5课 Hyperledger fabric1.0网络中transaction产生以及流转过程
- 使用docker加载已有镜像安装Hyperledger Fabric v1.1.0
- 二、hyperledger fabric fabric-samples环境测试
- Ubuntu 16.04 安装Hyperledger/Fabric 1.1.0 Preview
- Hyperledger Fabric开发环境与运行环境的搭建
- 在Ubuntu中部署并测试HyperLedger Fabric 0.6
- Hyperledger Fabric 1.0 从零开始(五)——运行测试e2e
- Hyperledger fabric 中的fabcar案例