1、参考地址:https://hyperledger-fabric.readthedocs.io/en/latest/prereqs.html#install-curl

一、前置条件和系统配置

1、安装docker

http://www.cnblogs.com/bjlhx/p/7121875.html

2、系统配置

  Node.js-v2.1.8 及更高版本

  在Centos7 64位上安装node.js

yum install npm
查看npm版本:npm -v

3、安装curl  

yum install curl

4、安装golang

yum install golang

二、安装fabric

1、下载fabric

curl -sSL https://goo.gl/iX9dek | bash

可能会出现如下问题“Peer's Certificate has expired”

解决方案可能是本地时间问题

a>查看ssl更多信息  

curl https://www.baidu.com -v
* About to connect() to www.baidu.com port  (#)
* Trying 180.97.33.107...
* Connected to www.baidu.com (180.97.33.107) port (#)
* Initializing NSS with certpath: sql:/etc/pki/nssdb
* CAfile: /etc/pki/tls/certs/ca-bundle.crt
CApath: none
* Server certificate:
* subject: CN=baidu.com,OU=service operation department,O="Beijing Baidu Netcom Science Technology Co., Ltd.",L=Beijing,ST=Beijing,C=CN
* start date: Sep :: GMT
* expire date: Aug :: GMT
* common name: baidu.com
* issuer: CN=VeriSign Class International Server CA - G3,OU=Terms of use at https://www.verisign.com/rpa (c)10,OU=VeriSign Trust Network,O="VeriSign, Inc.",C=US
* NSS error - (SEC_ERROR_EXPIRED_CERTIFICATE)
* Peer's Certificate has expired.
* Closing connection
curl: () Peer's Certificate has expired.
More details here: http://curl.haxx.se/docs/sslcerts.html

根据SEC_ERROR_EXPIRED_CERTIFICATE的错误说明,进行搜索,发现该命令是由于本地的时间不正确造成的。进行一次ntp时间同步

ntpdate pool.ntp.org

2、配置环境变量

执行上述命令时候回产生一个bin文件夹,配置这个环境变量

export PATH=<path to download location>/bin:$PATH

安装完毕

三、示例

1、安装git

yum install git

2、获取fabric-samples代码

git clone https://github.com/hyperledger/fabric-samples.git
cd fabric-samples

3、在目录fabric-samples中建立子目录 first-network

mkdir first-network
cd fabric-network

在first-network中增加byfn.sh文件

./byfn.sh -h
Usage:
byfn.sh -m up|down|restart|generate [-c <channel name>] [-t <timeout>]
byfn.sh -h|--help (print this message)
-m <mode> - one of 'up', 'down', 'restart' or 'generate'
- 'up' - bring up the network with docker-compose up
- 'down' - clear the network with docker-compose down
- 'restart' - restart the network
- 'generate' - generate required certificates and genesis block
-c <channel name> - config name to use (defaults to "mychannel")
-t <timeout> - CLI timeout duration in microseconds (defaults to ) Typically, one would first generate the required certificates and
genesis block, then bring up the network. e.g.: byfn.sh -m generate -c <channelname>
byfn.sh -m up -c <channelname>

这里直接使用first-samples自代示例直接运行

./byfn.sh -m generate

开启网络

./byfn.sh -m up

关闭

./byfn.sh -m down

执行相关命令

005-环境安装【docker、fabric】的更多相关文章

  1. linux环境安装docker,部署应用

    安装: 1.Docker要求CentOS系统的内核版本高于 3.10 ,通过 uname -r 命令查看你当前的内核版本是否支持安账docker 2.更新yum包:sudo yum update 3. ...

  2. 无网环境安装docker之--rpm

    总体思路:找一台可以联网的linux,下载docker的RPM依赖包而不进行安装(yum localinstall),将所有依赖的rpm环境打包好,再在无网环境中解压逐一安装(rpm:  --forc ...

  3. windows环境安装docker,并下载lamp镜像

    1.PC系统:windows10专业版 2.开启Hyper-V 此电脑->右击->属性->控制面板主页->(查看方式为小图标)程序和功能->右上方启动或关闭windows ...

  4. ubuntu环境安装docker

    查看已安装的docker apt list docker* 如果已安装,并且需要卸载,则执行以下命令: apt remove docker* 更新apt索引 apt update apt需要支持HTT ...

  5. Linux环境安装Docker

    1. 使用APT安装 # 更新数据源 apt-get update # 安装所需依赖 apt-get -y install apt-transport-https ca-certificates cu ...

  6. Linux环境安装Docker入门教程

    安装 下载 wget https://download.docker.com/linux/static/stable/x86_64/docker-18.06.1-ce.tgz 解压 tar -xvf ...

  7. ubuntu 12.04 安装Docker 实战

    2016-3-8 从网络服务商那里申请到一台Ubuntu测试服务器,用来测试安装Docker环境. 注:本人初学Docker,对Linux命令也仅是稍稍了解,如有错误,烦请告知. 查看系统相关信息 可 ...

  8. Ubuntu18.04上安装Docker CE

    建立 REPOSITORY 1.更新索引包 更新 /etc/apt/sources.list 和 /etc/apt/sources.list.d 中列出的源的地址,这样才能获取到最新的软件包 sudo ...

  9. Redhat 离线安装 Docker (Community from binaries)

    需求 在离线环境安装Docker (Community版),因为Enterprise版要花钱.当然资金充裕的客户可参考https://docs.docker.com/install/linux/doc ...

  10. 【docker部署】基于linux的centos操作系统部署安装docker容器

    一.docker介绍 容器是轻量级的,包含应用运行所需所有东西(代码.库.运行时环境.系统设置,以及依赖关系)的独立的包.每个容器都部署于它自己的 CPU.内存.块 I/O,以及网络资源上,所有这些都 ...

随机推荐

  1. C#关键字之Partial详解

    Partial是局部类型的标志.局部类型可以实现将一个类.结构或接口分成几个部分,分别放在在几个不同的.cs文件中(当然也可以放在同一个.cs文件中).在程序进行编译之后,将会合并成一个完整的类.因此 ...

  2. HTML中让表单input等文本框为只读不可编辑但可以获取value值的方法;让文本域前面的内容显示在左上角,居中

      HTML中让表单input等文本框为只读不可编辑的方法 有时候,我们希望表单中的文本框是只读的,让用户不能修改其中的信息,如使input text的内容,中国两个字不可以修改   有时候,我们希望 ...

  3. Create a new Docker Machine with the Hyper-V driver

    docker-machine就是docker工具集中提供的用来管理容器化主机的工具,用来管理运行在不同环境的主机,包括:本地虚拟机,远程虚拟机,公有云中的虚拟机都可以通过一个命令统一进行管理. 01. ...

  4. JDK8集合的便捷操作

    JDK8新特性,stream相关操作.把集合转换成stream,再对其进行相关操作,加上lambada表达式. demo: List<String> list = Arrays.asLis ...

  5. HIBERNATE与 MYBATIS的对比,在这里做一下总结

    我是一名java开发人员,hibernate以及mybatis都有过学习,在java面试中也被提及问道过,在项目实践中也应用过,现在对hibernate和mybatis做一下对比,便于大家更好的理解和 ...

  6. 【转】不用程序mysql也可以查询今天、昨天、7天、近30天、本月、上一月的数据

    今天   select * from 表名 where to_days(时间字段名) = to_days(now());   昨天 SELECT * FROM 表名 WHERE TO_DAYS( NO ...

  7. MATLAB中的文件类型总结

    %   ***.m文件 : 脚本文件或者函数文件或者:%   ***.mat文件:数据存储文件(二进制文件,可以ASCII码形式保存和加载,%                类似于单行EXCEL表格) ...

  8. ROS导航之参数配置和自适应蒙特卡罗定位

    我们的机器人使用两种导航算法在地图中移动:全局导航(global)和局部导航(local).这些导航算法通过代价地图来处理地图中的各种信息,导航stack使用两种costmaps http://www ...

  9. 第九篇:使用 lstat 函数获取文件信息

    前言 在之前的文章中,描述过如何用 fcntl 函数改变文件的状态标记.但,文件还有很多信息,如文件类型,权限设置,设备编号,访问时间等等.如果要获取这些信息,则使用函数 lstat 可以轻松达到这个 ...

  10. 基础知识《三》java修饰符

    一.修饰符 private 成员随时都是“私有”的,任何人不得访问.但在实际应用中,经常想把某些东西深深地藏起来,但同时允许访问衍生类的成员. protected 关键字可帮助我们做到这一点.它的意思 ...