006/搭建fabric(二)
准备vmware虚拟机,并安装完ubuntu系统后。继续搭建fabric运行环境。。。
0。打开终端,切换root身份。目的:后续操作即可不用sudo...
右键-》open Terminal-》
//默认root用户是无固定密码的,并且是被锁定的,如果想给root设置一个密码
sudo passwd root
//输入密码 & 确认密码 //切换root用户
su root
//输入密码即可--root //切换为普通用户
su username //eg:su yufeng
1。安装GIT
apt-get install git //安装git git version //查看版本号
2。安装docker 和 docker-compose(必须)
//1.卸载旧版本的Docker
//旧版本的Docker被称作docker或者docker-engine,Docker CE(社区版)包现在被叫做docker-ce。如果之前安装过了,需要先卸载: apt-get remove docker docker-engine docker.io //2。使用存储库安装docker (一)。设置存储库 //【1】.更新apt安装包索引 apt-get update //【2】。安装软件包以允许apt通过HTTPS使用存储库: apt-get install \
apt-transport-https \
ca-certificates \
curl \
software-properties-common //【3】。添加Docker官方的GPG密钥: curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add - //【4】。安装稳定版仓库
add-apt-repository \
"deb [arch=amd64] https://download.docker.com/linux/ubuntu \
$(lsb_release -cs) \
stable" (二)。安装Docker-CE版 。更新apt安装包索引: apt-get update -。安装最新版的Docker CE apt-get install docker-ce -。安装指定版本的Docker CE 【】。查看docker版本 apt-cache madison docker-ce 【】。安装指定版本docker apt-get install docker-ce=<VERSION> 。通过运行hello-world镜像验证Docker CE已被正确安装: docker run hello-world //出现Hello from Docker表示成功 4.安装docker-compose [1].安装pip
$ apt-get install python-pip
[2].安装docker-compose
$ pip install docker-compose>=1.8.0
3。安装node(必须)
curl -sL https://deb.nodesource.com/setup_8.x | sudo -E bash -
sudo apt-get install -y nodejs
4。安装GO及配置环境变量
【1】。下载最新版本的go二进制文件
将go的压缩文件下载到指定目录下(-P /opt :下载到指定目录/opt下)
wget -P /opt https://dl.google.com/go/go1.9.2.linux-amd64.tar.gz
//解压缩
sudo tar -C /opt -xzf go1.9.2.linux-amd64.tar.gz
【2】。配置环境变量
vi /etc/profile
在配置文件末尾增加内容:
export GOROOT=/opt/go
export GOARCH=amd64
export GOOS=linux
export GOPATH=/opt/gopath
export GOBIN=$GOROOT/bin
export PATH=$PATH:$GOBIN
注意:上述将原博客/etc/local修改为/opt是因为在执行fabric实例时,一直报order service有问题。。且指向/opt/gopath....异常
退出编辑,输入以下命令使修改生效:
source /etc/profile
查看go环境是否安装与配置成功
go version
若出现:go version go1.9.2 linux/amd64 则表明配置成功!
说明:
关于GOPATH,这是go程序运行的目录,也就是所有编写的go程序都要放在这个目录下。
根据上述配置,我们在~目录先新建一个gopath文件夹,然后新建三个文件夹src,pkg,bin。
其中src存放源码,pkg存放编译生成的文件,bin存放生成的可执行文件。
5。下载fabric
【1】。创建工作目录
mkdir -p $GOPATH/src/github.com/hyperledger
【2】。下载fabric
cd ~/gopath/src/github.com/hyperledger
git clone -b release-1.0 https://github.com/hyperledger/fabric.git
上述下载完成之后,我们可以看到当前工作目录下多了一个fabric的文件夹,这就是我们下载好的文件,这里面有我们需要的例子。
至此,我们的开发环境已经基本搭建完毕,下面将通过一个具体的例子下载fabric1.0.5的镜像并体验运行效果。
6。运行Fabric实例
//切换工作路径。进入scripts文件夹下
cd ./fabric/scripts/
//查看scripts文件夹内容
ls
当前路径下面有许多的shell脚本文件。

