ubuntu16.04搭建fabric (自己遇到的问题及解决----小白创作).md

Hyperledger Fabric

1. 安装

Fabric提供一个脚本,可以安装Samples,Binaries和Docker Images。

Hyperledger Fabric目前正式发布的SDK:

Node.js

Hyperledger Fabric Node SDK: https://github.com/hyperledger/fabric-sdk-node

Node SDK documentation: https://fabric-sdk-node.github.io/

Java

Hyperledger Fabric Java SDK: https://github.com/hyperledger/fabric-sdk-java

总的一个流程就是首先安装curl下载工具,通过curl安装docker-CE和docker-compose,安装go,下载上述提到的fabric引导脚本,通过执行脚本下载sample,并摘取docker镜像。创建管理网络。

01 操作系统

这里我们选择了Ubuntu16.04作为环境搭建系统

02 安装及使用curl

curl是一种利用URL语法进行开源文件传输的工具。

第一种方法:即最常用方法


apt-get install curl

第二种方法:下载压缩包,直接安装

1.登录上述网址,下载所需版本压缩包,这里使用的是curl-7.61.1.tar.gz

  1. 进入curl-7.61.1目录中,执行

./config

如需要指定安装目录,则在上述命令后添加prefix参数,并附加指定目录。例如安装目录为/usr/local/curl


./config --prefix=/usr/local/curl

3.make

4.make install

----安装完毕

5.将curl命令加入环境变量


vi /etc/profile

export PATH=$PATH:/usr/local/curl/bin$

source /etc/profile

03安装docker-ce

docker是世界领先的软件容器平台,Docker 属于 Linux 容器的一种封装,提供简单易用的容器使用接口。它是目前最流行的 Linux 容器解决方案。Docker 将应用程序与该程序的依赖,打包在一个文件里面。运行这个文件,就会生成一个虚拟容器。程序在这个虚拟容器里运行,就好像在真实的物理机上运行一样。有了 Docker,就不用担心环境问题。总体来说,Docker 的接口相当简单,用户可以方便地创建和使用容器,把自己的应用放入容器。容器还可以进行版本管理、复制、分享、修改,就像管理普通的代码一样。

Docker官网对于Mac系统或者WIndows系统直接给出了容易安装的Docker Machine桌面版。对于LInux,需要原生安装Docker Engine。

Ubuntu安装:https://docs.docker.com/install/linux/docker-ce/ubuntu/

官网一共给出3种安装方式:

  1. 通过Docker仓库安装,这是官方推荐的方法

  2. 下载DEB包,手动安装。

  3. 通过便捷脚本自动安装。

博主采用的是第三种方法安装

  1. 通过curl下载安装脚本

curl -fsSL https://get.docker.com -o get-docker.sh

执行这条命令,会提示,curl不支持https,这是因为https协议是加密安全的基于http协议,需要openssl的静态哭,所以需要支持https,就要下载openssl。从网上搜了一下解决办法:

http://blog.51cto.com/liupengfang1015/1945846

但是当我更新Id时提示我权限不够,这里改为


sudo sh -c "echo '/usr/local/lib' >> /etc/ld.so.conf"

执行成功,sudo一次只能应用一条命令,之前执行的只有一个双引号实质是两条命令,所以后一条命令没有提供root权限。这里将两条命令合为一条命令,另外一中解决办法,可以直接大概编辑器,手动修改


vim /urs/local/lib

lib里面有openssl,改为


/usr/local/ssl/bin/openssl /usr/bin/openssl2



最后curl -V


Protocols: dict file ftp ftps gopher http https imap imaps ldap ldaps pop3 pop3s rtmp rtsp smb smbs smtp smtps telnet tftp 



可以看到支持https

curl 安装成功之后便可以通过curl下载docker脚本


sudo curl -fsSL https://get.docker.com -o get-docker.sh

sudo sh get-docker.sh

如果显示


If you would like to use Docker as a non-root user, you should now consider
adding your user to the "docker" group with something like:

  sudo usermod -aG docker your-user

Remember to log out and back in for this to take effect!

WARNING: Adding a user to the "docker" group grants the ability to run
         containers which can be used to obtain root privileges on the
         docker host.
         Refer to https://docs.docker.com/engine/security/security/#docker-daemon-attack-surface
         for more information.


则说明安装成功。

但是这里我也遇到一个大坑,就是在使用curl去下载docker时,该命令无效,虽然后续被我瞎鼓捣鼓捣对了,这里有几个猜测:

1.根据网上一些答案,说是因为 curl或者libcurl文件版本不同

2.电脑中遗留多个版本curl或者libcurl,实质和1是一样的

3.可能未更新软件(sudo apt-get update && sudo apt upgrade),当时我执行update命令时,也出现一个问题就是提示,“无法下载… 404 not found”
这里只需要将其无法下载后面网址中对应ppa删掉即可

安装Docker compose

  1. 下载最新版本 Compose

udo curl -L "https://github.com/docker/compose/releases/download/1.22.0/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose


2.对其二进制文件赋予权限


sudo chmod +x /usr/local/bin/docker-compose



3.测试安装


docker-compose --version
docker-compose version 1.22.0, build 1719ceb

05安装go

1.下载golang的压缩包


wget https://storage.googleapis.com/golang/go1.10.1.linux-amd64.tar.gz


(需要翻墙)

2.解压该包至 /usr/local目录

3.创建go目录


mkdir $HOME/go

4.配置环境


vi ~/.bashrc

添加:

export GOROOT=/usr/local/go

export GOPATH=$HOME/go

export PATH=$PATH:$GOROOT/bin:$GOPATH/bin

使环境变量立即生效:
source ~/.bashrc

5.检查go是否安装好


go version

06下载fabric引导脚本bootstrap.sh

这里我没有找到官方对该脚本的安装地址,剩余所有安装步骤均按照下述网址,安装过程没有任何问题:

https://www.jianshu.com/p/4f58e0fcb9f9

这里提示对于增加环境变量步骤,例子中所给出目录为


export PATH=$PATH:$GOROOT/bin:$GOPATH/bin:/home/blockchain/hyperledger-fabric/fabric-samples/bin

因为前述作者所用用户为blockchain,这里要根据hyperledger-fabric所在目录来填写环境变量位置。

最后,给予一个忠告,ubuntu的主文件夹大小一定要给够,我之前只分配了10个g,装了个这个,用完了。。。沉痛的教训,不说了 我重装系统去了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值