用户工具

站点工具


development:fabric

差别

这里会显示出您选择的修订版和当前版本之间的差别。

到此差别页面的链接

后一修订版
前一修订版
development:fabric [2020/02/06 16:32] – 创建 kkdevelopment:fabric [2023/11/10 12:13] (当前版本) – 外部编辑 127.0.0.1
行 1: 行 1:
 ====== Hyperledger Fabric ====== ====== Hyperledger Fabric ======
  
 +==== 1 Go ====
 +=== 1.1 下载安装 ===
 +在Golang官网(https://golang.google.cn/dl/)下载linux版本的压缩文件,在终端切换目录至压缩文件所在目录(这里是Downloads),然后将压缩文件解压缩至usr/local目录下。命令如下:
 +<code>
 +cd Downloads
 +sudo tar -xzf go1.12.1.linux-amd64.tar.gz -C /usr/local
 +</code>
 +此时在usr/local下会生成一个go目录,可以通过ls命令查看:
 +<code>
 +cd /usr/local/go
 +ls
 +</code>
  
 +也可以用以下命令安装(ubuntu系统)
 +<code>
 +mkdir /usr/local/go
 +cd /usr/local/go
 +wget https://dl.google.com/go/go1.14.2.linux-amd64.tar.gz
 +</code>
 +
 +=== 1.2 配置环境变量 ===
 +== 1.2.1 安装vim ==
 +在终端输入以下命令
 +<code>
 +sudo apt-get install vim
 +</code>
 +
 +== 1.2.2 编辑home/.profile文件 ==
 +先配置GOROOT,即go的安装目录,编辑$HOME/.profile文件。利用vim打开文件,按i进入编辑,加入如下命令,保存并退出。
 +<code>
 +export GOROOT="usr/local/go"
 +</code>
 +
 +然后配置GOPAHT,GOPATH是go项目代码存放的地方,是我们自己定义的目录。对于Ubuntu系统,默认使用Home/go目录作为GOPATH。该目录下有三个子目录:src,pkg,bin。
 +<code>
 +export GOPATH=$HOME/go
 +</code>
 +
 +配置GOBIN,并将GOBIN添加至环境变量中。
 +<code>
 +export GOBIN=$GOROOT/bin
 +export PATH=$PATH:$GOBIN
 +</code>
 +
 +最后在终端中输入如下命令,使环境变量生效:
 +<code>
 +source .profile
 +</code>
 +==== 2 docker ====
 +=== 2.1 安装docker ===
 +== 2.1.1 下载安装 ==
 +使用docker官网教程下载太慢,这里使用清华大学开源镜像,首先安装安装所需的依赖,在终端输入以下命令:
 +<code>
 +sudo apt-get install apt-transport-https ca-certificates curl gnupg2 software-properties-common
 +</code>
 +
 +然后添加信任docker的GPG公钥:
 +<code>
 +curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
 +</code>
 +
 +然后添加软件仓库:
 +<code>
 +sudo add-apt-repository \
 +   "deb [arch=amd64] https://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux/ubuntu \
 +   $(lsb_release -cs) \
 +   stable"
 +</code>
 +
 +最后安装最新版本的 Docker Engine-Community 和 containerd:
 +<code>
 +sudo apt-get install docker-ce docker-ce-cli containerd.io
 +</code>
 +
 +== 2.1.2 配置用户组 ==
 +添加$user到docker用户组,免除每次运行docker都需要使用sudo root权限,在终端输入以下命令:
 +<code>
 +sudo groupadd docker    
 +sudo usermod -aG docker ${USER}    
 +newgrp docker   
 +</code>
 +
 +== 2.1.3 配置阿里云镜像加速服务 ==
 +由于Docker镜像服务器在国外,所以下载速度非常缓慢甚至失败,因此我们需要配置阿里云镜像加速服务。进入阿里云官网注册登录,在搜索框中搜索容器镜像服务,选择镜像加速器,获取自己的加速器地址,根据提示,在终端输入以下命令:
 +<code>
 +sudo mkdir -p /etc/docker
 +sudo tee /etc/docker/daemon.json <<-'EOF'
 +{
 +  "registry-mirrors": ["你的加速器地址"]
 +}
 +EOF
 +sudo systemctl daemon-reload
 +sudo systemctl restart docker
 +</code>
 +
 +使用以下命令测试docker是否安装成功:
 +<code>
 +docker run hello-world
 +</code>
 +
 +=== 2.2 安装docker-compose ===
 +在终端输入以下命令,安装1.25.4版本docker-compose:
 +<code>
 +sudo curl -L https://github.com/docker/compose/releases/download/1.25.4/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose
 +chmod +x /usr/local/bin/docker-compose
 +</code>
 +
 +使用以下命令测试docker-compose是否安装成功:
 +<code>
 +docker-compose --version
 +</code>
 +
 +==== 3 fabric ====
 +首先下载fabric源码(fabirc v2.0),在终端输入以下命令:
 +<code>
 +cd /home/go/src/github.com/hyperledger/
 +git clone https://github.com/hyperledger/fabric.git
 +</code>
 +
 +然后切换目录至fabric/scripts下,运行bootstrap.sh脚本,此脚本有两个作用:
 +  * 克隆hyperledger/fabric-samples仓库
 +  * 下载一些必要的二进制文件(hyperledger-fabric-linux-amd64-2.0.0.tar.gz)
 +命令如下:
 +<code>
 +cd /home/go/src/github.com/hyperledger/fabric/scripts
 +./bootstrap.sh
 +</code>
 +
 +由于墙的原因,可能导致如下报错,说明二进制文件下载失败(但一般fabric-samples可以下载成功)
 +<code>
 +==> There was an error downloading the binary file.
 +------> 2.0.0 platform specific fabric binary is not available to download <----
 +</code>
 +此时我们改为手动下载二进制文件,可以从我的百度云分享下载(https://pan.baidu.com/s/1ri8azrHUl1KNgxHon384jg,提取码:fhu2)。将hyperledger-fabric-linux-amd64-2.0.0.tar.gz(二进制文件)解压,将其中的config和bin文件夹拷贝至fabric根目录与fabric samples(在/fabric/scripts目录下)根目录下。切换到/fabric samples/first network目录,输入以下命令:
 +<code>
 +./byfn.sh up
 +</code>
 +
 +当看到命令行如下显示时,表明fabric安装完成:
 +<code>
 + ____    _____      _      ____    _____ 
 +/ ___|  |_   _|    / \    |  _ \  |_   _|
 +\___ \    | |     / _ \   | |_) |   | |  
 + ___) |   | |    / ___ \  |  _ <    | |  
 +|____/    |_|   /_/   \_\ |_| \_\   |_|  
 +
 +Build your first network (BYFN) end-to-end test
 +
 +Channel name : mychannel
 +Creating channel...
 +</code>
 +
 +注意,若运行byfn.sh脚本报错,错误信息如下:
 +<code>
 +ERROR! Fabric Docker image version of 1.4.4 does not match this newer version of BYFN and is unsupported. Either move to a later version of Fabric or checkout an earlier version of fabric-samples.
 +</code>
 +这表明fabric-samples版本与fabric docker镜像版本不匹配,可以将fabric-samples替换为1.4版本(百度云文件中有),再次运行byfn.sh脚本。
 +
 +==== 4 references ====
 +https://golang.google.cn/doc/install
 +
 +https://mirrors.tuna.tsinghua.edu.cn/help/docker-ce
 +
 +https://www.runoob.com/docker/ubuntu-docker-install.html
 +
 +https://hlf.readthedocs.io/en/latest/prereqs.html
development/fabric.1580977940.txt.gz · 最后更改: 2023/11/10 12:12 (外部编辑)

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki