由于整个网络全部手工搭建,总是出现些奇奇怪怪的错误,在网上并没有找到有效解决方案,故自己总结下与大家分享。
其实核心就是让所有版本保持一致
-
Hyperledger Fabric 指定版本
之前看的一些教程切换版本使用如下命令:git checkout release-1.4
这样无法切换到更详细的版本号
看了其github中的tags后尝试如下切换:git checkout v1.4.2
依旧失败....
最后祭出杀器:去其github:https://github.com/hyperledger/fabric/tags 根据自己的版本号找出commit记录git checkout c6cc550cbd21184d24e908c5a4e0d36c1919bf40
终于成功!
-
docker-compose 指定版本
如:orderer.questionbank.com: image: hyperledger/fabric-orderer:1.4.2 container_name: orderer.questionbank.com
请在image后面指定版本号!之前看的教程并没有指定,结果便是使用的镜像自动定位到最后一次使用的。
-
configtx 支持版本
请在这个文件中检查是否设置支持当前版本,如:Application: &ApplicationCapabilities V2_0: true V1_4_4: true V1_4_2: true
请按照上面格式添加自己使用版本。
-
其他
官方提供的fabric-samples目前主要是两个版本:1.4.4和2.0.0
我个人觉得里面的first-network配置差别不大,应该是可以通用的
(至少我没遇到啥大的问题)
在使用2.0.0的时候出现了etcdraft配置丢失的问题:
不知道是官方的坑,还是与我配置不兼容,如果有人出现该问题,建议参考1.4.4官方sample补全该配置
网友评论