首先我们进行拉去镜像:
https://github.com/sxguan/fabric-go-sdk
进入我们的$GOPATH:
cd $GOPATH/src && git clone https://github.com/sxguan/fabric-go-sdk.git
拉取镜像
此时我们注意,首先查看自己系统中已安装的docker镜像版本!
输入:docker images
我们先打开拉取的docker-compose文件:
把里面的镜像版本换成已有的fabric镜像版本!
如果需要在linux里运行go-sdk例子,需要配置下映射问题:
ubuntu的映射问题,可以用 sudo gedit /etc/hosts 修改文件
这里fabric网络有哪些节点就配置哪些节点
添加127.0.0.1映射到orderer.example.com
添加127.0.0.1映射到peer0.org1.example.com
添加127.0.0.1映射到peer1.org1.example.com
127.0.0.1为localhost本地ip地址
修改后重新启动sudo /etc/init.d/network-manager restart
然后开启利用docker-compose文件开启fabric网络!
cd ./fabric-go-sdk/fixtures/ && docker-compose up -d
输入docker ps查看容器是否启动:
接下来我们修改对应的配置文件:
打开config.yaml文件:
然后打开main.go函数:
对应的文件夹路径改成自己的系统的文件夹路径!注意必须要对应起来!
回到fabric-go-sdk目录:go run main.go
运行mian函数!
显示:
即可运行go-sdk
这样就在自己的虚拟机里跑通了go-sdk例子,后面再出一个在外面宿主机(windows)用goland连接需虚拟机的教程。
希望对大家学习fabric-go-sdk有所帮助!
区块链的基本原理
区块链包括三个基本概念:
1、交易(transaction):一次对账本的操作,导致账本状态的一次改变,如添加一次转账记录;
2、区块(block):记录一段时间内发生的所有交易和状态的结果,是对当前账本状态的一次共识;
3、链(chain):由区块按照发生顺序串联而成,是整个账本状态变化的日志记录。