美文网首页
Ubuntu 运行 Hyperledger Fabric 网络

Ubuntu 运行 Hyperledger Fabric 网络

作者: 不要人夸颜色好 | 来源:发表于2018-05-06 22:13 被阅读484次

环境:

  • System Version: Ubuntu Linux 14.04 / 16.04 LTS
  • Hyperledger Composer version: 0.19.1

步骤:

mkdir ~/fabric-dev-servers && cd ~/fabric-dev-servers

curl -O https://raw.githubusercontent.com/hyperledger/composer-tools/master/packages/fabric-dev-servers/fabric-dev-servers.tar.gz

tar -xvf fabric-dev-servers.tar.gz
    
cd ~/fabric-dev-servers&&./downloadFabric.sh
    
cd ~/fabric-dev-servers && ./createPeerAdminCard.sh && ./startFabric.sh
    

问题:

查看该容器 log ,发现有条警告信息:

2018-05-06 01:32:11.118 UTC [couchdb] handleRequest -> WARN 016 Retrying couchdb request in 125ms. Attempt:1 Error:Get http://couchdb:5984/: dial tcp 172.18.0.4:5984: getsockopt: connection refused

看错误,是peer0容器没有能连上couchdb

经过一番搜寻,stackoverflow 上有解决方案说 dns 解析问题,在 peer0.org1.example.com 中加入dns_search: ., But It does not work 😡😡😡

那好,我尝试不用couchdb,用他默认的levelDB。注释掉 docker-composer.yamlpeer0.org1.com 连接 couchdb 的一些依赖以及环境变量
重新执行 ./startFabric.sh.

这次peer0还是不能正常启动,依旧出现了报错。报错信息如下

fatal error: unexpected signal during runtime execution [signal SIGSEGV: segmentation violation code=0x1 addr=0x63 ...

经过很长时间的查询,发现最新的阿里云服务器中 golang 使用cgo resolver解析dns(宿主机ECS的配置文件变了), 过去OK 的版本使用的是 pure go resolver.

解决:

解决方法:

docker-compose.yaml里对peer、orderer、ca、couchdb的环境变量加入GODEBUG=netdns=go

再次尝试 ./startFabric.sh ,终于 OK !!!
✌️✌️✌️

相关文章

网友评论

      本文标题:Ubuntu 运行 Hyperledger Fabric 网络

      本文链接:https://www.haomeiwen.com/subject/kudprftx.html