相对与v0.6版原本说,1.0版本改变较大,此处很少说,只是将小白本身搭建1.0环境的过程分享给你们。但愿对你们能有所帮助!
这一篇可能对前面的环境搭建会写的有些粗略,若有疑问,可阅读上一篇V0.6版本的环境搭建详细步骤。html
云服务器(CentOS7.2)
Go语言环境
docker安装
docker-compose安装java
保证咱们安装的软件包都是最新版本的;升级全部包同时也升级软件和系统内核python
yum -y update
Go中文网:https://studygolang.com/dl
选择Linux系统的'go1.13.5.linux-amd64.tar.gz'下载,使用Xftp上传至/usr/local
目录下
而后使用如下命令进行解压:linux
tar -zxvf go1.13.5.linux-amd64.tar.gz
配置环境变量vim /etc/profile
,在文件开头添加以下内容:git
export PATH=$PATH:/usr/local/go/bin export GOROOT=/usr/local/go export GOPATH=$HOME/go export PATH=$PATH:$HOME/go/bin
从新加载配置文件:source /etc/profile
使用go env
命令验证
github
yum install -y yum-utils device-mapper-persistent-data lvm2
yum list docker-ce --showduplicates | sort -r yum install docker-ce-18.03.1.ce
systemctl start docker docker version
yum install -y python-pip pip install --upgrade pip pip --version
下载docker-composegolang
curl -L https://github.com/docker/compose/releases/download/1.21.0/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose
进入/usr/local/bin
目录下,修改下载的文件的权限docker
chmod +x docker-compose
若是你没有安装git的话,先下载gitvim
yum install git
在Go的工做空间中建立fabric源码目录,进入建立的目录进行下载(这一步时间较长,若是失败能够从新尝试,或者能够更换源)bash
mkdir -p /root/go/src/github.com/hyperledger/ cd /root/go/src/github.com/hyperledger/ git clone https://github.com/hyperledger/fabric.git
进入下载的fabric
目录,而后查看咱们所在的分支,再切换到v1.0.0分支
cd /usr/local/go/src/github.com/hyperledger/fabric/ git branch git checkout v1.0.0
若是你历来没启动过其余版本的fabric网络的话,可忽略此步骤
查看全部容器并删除(须要保证你的docker是启动状态)
docker ps -a docker rm -f $(docker ps -aq)
查看全部镜像并删除(须要保证你的docker是启动状态)
docker images -a docker rmi -f $(docker images -aq)
回到咱们上上一步,此时咱们已经使用git checkout v1.0.0
切换到了v1.0.0分支,进入如下目录,执行官方提供的批量下载镜像的脚本便可
cd /root/go/src/github.com/hyperledger/fabric/examples/e2e_cli/ source download-dockerimages.sh -c x86_64-1.0.0 -f x86_64-1.0.0
等待下载完成后执行docker images
命令查看下载的镜像,以下图:
使用官方提供的自动化脚本进行启动和关闭,接下来咱们启动官方提供的测试用例example02(注意:此时咱们还在/root/go/src/github.com/hyperledger/fabric/examples/e2e_cli/
目录下)
./network_setup.sh up
若是无报错,出现如下页面,则启动成功;若是有报错,则在最后,有笔者在搭建时遇到的错误,可进行参考。
peer chaincode query -C mychannel -n mycc -c '{"Args":["query","a"]}'
peer chaincode invoke -o orderer.example.com:7050 --tls true --cafile /opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/ordererOrganizations/example.com/orderers/orderer.example.com/msp/tlscacerts/tlsca.example.com-cert.pem -C mychannel -n mycc -c '{"Args":["invoke","a","b","50"]}'
这一部分只是记录笔者本身在搭建过程当中遇到的错误,若有其余错误,请自行百度。
错误1:
解决方案:修改/etc/resolv.conf
文件,将options
开头的一行注释掉,修改后的文件以下图:
错误2:
解决方案:修改/root/go/src/github.com/hyperledger/fabric/examples/e2e_cli/base/
目录下的peer-bash.yaml
文件,修更名称为e2e_cli_default
,修改完以下图:
最后呢,说明一下,做者也是刚入坑的小白,这篇文章也就是记录一下原始搭建的过程,方便之后查看。若是对你有帮助的话,很是荣幸,若是有不对的地方,欢迎留言指正!