区块链 hyperledger fabric1.0 环境搭建

我的环境说明:

虚拟机:VMware 12.5.7
操作系统:CentOS 64 位
超级账本:https://github.com/hyperledger/fabric-samples.git  v1.0.0


1.安装工具

  1.1 安装 git:    yum install git 

      在执行git命令之前先执行以下命令
git config --global core.autocrlf false
git config --global core.longpaths true

  1.2 安装 curl:   yum install curl

  1.3 安装 golang:yum install golang

通过修改profile文件:
vim /etc/profile
【/export PATH  找到设置PATH的行,添加】
  export GOPATH=/usr/lib/golang
 export PATH=$PATH:$GOPATH/bin

  1.4 配置

      vim /etc/selinux/config 
      将SELINUX=enforcing改为 SELINUX=disabled

2.【安装 Docker】

   2.1 yum update (更新系统)

   2.2 (docker安装步骤)

     2.2.1 docker安装

  (2.2.1.1)安装仓库
          (a) 安装yum-utils ,这样我们就能使用yum-config-manager 设置Yum源。
          yum install yum-utils
   
         (b) 执行以下命令,添加Yum源
          yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo

         (c) 【可选】执行以下命令,启用“edge”仓库。edge仓库其实也包含在了docker.repo文件中了,但默认是禁用的
                   我们可使用以下命令启用edge仓库。
          yum-config-manager --enable docker-ce-edge
           如果想要再次禁用edge仓库,可执行以下命令。
           yum-config-manager --disable docker-ce-edge
    (2.2.1.2)安装Docker
        (a)执行以下命令更新Yum的包索引
        yum makecache fast
        (b) 安装你想要的Docker版本(CE/EE)
  Docker版本 命令
  Docker CE sudo yum install docker-ce  (免费)
  Docker EE sudo yum install docker-ee
  Docker从17.03开始分为企业版与社区版,社区版并非阉割版,而是改了个名称;企业版则提供了一些收费的高级特性。
  EE版本维护期1年;CE的stable版本三个月发布一次,维护期四个月;另外CE还有edge版,一个月发布一次。
(2.2.1.3)安装 yum -y install epel-release  
(2.2.1.4)启动Docker
      systemctl start docker
    (2.2.1.5)验证安装是否正确
    docker run hello-world
    (2.2.1.6)升级Docker(忽略)
  yum makecache fast
                 卸载Docker
 yum remove docker docker-common container-selinux docker-selinux

(2.2.2)启动,systemctl start docker.service

(2.2.3)开机启动,systemctl enable docker.service

(2.2.4)帮助,docker --help

(2.2.5)概要信息,docker info

(2.2.6)镜像查看,docker images

(2.2.7)容器查看,即进程查看,docker ps -a

   2.3 下载:docker-compose :

          curl -L https://github.com/docker/compose/releases/download/1.14.0/docker-compose-`uname -s`-`uname 


