centos7下安装fabric2.2
准备基础环境
1、安装curl、git
- yum install curl
- yum install git
2、go环境搭建
- 下载解压
- cd /home
- mkdir app
- cd app
- wget https://dl.google.com/go/go1.14.2.linux-amd64.tar.gz
- tar -C /usr/local -zxf go1.14.2.linux-amd64.tar.gz
- 配置环境变量
- vim /etc/profile
- #go
- export PATH=$PATH:/usr/local/go/bin
- export GOROOT=/usr/local/go
- export GOPATH=$HOME/go
- export PATH=$PATH:$HOME/go/bin
- 使配置生效
- source /etc/profile
- 查看版本
- go version
3、java环境搭建
- 下载jdk压缩包
- 链接:https://pan.baidu.com/s/1UX3qi6XbJZF8lzlpqFr9Fg
- 提取码:wajb
- 创建安装目录
- mkdir /usr/local/java/
- 解压至安装目录
- tar -zxvf jdk-8u171-linux-x64.tar.gz -C /usr/local/java/
- 设置环境变量,打开文件
- vim /etc/profile
- 在末尾添加
- export JAVA_HOME=/usr/local/java/jdk1.8.0_211
- export JRE_HOME=${JAVA_HOME}/jre
- export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
- export PATH=${JAVA_HOME}/bin:$PATH
- 使环境变量生效
- source /etc/profile
- 添加软链接
- ln -s /usr/local/java/jdk1.8.0_211/bin/java /usr/bin/java
- 检查
- java -version
4、maven环境搭建
- 下载maven压缩包
- wget https://archive.apache.org/dist/maven/maven-3/3.5.4/binaries/apache-maven-3.5.4-bin.tar.gz
- 创建安装目录
- mkdir /usr/local/maven/
- 解压至安装目录
- tar -zxvf apache-maven-3.5.4-bin.tar.gz -C /usr/local/maven/
- 设置环境变量,打开文件
- vim /etc/profile
- 在末尾添加
- export MAVEN_HOME=/usr/local/maven/apache-maven-3.5.4
- export PATH=$PATH:$JAVA_HOME/bin:$MAVEN_HOME/bin
- 使环境变量生效
- source /etc/profile
- 检查
- mvn --version
5、docker环境搭建
- 卸载旧版本
- yum remove docker docker-client docker-client-latest docker-common docker-latest docker-latest-logrotate docker-logrotate docker-engine
- 安装依赖
- yum install -y yum-utils device-mapper-persistent-data lvm2
- 设置稳定的仓库
- yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
- 安装 Docker Engine-Community
- yum install docker-ce docker-ce-cli containerd.io
- 如果要安装特定版本,使用如下命令查询后安装
- yum list docker-ce --showduplicates | sort -r
- yum install docker-ce-<VERSION_STRING> docker-ce-cli-<VERSION_STRING> containerd.io
- 启动Docker
- systemctl start docker
- 查看Docker版本
- docker version
- 设置加速镜像
- 在/etc/docker/daemon.json 中写入如下内容(如果文件不存在请新建该文件)
- 腾讯云:https://mirror.ccs.tencentyun.com
- 阿里云:https://svaken38.mirror.aliyuncs.com
- 网易云:http://hub-mirror.c.163.com
- {
- "registry-mirrors": ["https://svaken38.mirror.aliyuncs.com"]
- }
- sudo systemctl daemon-reload
- sudo systemctl restart docker
6、docker-compose环境搭建
- 方法一:
- 下载解压
- curl -L https://github.com/docker/compose/releases/download/1.26.2/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose
- 赋予权限
- chmod +x /usr/local/bin/docker-compose
- 查看版本
- docker-compose version
- 方法二:若是github访问太慢,可以用daocloud下载
- curl -L https://get.daocloud.io/docker/compose/releases/download/1.26.2/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose
- 赋予权限
- chmod +x /usr/local/bin/docker-compose
- 查看版本
- docker-compose version
- 方法三:
- 如果上面方法下载慢,可以直接在github下载最新版本,更名、解压到/user/local/bin/下面并赋予权限
- https://github.com/docker/compose/releases
安装fabric
1、下载源码
- fabric需要go来编译,所以放到go工作目录下
- mkdir -p ~/go/src/github.com/hyperledger
- cd ~/go/src/github.com/hyperledger
- git clone https://github.com/hyperledger/fabric.git
- 上述github地址下载太慢,可以尝试下面码云上这个地址
- https://gitee.com/luxiaojun0605/fabric.git
2、利用源码中脚本文件下载镜像等配置文件
下载完成后会得到一个fabric文件夹,进入fabric/scripts目录可以看到一个bootstrap.sh脚本,直接执行bootstrap.sh脚本,就会自动进行fabric相关文件和镜像的下载
因涉及到github上面下载包,所以此过程会很漫长,为了节省时间,我们可以拆分脚本中内容分别下载
这里下载的瓶颈主要是pullBinaries二进制文件,所以我们先把他注释后运行bootstrap.sh脚本文件进行fabric-samples文件夹的下载和镜像文件的拉取
- 注释掉#pullBinaries以后执行bootstrap.sh文件(下载fabric-samples和docker镜像)
- ./bootstrap.sh
运行最后为下载的fabric镜像
下载的fabric-samples会在scripts文件夹下,咱们把他放到上一级目录方便操作
- mv fabric-samples ../
- /root/go/src/github.com/hyperledger/fabric/fabric-samples
3、下载二进制文件
其中二进制文件在浏览器中下载更快一点(不同版本fabric,对应下载的二进制包版本不同),如果不能确定下载二进制文件的版本,可以通过注释#cloneSamplesRepo和#pullDockerImages
只保留pullBinaries,然后运行./bootstrap.sh就能看到需要下载的二进制文件的版本以及下载路径(两个二进制文件,执行完第一次./bootstrop.sh以后需要注释掉第一个二进制文件的下载路径
然后再执行一次./bootstrop.sh)
把下载的俩个二进制文件传到fabric-samples文件夹下解压得到bin文件夹,其中包含有二进制文件
运行fabric
1、修改配置
1>修改启动文件中的配置项,修改CC_SRC_LANGUAGE为java(默认为go安装链码)
2>如果CC_SRC_LANGUAGE为go语言的话,需要设置go env -w GOPROXY=https://goproxy.cn,direct
3>需要移除test文件夹,这是一个代码校验的文件(/root/go/src/github.com/hyperledger/fabric/fabric-samples/chaincode/fabcar/java/src)
2、替换自定义链码
位置:/root/go/src/github.com/hyperledger/fabric/fabric-samples/chaincode/fabcar/java/src/main/java/org/hyperledger/fabric/samples/fabcar
3、启动fabric
centos7下安装fabric2.2的更多相关文章
- CentOS7 下 安装 supervisor以及使用
CentOS7 下 安装 supervisor 以及使用 手动安装 [注] linux环境必须安装 python 1.获取supervisor包:[https://pypi.python.org/py ...
- Linux CentOs7 下安装 redis
Linux CentOs7 下安装 redis 请将以下命令放入linux命令行中运行 如果安装过程前没有安装GCC请先安装 命令如下 $ yum install gcc-c++ $ wget ht ...
- Centos7下安装配置Redsocks
Redsocks是一个开源的网络程序,代码依赖开源的libevent网络库.Redsocks允许你将所有TCP连接重定向到SOCKS或HTTPS代理,比如Shadowsocks(Centos7下安装配 ...
- CentOS7下安装SVN服务端
CentOS7下安装SVN服务 1. yum命令即可方便的完成安装# sudo yum install subversion 测试安装是否成功:# svnserve --version 更改svn的默 ...
- centOS7下安装GUI图形界面
1.如何在centOS7下安装GUI图形界面 当你安装centOS7服务器版本的时候,系统默认是不会安装GUI的图形界面程序,这个需要手动安装CentOS7 Gnome GUI包. 2.在系统下使用命 ...
- CentOS7下安装MySQL并配置远程连接
一.CentOS7下安装MySQL数据库 CentOS7默认的安装包里面已经没有 MySQL-Server安装包了,远程镜像中也没有了. 默认的是MariaDB (MySQL的一个分支,开发这个分支的 ...
- Docker学习笔记3:CentOS7下安装Docker-Compose
Docker-Compose是一个部署多个容器的简单但是非常必要的工具. 安装Docker-Compose之前,请先安装 python-pip,请参考我的另一篇博文CentOS7下安装python-p ...
- docker(一) Centos7下安装docker
docker(一) Centos7下安装dockerdocker(二) windows10下安装dockerdocker(三) 镜像和容器常用命令 docker(四) 使用Dockerfile构建镜像 ...
- centos7 下 安装部署nginx
centos7 下 安装部署nginx 1.nginx安装依赖于三个包,注意安装顺序 a.SSL功能需要openssl库,直接通过yum安装: #yum install openssl b.gzip模 ...
随机推荐
- 第四方 fast快捷支付封装
class Fastpay { protected $conf = [ 'appkey'=>'',//appkey 'key'=>'',//秘钥 ]; protected $http_ty ...
- 目标检测中的IOU和CIOU原理讲解以及应用(附测试代码)
上期讲解了目标检测中的三种数据增强的方法,这期我们讲讲目标检测中用来评估对象检测算法的IOU和CIOU的原理应用以及代码实现. 交并比IOU(Intersection over union) 在目标检 ...
- Codeforces Round #669 (Div. 2)/Codeforces1407 ABCD
A. Ahahahahahahahaha 通过作者半个小时的观察:全零和全一必定有一个是符合要求的答案,因为0的个数和1的个数至少有一个大于等于\(\frac{n}{2}\). B. Big Vova ...
- 干货:不同场景容器内获取客户端源IP的方法
摘要:客户端和容器服务器之间可能存在多种不同形式的代理服务器,那容器中如何获取到客户端真实的源ip呢? k8s已经成为当今容器化的标准,人们在享受容器带来的高效与便利的同时,也遇到一些烦恼:客户端和容 ...
- Conscription(POJ 3723)
原题如下: Conscription Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 16584 Accepted: 57 ...
- 知识全聚集 .Net Core 技术突破 | 如何实现一个模块化方案一
简介 模块化的介绍一共2篇 这一篇我们实现一个功能非常简单的StartupModules模块化. 第二篇我们来实现一个ABP的模块化效果. 思考 其实来简单想一下模块化的实验思路,写个接口=>模 ...
- Mock简明文档
Mock简明文档 Mock.mock() Mock.mock( requestUrl?, requestType?, template|function(options) ) Mock.mock( t ...
- Linux 命令: sed
sed -- sed 命令对于Linux系统来说,在命令行修改,操作文本是非常的方便. 特别是批量的修改某些字符等,是非常省时省力的,非常适合在自动化的脚本中去应用. 如下的几个小例子: 1)如何删除 ...
- nohup命令重定向标准输出和错误输出
命令:command > /dev/null 2>&1 & 输出到/dev/null表示输出重定向到黑洞,即输出内容不打印到屏幕上,null是/dev下空设备文件. &g ...
- 据说是面试题:由【if(a==1&&a==2&&a==3)】引发的思考探讨
有一天,突然在一个微信群有个群友发了张图片抛出了一道题,如图: