sudo usermod -aG docker XXX
注销并重新登录,然后添加阿里云的Docker Hub镜像: 
建立docker文件 
  1.  
    sudo mkdir -p /etc/docker
  2.  
    sudo gedit /etc/docker/daemon.json
{
"registry-mirrors": ["https://obou6wyb.mirror.aliyuncs.com"]
}
  1.  
    sudo systemctl daemon-reload
  2.  
    sudo systemctl restart docker
最后 docker version 看下安装结果
 

四、安装 Docker-Compose  从DaoClound

  1.  
    curl -L https://get.daocloud.io/docker/compose/releases/download/1.19.0/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose
  2.  
    chmod +x /usr/local/bin/docker-compose
  3.  
     
  4.  
    docker-compose version
 
 

五.Fabric源码下载

首先建好存放源码的文件夹(也可手动建)路径如下: 
  1.  
    mkdir –p ~/go/src/github.com/hyperledger
  2.  
    cd ~/go/src/github.com/hyperledger
  3.  
    git clone https://github.com/hyperledger/fabric.git
由于我们只是在搭建环境。不需要最新的代码,所以只需要切换到v1.0.0大版本就行。
  1.  
    cd ~/go/src/github.com/hyperledger/fabric 进入fabric目录
  2.  
    git checkout v1.0.0

 

六. Fabric Docker镜像的下载

 
  1.  
    cd ~/go/src/github.com/hyperledger/fabric/examples/e2e_cli/
  2.  
    source download-dockerimages.sh -c x86_64-1.0.0 -f x86_64-1.0.0
  3.  
     
  4.  
    docker images
Ubuntu下搭建Hyperledger Fabric v1.0环境_Ubuntu下搭建
 
 
 

七、启动Fabric网络并完成ChainCode的测试

现在还停留在e2e_cli文件中(如果没有先进入),这里提供了启动、关闭Fabric网络的自动化脚本。我们要启动Fabric网络,并自动运行Example02 ChainCode的测试,执行一个命令: 
 

 

 

八、手动测试Fabric网络

 

 

 

这里有官方提供的小例子,在官方例子中,channel名字是mychannel,链码的名字是mycc。 
首先进入CLI,然后重新打开一个命令行窗口,输入: 
docker exec -it cli bash 
这时用户为root@748dafdc900b,在/opt/gopath/src/github.com/hyperledger/fabric/peer目录下,运行以下命令可以查询a账户的余额: 
peer chaincode query -C mychannel -n mycc -c '{"Args":["query","a"]}' 
Ubuntu下搭建Hyperledger Fabric v1.0环境_Ubuntu下搭建_02

 

方框内可以看见余额为:90

 

下面我们可以进行转账操作,操作为invoke ,由a转b 50: 

 
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"]}'
 

现在转账完毕, 我们试一试再查询一下a账户的余额,重复之前的查询指令,结果为: 
Ubuntu下搭建Hyperledger Fabric v1.0环境_Ubuntu下搭建_03
结果正确,a的余额只有40了。 
最后,我们需要关闭Fabric,这里先使用exit命令退出cli容器。 
exit 
然后类似于启动指令: 
cd ~/go/src/github.com/hyperledger/fabric/examples/e2e_cli 
./network_setup.sh down

 

Ubuntu下搭建Hyperledger Fabric v1.0环境_Ubuntu下搭建_04

 

最后,我们整个Fabric的环境已经测试完毕!! 

 

安装过程中如果出现网络连接错误,可以将软件源改成阿里云镜像