-m` > /usr/local/bin/docker-compose

   2.4 授权:sudo chmod +x /usr/local/bin/docker-compose

   2.5 测试安装:docker-compose --version

3.安装node

   3.1 安装编译环境:yum install gcc-c++

   3.2 安装nvm

              curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.31.1/install.sh | bash
              或者
              wget -qO- https://raw.githubusercontent.com/creationix/nvm/v0.31.1/install.sh | bash
          
              执行 : source ~/.bash_profile
              可使用nvm --version 命令检查nvm是否安装成功

   3.3 安装node

          a.查看可以安装的node版本
      nvm list-remote
  b.安装想要安装版本的node,(例如:)
      nvm install v6.11.1
   c. 查看版本号(验证是否安装成功)
        node -v (出现版本号 大功告成)
       npm -v


   3.4 配置环境变量

which node (查看 node 安装路径)
修改profile文件:
vim /etc/profile
export NODE_HOME=/root/.nvm/versions/node/v6.11.1 (到版本号即可)
export PATH=$NODE_HOME/bin:$PATH

4.测试安装nginx

(4.1)下载镜像, docker pull nginx
(4.2)启动容器, docker run -d -p 8080:80 nginx
       把容器内的nginx的80端口,映射到当前服务器的8080端口,

             当前服务器的ip是192.168.1.120, (ifconfig-查询IP)
             浏览器输入http://192.168.1.120:8080/,就可以看到nginx已启动,
(4.3)再启动多一个容器,docker run -d -p 8081:80 nginx
           浏览器输入http://192.168.1.120:8081/,就可以看到另外一个nginx已启动 
             也可以通过curl 127.0.0.1:8081 来测试是否打开相应端口
(4.4)到这里就能体现出Docker部署应用和传统部署应用的区别了,           
             传统部署的话,需要人工拷贝多一份nginx,再配置端口,
             而Docker部署的话,在已制作好的镜像基础上,一条命令就可以部署一个新的应用

5.删除测试的nginx

(5.1)docker ps -a   可以显示容器id
(5.2)docker stop 73d5debfde26  停止容器
(5.3)docker rm 73d5debfde26   删除容器


6.指定容器nginx的参数

   docker run --name nginx-001 -d -p 8081:80 -v /home/docker/nginx/html:/usr/share/nginx/html nginx
   说明:-p 参数是把 宿主的8081端口映射到容器的80端口 
         这里要注意-v是数据卷,可以主机和容器之间共享/home/Docker/nginx/html这个目录,
         在容器里面就是/usr/share/nginx/html。其实这就是我们的代码目录,
         调试代码就是靠共享目录实现的,很方便!
         可以使用curl 127.0.0.1:8081查看


7.修改容器里面的配置文件

#进入容器
docker exec -it nginx-001 bash
#安装工具
apt-get update
apt-get install vim
#查看和修改nginx的配置信息
vim /etc/nginx/conf.d/default.conf (nginx配置)


8.在本地选择好一个目录,执行 git命令,下载【源码】

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


9.在本地选择好一个目录,执行以下命令,下载【二进制运行库】

a.先进行一次ntp时间同步(确保万无一失) ntpdate pool.ntp.org 
        b.开始下载源码   curl -sSL https://goo.gl/iX9dek | bash


10.配置环境变量  

   参考(http://www.cnblogs.com/hust-chenming/p/4943268.html)
   我本地的配置为 export PATH=/root/hyperledger/run-files/bin:$PATH
   修改profile文件:
vim /etc/profile
【/export PATH //找到设置PATH的行】添加
export PATH=<path to download location>/bin:$PATH


   重启机器


   安装 yum install npm

11.在目录fabric-samples中建立子目录 first-network (忽略)

   11.1 cd /root/hyperledger/fabric-samples/first-network ,进入该目录
   11.2 直接使用first-samples自代示例直接运行
         ./byfn.sh -m generate
   11.3 开启网络  ./byfn.sh -m up
   11.4 关闭      ./byfn.sh -m down (不用执行)

12.开启网络配置

   进入:cd /root/hyperledger/fabric-samples/fabcar
   执行: ./startFabric.sh

13.进入 cd /root/hyperledger/fabric-samples/fabcar

        node ./query.js


异常信息(1):
    Error: Cannot find module 'fabric-client'
    at Function.Module._resolveFilename (module.js:485:15)
    at Function.Module._load (module.js:437:25)
    at Module.require (module.js:513:17)
    at require (internal/module.js:11:18)
    at Object.<anonymous> (/root/hyperledger/fabric-samples/fabcar/query.js:11:11)
    at Module._compile (module.js:569:30)
    at Object.Module._extensions..js (module.js:580:10)
    at Module.load (module.js:503:32)
    at tryModuleLoad (module.js:466:12)
    at Function.Module._load (module.js:458:3)

异常信息(1)解决办法:
  安装: npm install








参考资料:

      http://hyperledger-fabric.readthedocs.io/en/latest/samples.html
      https://hyperledger-fabric.readthedocs.io/en/latest/write_first_app.html
      https://github.com/hyperledger/fabric-samples
      http://blog.csdn.net/remote_roamer/article/details/51916893
      http://www.cnblogs.com/bjlhx/p/7121875.html
      http://www.cnblogs.com/bjlhx/p/7195894.html
      http://www.cnblogs.com/niconi/p/5609773.html

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Hyperledger Fabric开源区块链分布式账本-学习参考资料合集,共37份。 一、Hyperledger开发资料 0. 票据背书详细介绍 1. 设置组织结构 2. 网络环境 3. 使用Fabric SDK Go 4.0. 链码开发_数据结构 4.1. 链码开发_票据相关请求处理 4.2. 链码开发_背书相关请求处理 4.3. 链码安装及实例化 5. 链码调用 6. 在网络应用程序中进行设置 GoWeb编程 二、Hyperledger技术资料 超级账本Hyperledger白皮书(中文版) 快速带你上手Hyperledger Fabric环境搭建+开发测试 性能基准测试和优化Hyperledger Fabric 区块链平台 An Introduction to Hyperledger Architecture of the Hyperledger Blockchain Fabric Cryptography and Protocols in Hyperledger Fabric FabNet- an Automatic Hyperledger Fabric Network Wizard Hyperledger 白皮书 Hyperledger 源码分析之 Fabric - 整体结构 Hyperledger Blockchain Performance Metrics Hyperledger Fabric - A Distributed Operating System for Permissioned Blockchains Hyperledger Fabric 实验指导 HyperLedger Fabric 在携程区块链平台中的应用实战 Hyperledger Fabric Access Control System for Internet of Things Layer in Blockchain-Based Applications Hyperledger Fabric Blockchain:Secure and Efficient Solution for Electronic Health Records Hyperledger fabric- towards scalable blockchain for business Hyperledger Fabric架构概览 hyperledger-fabricdocs Documentation-release-2.0 HyperLedgerFabric智能合约速成 Integrating Blockchain for Data Sharing and Collaboration Support in Scientific Ecosystem Platform Performance Analysis of Hyperledger Fabric Platforms Performance Benchmarking & Optimizing Hyperledger Fabric Blockchain Platform Performance Modeling & Analysis of Hyperledger Fabric (Permissioned Blockchain Network)-177页 Principle Foundations of Hyperledger Fabric Supporting Private Data on Hyperledger Fabric with Secure Multiparty Computation The privacy protection mechanism of Hyperledger Fabric and its application in supply chain finance
提供的源码资源涵盖了Java应用等多个领域,每个领域都包含了丰富的实例和项目。这些源码都是基于各自平台的最新技术和标准编写,确保了在对应环境下能够无缝运行。同时,源码中配备了详细的注释和文档,帮助用户快速理解代码结构和实现逻辑。 适用人群: 适合毕业设计、课程设计作业。这些源码资源特别适合大学生群体。无论你是计算机相关专业的学生,还是对其他领域编程感兴趣的学生,这些资源都能为你提供宝贵的学习和实践机会。通过学习和运行这些源码,你可以掌握各平台开发的基础知识,提升编程能力和项目实战经验。 使用场景及目标: 在学习阶段,你可以利用这些源码资源进行课程实践、课外项目或毕业设计。通过分析和运行源码,你将深入了解各平台开发的技术细节和最佳实践,逐步培养起自己的项目开发和问题解决能力。此外,在求职或创业过程中,具备跨平台开发能力的大学生将更具竞争力。 其他说明: 为了确保源码资源的可运行性和易用性,特别注意了以下几点:首先,每份源码都提供了详细的运行环境和依赖说明,确保用户能够轻松搭建起开发环境;其次,源码中的注释和文档都非常完善,方便用户快速上手和理解代码;最后,我会定期更新这些源码资源,以适应各平台技术的最新发展和市场需求。 所有源码均经过严格测试,可以直接运行,可以放心下载使用。有任何使用问题欢迎随时与博主沟通,第一时间进行解答!

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值