创建自己的区块链网络 二
Posted 患孤
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了创建自己的区块链网络 二相关的知识,希望对你有一定的参考价值。
目录
前言
之前我们创建了项目目录结构,复制了必要的文件,修改了cropto-config.yaml文件,那么接下来我们还需要修改其它文件。那么废话不多说,教程开始。
系列文章直通车
名称 | 链接 |
---|---|
创建自己的区块链网络 一 | 点击此处 |
创建自己的区块链网络 二 | 点击此处 |
创建自己的区块链网络 三 | 点击此处 |
创建自己的区块链网络 四 | 点击此处 |
创建自己的区块链网络 五 | 点击此处 |
一、新建start.sh文件
我们需要一个shell脚本来帮我们启动网络,而无需自己一次次输入命令。
1、在deploy下创建start.sh文件
请确保在这个项目的deploy目录下,切换目录就不说了
touch start.sh
#使用这个命令来创建文件
二、编辑start.sh文件
我们编辑文件就不适用Linux的vim命令了,我们在goland里面编写。编辑完的内容如下:
1、清理项目环境
#!/bin/bash
echo "1.清理项目环境"
#这一步是用来清除项目创建的文件防止再次启动网络出错
mkdir -p config
mkdir -p crypto-config
rm -rf ./config/*
rm -rf ./crypto-config/*
2、生成组织基本结构
echo "2.生成组织的基本结构"
cryptogen generate --config=./crypto-config.yaml
三、运行start.sh
接下来我们切换至deploy目录下
第一次运行
./start.sh
不出意外你们肯定是这种情况,搭建可以看到start.sh颜色是灰色的这就代表他没有运行的权限
赋予权限
chmod 777 *.sh
现在颜色就变了,就可以运行了
第二次运行
./start.sh
运行成功,成功生成组织的基本结构
四、修改base/peer-base.yaml
现在我们需要修改peer-base.yaml文件,大家可以先修改文件在编写命令,在执行脚本,这样错误会少一点,我这里就一步步来。
大家用goland打开文件一定是报错的
这是因为我们没有这个环境变量,不用管他直接删除就好了
这样就没有报错了,但是会不会影响我们使用呢?这个放心不会影响我们的使用。
这里还有几个注意的点:
这个文件里面定义了一些加密的内容我们现在不需要加密,所以我们把他删除掉
看见TLS的如果为true就把他改为false
如果是路径的话就把他删除掉是不是很简单。
最后修改完成后是这个样紫的
# Copyright IBM Corp. All Rights Reserved.
#
# SPDX-License-Identifier: Apache-2.0
#
version: '2'
services:
peer-base:
image: hyperledger/fabric-peer
environment:
- CORE_VM_ENDPOINT=unix:///host/var/run/docker.sock
# the following setting starts chaincode containers on the same
# bridge network as the peers
# https://docs.docker.com/compose/networking/
# - CORE_VM_DOCKER_HOSTCONFIG_NETWORKMODE=$COMPOSE_PROJECT_NAME_byfn
- CORE_VM_DOCKER_HOSTCONFIG_NETWORKMODE=deploy_byfn
#在此处修改
- FABRIC_LOGGING_SPEC=INFO
#- FABRIC_LOGGING_SPEC=DEBUG
- CORE_PEER_TLS_ENABLED=false
- CORE_PEER_GOSSIP_USELEADERELECTION=true
- CORE_PEER_GOSSIP_ORGLEADER=false
- CORE_PEER_PROFILE_ENABLED=true
working_dir: /opt/gopath/src/github.com/hyperledger/fabric/peer
command: peer node start
orderer-base:
image: hyperledger/fabric-orderer
environment:
- FABRIC_LOGGING_SPEC=INFO
- ORDERER_GENERAL_LISTENADDRESS=0.0.0.0
- ORDERER_GENERAL_GENESISMETHOD=file
- ORDERER_GENERAL_GENESISFILE=/var/hyperledger/orderer/orderer.genesis.block
- ORDERER_GENERAL_LOCALMSPID=OrdererMSP
- ORDERER_GENERAL_LOCALMSPDIR=/var/hyperledger/orderer/msp
# enabled TLS
- ORDERER_GENERAL_TLS_ENABLED=false
- ORDERER_KAFKA_VERBOSE=false
working_dir: /opt/gopath/src/github.com/hyperledger/fabric
command: orderer
哦,对了这里还有一个注意的点,在environment下面的CORE_VM_DOCKER_HOSTCONFIG_NETWORKMODE这个变量里面我们需要把$COMPOSE_PROJECT_NAME 改为deploy及我们复制byfn.sh文件的目录。
结语
第二篇就这样结束了,下次再见。写blog虽然很累有时候也没有时间写,但我会坚持下次,希望大家多多支持。第三篇很快就会来了。
以上是关于创建自己的区块链网络 二的主要内容,如果未能解决你的问题,请参考以下文章