/etc/apt/sources.list在文件最前面添加以下条目(适用于

2018年03月09日 21:16:36
阅读数:476
 
 

 

 

二、安装基础工具

 注意操作用户是自建用户,不是root,特别一些命令涉及用户目录的地方要特别注意

首先安装一些常用工具

  1.  
    sudo apt-get update
  2.  
    sudo apt-get install ssh
  3.  
    sudo apt-get install git
  4.  
    sudo apt-get install python-pip

go需要单独安装下

  1.  
    wget https://storage.googleapis.com/golang/go1.9.linux-amd64.tar.gz
  2.  
    sudo tar -C /usr/local -xzf go1.9.linux-amd64.tar.gz
  3.  
    gedit /etc/profile

编辑全局变量环境,添加一下profile

  1.  
    export PATH=$PATH:/usr/local/go/bin
  2.  
    export GOROOT=/usr/local/go
  3.  
    export GOPATH=/home/<span style="color:#ff0000;">用户名</span>/go
  4.  
    export PATH=$PATH:/home/<span style="color:#ff0000;">用户名</span>/go/bin

生效profile,建立go目录

  1.  
    source /etc/profile
  2.  
    mkdir /home/<spanstyle="color:#ff0000;">用户名</span>/go

此时酌情重启下系统

 

 

三、安装docker  基于aliyun

  1.  
    sudo apt-get update
  2.  
    sudo apt-get -y install apt-transport-https ca-certificates curl software-properties-common
  3.  
    # step 2: 安装GPG证书
  4.  
    curl -fsSL http://mirrors.aliyun.com/docker-ce/linux/ubuntu/gpg | sudo apt-key add -
  5.  
    # Step 3: 写入软件源信息
  6.  
    sudo add-apt-repository "deb [arch=amd64] http://mirrors.aliyun.com/docker-ce/linux/ubuntu $(lsb_release -cs) stable"
  7.  
    # Step 4: 更新并安装 Docker-CE
  8.  
    sudo apt-get -y update
  9.  
    sudo apt-get -y install docker-ce
 
 安装docker后还需要添加用户到docker组
https://obou6wyb.mirror.aliyuncs.com"]
}
  1.  
    sudo systemctl daemon-reload
  2.  
    sudo systemctl restart docker
最后 docker version 看下安装结果
 

四、安装 Docker-Compose  从DaoClound

  1.  
    curl -L https://get.daocloud.io/docker/compose/releases/download/1.19.0/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose
  2.  
    chmod +x /usr/local/bin/docker-compose
  3.  
     
  4.  
    docker-compose version
 
 

五.Fabric源码下载

首先建好存放源码的文件夹(也可手动建)路径如下: 
  1.  
    mkdir –p ~/go/src/github.com/hyperledger
  2.  
    cd ~/go/src/github.com/hyperledger
  3.  
    git clone https://github.com/hyperledger/fabric.git
由于我们只是在搭建环境。不需要最新的代码,所以只需要切换到v1.0.0大版本就行。
  1.  
    cd ~/go/src/github.com/hyperledger/fabric 进入fabric目录
  2.  
    git checkout v1.0.0

 

六. Fabric Docker镜像的下载

 
  1.  
    cd ~/go/src/github.com/hyperledger/fabric/examples/e2e_cli/
  2.  
    source download-dockerimages.sh -c x86_64-1.0.0 -f x86_64-1.0.0
  3.  
     
  4.  
    docker images
Ubuntu下搭建Hyperledger Fabric v1.0环境_Ubuntu下搭建
 
 
 

七、启动Fabric网络并完成ChainCode的测试

现在还停留在e2e_cli文件中(如果没有先进入),这里提供了启动、关闭Fabric网络的自动化脚本。我们要启动Fabric网络,并自动运行Example02 ChainCode的测试,执行一个命令: 
 

 

 

八、手动测试Fabric网络

 

 

 

这里有官方提供的小例子,在官方例子中,channel名字是mychannel,链码的名字是mycc。 
首先进入CLI,然后重新打开一个命令行窗口,输入: 
docker exec -it cli bash 
这时用户为root@748dafdc900b,在/opt/gopath/src/github.com/hyperledger/fabric/peer目录下,运行以下命令可以查询a账户的余额: 
peer chaincode query -C mychannel -n mycc -c '{"Args":["query","a"]}' 
Ubuntu下搭建Hyperledger Fabric v1.0环境_Ubuntu下搭建_02

 

方框内可以看见余额为:90

 

下面我们可以进行转账操作,操作为invoke ,由a转b 50: 

 
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"]}'
 

现在转账完毕, 我们试一试再查询一下a账户的余额,重复之前的查询指令,结果为: 
Ubuntu下搭建Hyperledger Fabric v1.0环境_Ubuntu下搭建_03
结果正确,a的余额只有40了。 
最后,我们需要关闭Fabric,这里先使用exit命令退出cli容器。 
exit 
然后类似于启动指令: 
cd ~/go/src/github.com/hyperledger/fabric/examples/e2e_cli 
./network_setup.sh down

 

Ubuntu下搭建Hyperledger Fabric v1.0环境_Ubuntu下搭建_04

 

最后,我们整个Fabric的环境已经测试完毕!! 

 

 

教程参考以下:

 
 

https://yq.aliyun.com/articles/110806

 

http://get.daocloud.io/