//下载镜像
./bootstrap.sh
===> List out hyperledger docker images
hyperledger/fabric-tools latest 6a8993b718c8 weeks ago .33GB
hyperledger/fabric-tools x86_64-1.0. 6a8993b718c8 weeks ago .33GB
hyperledger/fabric-couchdb latest 9a58db2d2723 weeks ago .5GB
hyperledger/fabric-couchdb x86_64-1.0. 9a58db2d2723 weeks ago .5GB
hyperledger/fabric-kafka latest b8c5172bb83c weeks ago .29GB
hyperledger/fabric-kafka x86_64-1.0. b8c5172bb83c weeks ago .29GB
hyperledger/fabric-zookeeper latest 68945f4613fc weeks ago .32GB
hyperledger/fabric-zookeeper x86_64-1.0. 68945f4613fc weeks ago .32GB
hyperledger/fabric-orderer latest 368c78b6f03b weeks ago 151MB
hyperledger/fabric-orderer x86_64-1.0. 368c78b6f03b weeks ago 151MB
hyperledger/fabric-peer latest c2ab022f0bdb weeks ago 154MB
hyperledger/fabric-peer x86_64-1.0. c2ab022f0bdb weeks ago 154MB
hyperledger/fabric-javaenv latest 50890cc3f0cd weeks ago .41GB
hyperledger/fabric-javaenv x86_64-1.0. 50890cc3f0cd weeks ago .41GB
hyperledger/fabric-ccenv latest 33feadb8f7a6 weeks ago .28GB
hyperledger/fabric-ccenv x86_64-1.0. 33feadb8f7a6 weeks ago .28GB
hyperledger/fabric-ca latest 002c9089e464 weeks ago 238MB
hyperledger/fabric-ca x86_64-1.0. 002c9089e464 weeks ago 238MB
并且,这个脚本运行完毕之后,我们会发现当前目录下多了一个bin文件夹,这个文件夹中所包含的可执行文件正是我们运行例子所需要的。

现在我们需要把这个文件夹复制到我们需要运行的例子的上层目录中,输入命令:
cp -rf bin/ ./../examples/
接下来我们就可以运行官方给出的例子:e2e_cli
cd ./../examples/e2e_cli/
./network_setup.sh up
正常运行结果:
关闭实例:
Ctrl+c ./network_setup.sh down
本文参考博客:
https://blog.csdn.net/diligent_lee/article/details/79141450
https://segmentfault.com/a/1190000009072224
本人操作过程中遇到的问题及解决方法
1。安装git问题
https://askubuntu.com/questions/15433/unable-to-lock-the-administration-directory-var-lib-dpkg-is-another-process
采用命令行处理
sudo rm /var/lib/apt/lists/lock
sudo rm /var/cache/apt/archives/lock
sudo rm /var/lib/dpkg/lock
2。docker安装有问题。卸载docker
https://blog.csdn.net/CSDN_duomaomao/article/details/77683607
sudo apt-get purge docker-engine //卸载docker
//卸载Docker及其依赖的不再需要的包(可能需要执行多次):
sudo apt-get autoremove --purge docker-engine
3。Docker compose异常解决方法
https://stackoverflow.com/questions/36685980/docker-is-installed-but-docker-compose-is-not-why
$ curl -L https://github.com/docker/compose/releases/download/1.16.1/docker-compose-`uname -s`-`uname -m` > ./docker-compose
$ sudo mv ./docker-compose /usr/bin/docker-compose
$ sudo chmod +x /usr/bin/docker-compose
https://blog.csdn.net/pushiqiang/article/details/78682323

