一、环境
主机:阿里云轻量应用服务器
系统:Ubuntu 16.04(基于4.4内核)
二、先决条件
2.1 go
用此时最新的1.11.2版本
下载:wget https://dl.google.com/go/go1.11.2.linux-amd64.tar.gz
安装:tar -zxvf go1.11.2.linux-amd64.tar.gz
加入到环境变量:
export GOPATH=$HOME/gopath
export GOROOT=$HOME/go
export PATH=$PATH:$GOROOT/bin:$GOPATH/bin
export GOBIN=$GOROOT/bin
2.2 docker、docker-compose 安装本人亲测,详见 https://blog.csdn.net/diligent_lee/article/details/79098302
2.4 总结
搞定go、docker、docker-compose、git、这四个,版本最好不要太旧
三、fabric安装
3.1 官方安装指令分析
因为我的是港台主机,没有被QIANG,所以直接一键安装:
curl -sSL http://bit.ly/2ysbOFE | bash -s 1.3.0
四、跑一下demo
进入到fabric-samples目录下的first-network
执行:
./byfn.sh generate
./byfn.sh up
打印一堆东西后能看到下图就对了即(一个大大的字符END)
阿里云会报错:After 10 attempts,peer0.org1 has failed to join channel ‘mychannel’
这时修改/etc/resolv.conf文件,将里面options timeout:2 attempts:3 rotate single-request-reopen注释掉
更改前:
nameserver 100.100.2.136
nameserver 100.100.2.138
options timeout:2 attempts:3 rotate single-request-reopen
更改后
nameserver 100.100.2.136
nameserver 100.100.2.138
#options timeout:2 attempts:3 rotate single-request-reopen
然后运行 ./byfn.sh down 删除原来执行结果
再执行:
./byfn.sh generate
./byfn.sh up
四、测试
在官方例子中,channel名字是mychannel,链码的名字是mycc。我们首先进入CLI,我们重新打开一个命令行窗口,输入:
docker exec -it cli bash
运行以下命令可以查询a账户的余额:
peer chaincode query -C mychannel -n mycc -c '{"Args":["query","a"]}'
可以看到余额是90:
转账这个测试尚未调同,待续补充...........
运行exit命令退出cli容器。
五、开发环境搭建
5.1 安装python: sudo apt-get install python-software-properties
5.2 安装node.js: curl -sL https://deb.nodesource.com/setup_8.x | sudo -E bash -
最后会出现:## Run `apt-get install nodejs` (as root) to install Node.js v8.x and npm
执行sudo apt-get install nodejs安装nodejs
安装成功后,执行node -v, npm -v查看对应版本
备注:npm 可以通过 npm install [email protected] -g 升级到想要的版本