千家信息网

HyperLedgr如何部署以及初始化网络

发表于:2025-12-02 作者:千家信息网编辑
千家信息网最后更新 2025年12月02日,小编给大家分享一下HyperLedgr如何部署以及初始化网络,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!先决条件列表最新
千家信息网最后更新 2025年12月02日HyperLedgr如何部署以及初始化网络

小编给大家分享一下HyperLedgr如何部署以及初始化网络,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!

先决条件列表

  • 最新版本的 git

  • 最新版本的 curl

  • 任意版本的 wget

  • docker 和 docker-compose
    docker --version需要

  • Go 环境设置

  • Node.js 环境设置(包括 npm)

  • Python

安装示例、二进制和 Docker 映像

根据脚本下载源文件, 并存储到 bin 文件夹,最后该脚本将从 Docker Hub 下载最新的 Hyperledger Fabric Docker 镜像到本地的 Docker 注册表

测试安装环境正确性

开始之前

确认第二章节的安装实例工作成功

启动测试网络

cd fabric-samples/test-network
启用./network.sh -h查看测试网络搭建脚本的用法

1.Usage:2.  network.sh  [Flags]3.    4.      - 'up' - bring up fabric orderer and peer nodes. No channel is created5.      - 'up createChannel' - bring up fabric network with one channel6.      - 'createChannel' - create and join a channel after the network is created7.      - 'deployCC' - deploy the fabcar chaincode on the channel8.      - 'down' - clear the network with docker-compose down9.      - 'restart' - restart the network10.11.    Flags:12.    -ca  -  create Certificate Authorities to generate the crypto material13.    -c  - channel name to use (defaults to "mychannel")14.    -s  - the database backend to use: goleveldb (default) or couchdb15.    -r  - CLI times out after certain number of attempts (defaults to 5)16.    -d  - delay duration in seconds (defaults to 3)17.    -l  - the programming language of the chaincode to deploy: go (default), javascript, or java18.    -v   - chaincode version. Must be a round number, 1, 2, 3, etc19.    -i  - the tag to be used to launch the network (defaults to "latest")20.    -verbose - verbose mode21.  network.sh -h (print this message)22.23. Possible Mode and flags24.  network.sh up -ca -c -r -d -s -i -verbose25.  network.sh up createChannel -ca -c -r -d -s -i -verbose26.  network.sh createChannel -c -r -d -verbose27.  network.sh deployCC -l -v -r -d -verbose28.29. Taking all defaults:30.    network.sh up31.32. Examples:33.  network.sh up createChannel -ca -c mychannel -s couchdb -i 2.0.0-beta34.  network.sh createChannel -c channelName35.  network.sh deployCC -l javascript

当使用这个脚本network.sh up时将不产生任何人通道(只创建两个组织和一个排序节点)
docker ps -a命令会显示目前计算机上创建的几个节点 (3)

创建频道

使用脚本为 Org1 和 Org2 之间的事务创建 Fabric 通道,不同的通道有不同的分类帐本;./neteork.sh createChannel -c channelName

部署链码

./network.sh deployCC -l javascript
init 将会初始化智能合约内容,并调用链码将初始化的数据写入账本

  • 查询帐本所有信息
    Org1 的环境变量配置,查询 Org2 的环境配置需更改

1.# Environment variables for Org12.3.export CORE_PEER_TLS_ENABLED=true4.# Change Org2MSP5.export CORE_PEER_LOCALMSPID="Org1MSP"6.# change org2.example.com && peer0.org2.example.com7.export CORE_PEER_TLS_ROOTCERT_FILE=${PWD}/organizations/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/tls/ca.crt8.# change org2.example.com && Admin@org1.example.com9.export CORE_PEER_MSPCONFIGPATH=${PWD}/organizations/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp10.export CORE_PEER_ADDRESS=localhost:7051

peer chaincode query -C mychannel -n fabcar -c '{"Args":["queryAllCars"]}'

  • 更改帐上资本
    peer chaincode invoke -o localhost:7050 --ordererTLSHostnameOverride orderer.example.com --tls true --cafile ${PWD}/organizations/ordererOrganizations/example.com/orderers/orderer.example.com/msp/tlscacerts/tlsca.example.com-cert.pem -C mychannel -n fabcar --peerAddresses localhost:7051 --tlsRootCertFiles ${PWD}/organizations/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/tls/ca.crt --peerAddresses localhost:9051 --tlsRootCertFiles ${PWD}/organizations/peerOrganizations/org2.example.com/peers/peer0.org2.example.com/tls/ca.crt -c '{"function":"changeCarOwner","Args":["CAR9","Dave"]}'
    --peerAddresses localhost:7051表示 Org1 的地址
    --tlsRootCertFiles ${PWD}/organizations/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/tls/ca.crt表示 Org1 的私钥地址
    --peerAddresses localhost:9051表示 Org2 的地址
    --tlsRootCertFiles ${PWD}/organizations/peerOrganizations/org2.example.com/peers/peer0.org2.example.com/tls/ca.crt表示 Org2 的私钥地址
    '命令太长了,还是使用 fabcar 里面的 sdk 编辑代码更改吧'

  • 关闭网络
    ./network.sh down该命令将停止并删除节点、链码容器、组织密钥、Docker 注册表中的链码镜像、通道、dock 卷。

使用证书颁发机构启动网络

Hyperledger 结构使用公钥基础结构(PKI),创建对等节点和排序节点之前必须创建部署和操作网络的所需的所有加密材料:节点,网络管理员,提交事务的用户都需要公共证书和私钥来验证身份。
默认情况使用Crptogen工具来创建证书和密钥, 创建过程如下

/Usr/fabric-samples/test-network/../bin/cryptogen###################################################################### Create Org1 Identities ################################################################################+ cryptogen generate --config=./organizations/cryptogen/crypto-config-org1.yaml --output=organizationsorg1.example.com+ res=0+ set +x###################################################################### Create Org2 Identities ################################################################################+ cryptogen generate --config=./organizations/cryptogen/crypto-config-org2.yaml --output=organizationsorg2.example.com+ res=0+ set +x###################################################################### Create Orderer Org Identities #########################################################################+ cryptogen generate --config=./organizations/cryptogen/crypto-config-orderer.yaml --output=organizations+ res=0+ set +x

以上是"HyperLedgr如何部署以及初始化网络"这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注行业资讯频道!

网络 节点 环境 脚本 地址 通道 内容 命令 版本 篇文章 证书 测试 不同 事务 密钥 注册表 结构 镜像 频道 排序 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 在服务器上搭建开发环境 海南省网络安全五指山论坛 乡镇网络安全培训措施 川师数据库期末考试 全程电子化服务器异常404 网络安全学习网 深圳数创软件开发有限公司 服务器被攻击了的症状 自己的电脑如何变成游戏服务器 网络安全可期 嘉兴同众网络技术有限公司怎么样 bit在数据库是指什么 本机怎么连接到阿里云数据库 网络安全字体标志图大全 服务器电脑开机两次 泰拉瑞亚手机版服务器怎么开呀 模拟器无法连接服务器 数据库建立好了如何建立数据文件 瓯南数据库温州 郝永清网络安全 网络安全方面的专业有哪些 数据库数据安全性研究 恒生科技互联网估值 个人互联网服务器局域网安全 数据库中常见的数据格式 易语言 服务器验证 麒麟服务器如何查硬盘序列号 湖北网站网络安全事件 湖北惠普服务器虚拟化技术 服务器硬盘售后维修中心
0