搭建开发环境
概述
Hyperledge fabric项目是IBM开源的区块链项目。Github地址:https://github.com/hyperledger/fabric
Hyperledge fabric的开发环境是一个运行在vagrant(一层virtualbox上的虚拟机皮)里的Ubuntu映像,并在虚拟机内部运行了若干Docker容器。从概念上说,就是在一个主机里启动了一个虚拟机,然后在虚拟机上启动Docker容器。
Host -> VM -> Docker
即 主机 -> 虚拟机 -> Docker
使用vagrant集成的开发环境开发允许开发者使用自己喜欢的操作系统和编辑器来开发,同时又可以让系统运行在一个与开发团队一致的开发环境中。
- 注意主机不能运行在虚拟中,否则会得到VT-x不可用的错误信息
环境配置
- Git client
- Go - 及1.6 以上
- Vagrant - 1.7.4 及以上
- VirtualBox - 5.0 及以上
- BIOS中设置Virtualization为Enabled
提示: BIOS的Virtualization选项应该在CPU或者Security设置中
步骤
设置GOPATH
fabric项目使用Go语言开发,请确保设置了GOPATH 环境变量.
Windows用户注意
如果你的系统是windows,那么在git clone
之前,先做如下操作:
git config --get core.autocrlf
- 1
如果 core.autocrlf
是 true
, 必须先通过以下命令将它设为 false
git config --global core.autocrlf false
- 1
如果你的core.autocrlf
是true的话,运行`vagrant up
时,会出现错误 ./setup.sh: /bin/bash^M: bad interpreter: No such file or directory
拷贝Fabric项目
Fabric项目基于 Go
语言开发,是一个GO
项目, 我们需要将仓库clone到 GOPATH/src目录下.IfyourGOPATH has multiple path components, then you will want to use the first one. There’s a little bit of setup needed:
cd $GOPATH/src
mkdir -p github.com/hyperledger
cd github.com/hyperledger
- 1
- 2
- 3
git clone https://github.com/hyperledger/fabric.git
- 1
使用Vagrant启动虚拟机
启动vagrant
cd $GOPATH/src/github.com/hyperledger/fabric/devenv
vagrant up
- 1
- 2
运行到这一步时,可能会因为qiang的缘故,不能下载box,我保存了一份在百度云中,可以通过 点击这里 下载,下载了之后,需要使用vagrant
添加box
,命令如下:
vagrant box add hyperledger/fabric-baseimage virtualbox.box
- 1
因为我们使用的是本地添加box,但本地添加的box版本号为0,这里fabric的Vagrantfile文件里为我们做了些处理,只要在环境变量中添加一个变量USE_LOCAL_BASEIMAGE
,并将其值设置为1
即可。这一步很重要,如果不加这一步,那么vagrant仍然会去网上下载(如果的确是去网上直接下载,网速能行的话就无需这么麻烦)。
添加完成后,再次进入devenv目录,然后运行
vagrant up
- 1
就行了。
等待一段时间,等到虚拟机启动后,就可以进行登录了。
Linux可以使用下面的命令
vagrant ssh
- 1
SSH登录:
address:127.0.0.1:2222
username:vagrant
password:vagrant
- 1
- 2
- 3
Windows用户的登录则需通过Putty
或者Xshell
等软件进行。
关于vagrant的使用可以看一下我写这篇简单的教程:http://www.zgljl2012.com/vagrantan-zhuang/
构建fabric
搭建好vagrant开发环境后,接下来就可以build and test fabric了。在你的虚拟机里,也有一个同样的fabric项目,可以通过以下命令打开文件夹:
cd $GOPATH/src/github.com/hyperledger/fabric
- 1
只要宿主机上的文件一修改,虚拟机里的fabric
也就立刻同步修改了,极大的便利了我们的开发过程(可以自己修改一下README.md
测试一下)。
注意
Windows 10 用户注意: Windows 10 用户在运行vagrant up
时可能会发生错误mitchellh/vagrant#6754,那是因为没有安装Micsoft Visual C++ 下面是下载地址: http://www.microsoft.com/en-us/download/details.aspx?id=8328
转载请注明原文地址:http://blog.csdn.net/zgljl2012/article/details/52896372
相关推荐
Hyperledger Fabric 搭建 mac and centos7 压缩包包含 1.boot2docker.iso version:17.09.1-ce 2.fabric 官方例子 3.mac and centos7 一键安装脚本
Hyperledger Fabric开发环境搭建(MacOS系统)1
快速带你上手Hyperledger Fabric环境搭建+开发测试 性能基准测试和优化Hyperledger Fabric 区块链平台 An Introduction to Hyperledger Architecture of the Hyperledger Blockchain Fabric Cryptography and ...
Hyperledger Fabric 源码 例子 依赖工具 其中包含自动搭建开发环境脚本
手把手教你在ubuntu 16.04.1系统下搭建超级账本(Hyperledger Fabric 0.6) 本地开发环境
该文档是从超级账本1.0版本开始到1.4,在环境搭建和配置当中,所遇到的各种大坑,做了一下汇总
搭建方法主要参考http://hyperledger-fabric.readthedocs.io/en/latest/dev-setup/devenv/的英文文档说明,我用的是Vagrant方法在windows(其他环境的就不要往下看了,我不敢保证)搭建,亲测没问题。准备工作:Git ...
在进行基础环境搭建和fabric环境部署完后,可以得到一个完全干净的空服务器状态。 3.1 生成证书文件 如果运行过e2e_cli案例,则执行如下命令即可做到环境清理(…/fabric/examples/e2e_cli/): ./network_setup.sh ...
https://www.hyperledger.org/projects/fabric 下载bootstrap.sh,https://github.com/hyperledger/fabric 将官网上面的bootstrap.sh放到src/github.com/hyperledger目录,修改可执行权限,ch
九、区块链学习-Hyperledger Fabric 基于release-1.0 本地开发环境搭建1. 概述2. 启动容器3. 编译安装链码4. 操作调用链码 1. 概述 在fabric-samples项目中提供了chaincode-docker-devmode来方便 开发者搭建本地开发...
fabric开发环境(一个节点) 一、安装docker 1、docker要求Linux内核版本不低于 3.10 检查Linux的内核版本,如果内核版本太低,升级内核 查看内核的版本命令 uname -a 2、根据不同的Ubuntu版本安装docker 查看Ubuntu...
概述目前Hyperledge fabric的开发环境是使用一个运行在Vagrant里的Ubuntu映像,并在里边依次运行若干Docker容器。 从概念上说,就是在一个主机上启动了一个虚拟机,然后在其上依次启动Docker容器。Host -> VM -> ...
0.环境搭建准备工作 建议使用ubuntu服务器,这里我直接使用了阿里云的乞丐版服务器,配置如下: 操作系统为Ubuntu 14.04(64位)为保证后续步骤一致,请使用跟我相同的版本. 1. 远超登录终端准备 用putty或者xshell远超...
1、安装前准备: 安装 git、curl、pip sudo apt-get install git sudo apt-get install curl sudo apt-get install python-pip pip install --upgrade pip 2、安装go ...接下来编辑当前用户的环境变量:
文章目录从IBM Cloud控制面板导出连接信息在VSCode中创建gateway和wallet在VSCode中提交transaction ...如果是实际的应用程序,需要通过使用Hyperledger Fabric SDKs作为gateway来连接Fabric网络。