006/搭建fabric(二)的更多相关文章
- Hyperledger Fabric手动生成CA证书搭建Fabric网络
之前介绍了使用官方脚本自动化启动一个Fabric网络,并且所有的证书都是通过官方的命令行工具cryptogen直接生成网络中的所有节点的证书.在开发环境可以这么简单进行,但是生成环境下还是需要我们自定 ...
- (原创)LAMP搭建之二:apache配置文件详解(中英文对照版)
LAMP搭建之二:apache配置文件详解(中英文对照版) # This is the main Apache server configuration file. It contains the # ...
- Selenium终极自动化测试环境搭建(二)Selenium+Eclipse+Python
Selenium终极自动化测试环境搭建(二)Selenium+Eclipse+Python 前面举例了Selenium+Eclipse+Junit+TestNG自动化测试环境的搭建,在前一篇的基础上, ...
- Spring+SpringMVC+MyBatis深入学习及搭建(十二)——SpringMVC入门程序(一)
转载请注明出处:http://www.cnblogs.com/Joanna-Yan/p/6999743.html 前面讲到:Spring+SpringMVC+MyBatis深入学习及搭建(十一)——S ...
- SAAS云平台搭建札记: (二) Linux Ubutu下.Net Core整套运行环境的搭建
最近做的项目,由于预算有限,公司决定不采购Windows服务器,而采购基于Linux的服务器. 一般的VPS服务器,如果使用Windows系统,那么Windows Server2012\2016安装好 ...
- ubuntu16.04下Hyperledger之搭建Fabric环境简单操作(五步启动e2e_cli)
如果你已经安装好go等工具.git及checkout相关代及下载相关镜像,您只需下面5步就能up e2e_cli~/go/src/github.com/hyperledger/fabric$ sudo ...
- vue项目搭建 (二) axios 封装篇
vue项目搭建 (二) axios 封装篇 项目布局 vue-cli构建初始项目后,在src中进行增删修改 // 此处是模仿github上 bailicangdu 的 ├── src | ├── ap ...
- linux下Oracle11g RAC搭建(二)
linux下Oracle11g RAC搭建(二) 一.安装前配置 网络的配置 IP占用測试 进入windows下.运行cmd,使用ping命令验证网段是否被占用. 注:用哪个网段都行,一定保证不要被其 ...
- 用lua nginx module搭建一个二维码
用lua nginx module搭建一个二维码(qr code)生成器 作者 vinoca 發布於 2014年10月31日 如果有VPS,或者开源的路由器,安装一个nginx,添加lua-nginx ...
随机推荐
- php内置函数分析range()
PHP_FUNCTION(range) { zval *zlow, *zhigh, *zstep = NULL, tmp; , is_step_double = ; double step = 1.0 ...
- Android Studio的安装
下载Android Studio(需要翻墙才能安装得快):直接到官网进行下载就可以了.下载地址:https://developer.android.com/ “Android Virtual Devi ...
- 在Wi-Fi路由器中发现了新的安全漏洞
黑客利用两种互联网通用协议的互动的漏洞:传输控制协议,或TCP和Wi-Fi.该漏洞利用并不针对任何传统的安全漏洞.相反,安全方面的弱点在于20多年前制定的基本Wi-Fi设计决策极难改变. 中国黑客教父 ...
- 可决系数R^2和方差膨胀因子VIF
然而很多时候,被筛选的特征在模型上线的预测效果并不理想,究其原因可能是由于特征筛选的偏差. 但还有一个显著的因素,就是选取特征之间之间可能存在高度的多重共线性,导致模型对测试集预测能力不佳. 为了在筛 ...
- weighted choice in python
对列表按概率采样 Input: a collection C of elements and a probability distribution p over C; Output: an eleme ...
- A1065
判断两数相加是否大于第三数,大于输出true,否则输出false(相等也是false) 1 需要注意数字溢出的问题: 2 先判断溢出,因为在a,b都是负数最小值的情况下,相加直接是正数,在c较小的时候 ...
- 虚拟机安装Windows系统,再安装orcale
本文出自:http://www.cnblogs.com/2186009311CFF/p/8724441.html 1.创建新虚拟机 2.选择自定义 3.选择workstation 5.x(据安装的系统 ...
- GPSMap程序源代码
1. 界面 第一次打开时选择工程文件 MainActivity.java Tools.OpenDialog(new ICallback(){ public void OnClick(String pa ...
- D. Shortest Cycle
D. Shortest Cycle A[i]&A[j]!=0连边, 求图中最小环 N>128 时必有3环 其他暴力跑 folyd最小环 #include<bits/stdc++.h ...
- 大数据笔记(二十一)——NoSQL数据库之Redis
一.Redis内存数据库 一个key-value存储系统,支持存储的value包括string(字符串).list(链表).set(集合).zset(sorted set--有序集合)和hash(哈希 ...