前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Hyperledger Fabric环境搭建

Hyperledger Fabric环境搭建

作者头像
idealclover
发布2018-10-31 17:12:20
2K0
发布2018-10-31 17:12:20
举报

系统环境:ubuntu18.04

安装Go语言环境

首先到https://golang.google.cn/dl/下载安装包并解压

代码语言:javascript
复制
tar -xvf go1.10.linux-amd64.tar.gz
sudo mv go /usr/local

编辑环境变量:

代码语言:javascript
复制
vim ~/.profile

在环境变量中增加如下几行:

代码语言:javascript
复制
export PATH=$PATH:/usr/local/go/bin
export GOROOT=/usr/local/go
export GOPATH=$HOME/go
export PATH=$PATH:$HOME/go/bin

:wq保存并退出,回到命令行状态即刻应用更改

代码语言:javascript
复制
source ~/.profile

在Home目录下创建go文件夹

代码语言:javascript
复制
mkdir go

安装Docker

安装Docker的方法有多种,使用apt-get安装的版本较低。一些教程上的安装方法不适合国内环境

更新源:

代码语言:javascript
复制
sudo apt-get update

添加使用 HTTPS 传输的软件包以及 CA 证书:

代码语言:javascript
复制
sudo apt-get install apt-transport-https ca-certificates curl software-properties-common

添加软件源的GPG密钥(此处用中科大的源):

代码语言:javascript
复制
curl -fsSL https://mirrors.ustc.edu.cn/docker-ce/linux/ubuntu/gpg | sudo apt-key add -

向 source.list 中添加 Docker 软件源:

代码语言:javascript
复制
sudo add-apt-repository "deb [arch=amd64] https://mirrors.ustc.edu.cn/docker-ce/linux/ubuntu \
$(lsb_release -cs) stable "

安装和启动docker-ce:

代码语言:javascript
复制
sudo apt-get update
sudo apt-get install docker-ce
sudo systemctl enable docker
sudo systemctl start docker

增加docker用户组:

代码语言:javascript
复制
sudo groupadd docker
sudo usermod -aG docker $USER

安装Docker-compose(需要安装好pip工具):

代码语言:javascript
复制
sudo pip install docker-compose

可以使用docker version命令查看版本

Tip:使用阿里云加速

拉取官方镜像时由于docker官网连接速度较慢,可以使用阿里云的镜像。

具体操作方法是到 https://cr.console.aliyun.com/#/accelerator 申请,需要阿里云账号(emmm...淘宝账号...)

之后会看到如下图所示:

复制加速地址并执行以下命令:

代码语言:javascript
复制
$sudo mkdir -p /etc/docker
$sudo tee /etc/docker/daemon.json <<-'EOF'
{
  "registry-mirrors": ["加速地址"]
}
EOF
$sudo systemctl daemon-reload
$sudo systemctl restart docker

Fabric源码下载

需要安装git工具

代码语言:javascript
复制
mkdir -p ~/go/src/github.com/hyperledger
cd ~/go/src/github.com/hyperledger
git clone https://github.com/hyperledger/fabric.git

切换到v1.0.0版本:

代码语言:javascript
复制
cd ~/go/src/github.com/hyperledger/fabric
git checkout v1.0.0

拉取Fabric Docker镜像:

代码语言:javascript
复制
cd ~/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

启动示例网络:

代码语言:javascript
复制
./network_setup.sh up

当这个象征胜利的图案出现时:

恭喜我们跳入了这个巨坑!

如果没有...看看下面的bug fix吧qwq

Bug fix 1:

如果出现以下错误:

代码语言:javascript
复制
Error: Error endorsing chaincode: rpc error: code = Unknown dest = error starting container: API error (404): {"message": "network e2e2ecli_default not found"}
Chaincode instanttiation on PEER2 on channel 'mychannel' failed

是由于相应配置文件的bug导致,需要做的修改是打开当前目录下 base/peer-base.yaml

代码语言:javascript
复制
vim base/peer-base.yaml

将其中的

代码语言:javascript
复制
- CORE_VM_DOCKER_HOSTCONFIG_NETWORKMODE=e2ecli_default

改为

代码语言:javascript
复制
- CORE_VM_DOCKER_HOSTCONFIG_NETWORKMODE=e2e_cli_default

Bug fix 2:

如果出现以下问题:

代码语言:javascript
复制
WARNING: Error loading config file: .../.docker/config.json: permission denied

权限问题...第一次用sudo su跑起来吧,之后亲测非sudo也可以跑

Bug fix 3:

重启大法好...

代码语言:javascript
复制
./network_setup.sh down
./network_setup.sh up

版权声明

本作品由idealclover采用知识共享署名-相同方式共享 4.0 国际许可协议进行许可,转载请注明出处

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2018-07-11,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 安装Go语言环境
  • 安装Docker
    • Tip:使用阿里云加速
    • Fabric源码下载
      • Bug fix 1:
        • Bug fix 2:
          • Bug fix 3:
          • 版权声明
          相关产品与服务
          容器服务
          腾讯云容器服务(Tencent Kubernetes Engine, TKE)基于原生 kubernetes 提供以容器为核心的、高度可扩展的高性能容器管理服务,覆盖 Serverless、边缘计算、分布式云等多种业务部署场景,业内首创单个集群兼容多种计算节点的容器资源管理模式。同时产品作为云原生 Finops 领先布道者,主导开源项目Crane,全面助力客户实现资源优化、成本控制。
          领券
          问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档