Ubuntu重现IBM-Blockchain/marbles的Demo

2023-10-26

IBM-Blockchain/marbles-Github网址

之前看书marbles是被翻译成大理石,不过也有翻译成弹珠的。自己理解就可以了,都是资产!!
现在我们开始重现这个官方的Demo。

搭建Fabric的开发环境

下载源码

本Demo是基于fabric-samples里面的fabcar,你也必须实现这个fabcar的小Demo才可以。这个还请参照官网吧。这里给出我的一篇博客,虽然没有具体过程,但是有我遇到的错误,还算不错。
下载
git clone https://github.com/IBM-Blockchain/marbles.git --depth 1
不管你下载在什么地方,我都是建议你将它移动到fabric-samples下。
打开终端,进入marbles文件夹
cd marbles所在目录的路径
npm install

新开一个终端
cd fabcar所在目录的路径
./startFabric.sh
node enrollAdmin.js
node registerUser.js

这个时候fabcar目录下会有一个新的文件夹叫hfc-key-store,你需要将里面的所有东西复制到/home/用户名/.hfc-key-store下,全部复制过去!!!

修改配置文件

打开marbles/config/connection_profile_local.json,如下:

{
    "name": "Docker Compose Network",
    "x-networkId": "not-important",
    "x-type": "hlfv1",
    "description": "Connection Profile for an Hyperledger Fabric network on a local machine",
    "version": "1.0.0",
    "client": {
        "organization": "Org1MSP",
        "credentialStore": {
            "path": "/home/gopath/fabric-samples/fabcar/hfc-key-store"
        }
    },
    "channels": {
        "mychannel": {
            "orderers": [
                "fabric-orderer"
            ],
            "peers": {
                "fabric-peer-org1": {
                    "x-chaincode": {} }
            },
            "chaincodes": [
                "marbles:v4"
            ],
            "x-blockDelay": 10000
        }
    },
    "organizations": {
        "Org1MSP": {
            "mspid": "Org1MSP",
            "peers": [
                "fabric-peer-org1"
            ],
            "certificateAuthorities": [
                "fabric-ca"
            ],
            "x-adminCert": {
                "path": "/home/gopath/fabric-samples/basic-network/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp/admincerts/Admin@org1.example.com-cert.pem"
            },
            "x-adminKeyStore": {
                "path": "/home/gopath/fabric-samples/basic-network/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp/keystore/"
            }
        }
    },
    "orderers": {
        "fabric-orderer": {
            "url": "grpc://localhost:7050"
        }
    },
    "peers": {
        "fabric-peer-org1": {
            "url": "grpc://localhost:7051",
            "eventUrl": "grpc://localhost:7053"
        }
    },
    "certificateAuthorities": {
        "fabric-ca": {
            "url": "http://localhost:7054",
            "httpOptions": {
                "verify": true
            },
            "registrar": [
                {
                    "enrollId": "admin",
                    "enrollSecret": "adminpw"
                }
            ],
            "caName": null
        }
    }
}

最重要的地方如下:
找到三个path的地方,

 "path": "/home/gopath/fabric-samples/fabcar/hfc-key-store"

  "path": "/home/gopath/fabric-samples/basic-network/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp/admincerts/Admin@org1.example.com-cert.pem"

   "path": "/home/gopath/fabric-samples/basic-network/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp/keystore/"

这个是我修改之后的,原来是就是将路径改为hfc-key-store所在的路径,原来是$HOME,我是将$HOME改为/home/gopath,这是我的fabric-samples所在的路径。换句话说,你也值需要改前面这个,如果一致的话就不用改了!

链码的安装和实例化

打开终端
cd marbles所在的文件路径
cd scripts
node install_chaincode.js
node instantiate_chaincode.js

运行

打开一个终端
cd marbles所在的文件路径
npm install gulp -g
npm install
gulp marbles_local

打开:http://localhost:3001/login就可以了。

遇到的问题及解决方法

Node提示没有模块
只需要安装缺失的模块即可:npm install –save 模块名
执行gulp marbles_local出现下面的错误提示

未找到 'gulp' 命令,您要输入的是否是:
 命令 'gslp' 来自于包 'ghostscript' (main)
gulp:未找到命令

就是找不到gulp的意思,首先进入你Node的路径,这个就是你之前搭建Node环境的时候的那个包,你放在那个路径我就不知道了。
输入下面指令:
sudo ln -s /home/node-v8.11.1-linux-x64/bin/gulp /usr/local/bin/gulp
但是如果Node环境搭建成功了的话,你对上面指令肯定很熟悉,就是你创建npm软链接时候的指令!

晒图

one

下面大家可以去探索一下这个demo的代码了!

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Ubuntu重现IBM-Blockchain/marbles的Demo 的相关文章

随机推荐

  • 【以太坊系列-005】使用solc编译solidity智能合约,并生产web3deploy格式的代码

    说明 本文主要介绍 只通过solc来进行智能合约的部署 更简单的方式是通过remix直接生成 该场景是用于用户自己修改了solc编译器 remix无法使用的情况 1 代码结构 cat counter sol pragma solidity
  • SPP连接流程

    1 SDP服务注册 Server Channel即RFCOMM Server Channel 表示上层profile的rfcomm channel Central设备会使用SDP查询SPP的Server Channel 在后面使用RFCOM
  • C++ — 类型萃取

    类型萃取 在编程中我们可能时常会听到类型萃取这个高大上的 学术名词 我们今天来探究一下这个高大上的学术名词 到底是何方神圣 先看看官方的解释类型萃取使用模板技术来萃取类型 包含自定义类型和内置类型 的某些特 性 用以判断该类型是否含有某些特
  • Coinbase 研究:Web3 开发者堆栈指南

    原文标题 A simple guide to the web3 developer stack 撰文 Jonathan King Connor Dempsey Hoolie Tejwani 编译 胡韬 链捕手 尽管比特币和以太坊的兴起 以及
  • 电力识读图解(电力系统、电力网、电力系统电路图)

    一 电力系统和电力网 世界上大部分国家的动力资源和电力负荷中心分布是不一致的 如水力资源都是集中在江河流域水位落差较大的地方 燃料资源集中在煤 石油 天燃气的矿区 大电力负荷中心则多集中在工业区和大城市 因而发电厂和负荷中心往往相隔很远的距
  • 岁月划过生命线(2016 年终总结 -季度之星)

    岁月划过生命线 2016 年终总结 季度之星 标签 coder 年假结束 明天就要回到杭州 回到我fighting的战场 回首过去的2016 放纵了许多 但也收获了很多 n个项目 n个框架 第一个季度之星 头像第一次登上CSDN以及第一个年
  • 【C++笔记】OpenCV图像Mat格式转换为QT中QImage并显示zai Qlabel上

    Mat rgb QImage imgGray img if imgGray channels 1 imgGray img QImage const unsigned char imgGray data imgGray cols imgGra
  • 蓝桥杯官网练习题(兰顿蚂蚁)

    题目描述 兰顿蚂蚁 是于 1986 年 由克里斯 兰顿提出来的 属于细胞自动机的一种 平面上的正方形格子被填上黑色或白色 在其中一格正方形内有一只 蚂蚁 蚂蚁的头部朝向为 上下左右其中一方 蚂蚁的移动规则十分简单 若蚂蚁在黑格 右转 90
  • 标准时间格式转unix时间戳格式,误差8小时问题常见原因剖析

    标准时间格式即人一眼就能看懂的时间格式 比如 2017 11 28 15 00 00 unix时间戳格式 就是从1970年1月1日0点0分0秒 UTC GMT的午夜 开始计时 所经过的秒数 前端工作中有一次遇到需要从数据库中取出标准格式时间
  • 51单片机的智能温室大棚控制系统【proteus仿真+程序+报告+原理图】

    1 主要功能 该系统由AT89C51单片机 LCD1602模块 DS18B20温度传感器模块 DS1302时间模块 继电器驱动模块 电位器模块构成 本方案适用于智能温室大棚 蔬菜大棚等各类设计中 版本一 1 DS18B20温度传感器检测大棚
  • linux服务器结合宝塔搭建Gitlab服务器完整过程

    不想被束缚 公司总是不给我gitlab管理员账号 我自己搭建一个去 又不是没有服务器的人 哼 1 宝塔安装GitLab服务器 根据自己的内存选择不用的版本安装 2 宝塔开发端口如 8099 这个是我的Gitlab服务器的端口 如果有防火墙那
  • 虚拟化技术原理(CPU、内存、IO)

    本文来自 http www ywnds com p 5856 虚拟化 云计算现在已经非常成熟了 而虚拟化是构建云计算基础架构不可或缺的关键技术之一 云计算的云端系统 其实质上就是一个大型的分布式系统 虚拟化通过在一个物理平台上虚拟出更多的虚
  • 简单明了实现Java地图小程序项目

    简单明了实现Java地图小程序项目 博主介绍 前言 地图概述 地图技术 地图应用场景 网约车服务 智能穿戴 智能物流 智能景区 车联网 国内常见地图 地图API与搜索 JS API GL 演示百度地图 创建浏览器端应用 创建地图 添加控件
  • NGUI的一个bug解决:Thetype or namespace name `UnityEditor‘ could not be found.

    BUG Thetype or namespace name UnityEditor could not be found Are you missing ausing directive or an assembly reference 解
  • 计算机网络必会:TCP和UDP,面向连接,无连接,可靠与不可靠

    文章目录 导论 面向连接可靠的服务 TCP 无连接 不可靠的服务 UDP 导论 我在学习计算机网络的过程中 遇到了TCP和UDP解释 其中 无连接 面向连接 对我有很多新启发 下面就简单来聊聊 有兴趣多点个赞收藏一下 有错误可以私信反馈 欢
  • 用C语言写一个简单的贪吃蛇游戏(用到easyx图形库)

    学习内容 1 游戏的存储与读写 2 制作游戏菜单 3 制作定时器 目录 一 需要用到的头文件 全局变量和一些函数 二 定时器 三 数据的初始化和绘制 四 蛇的运行和吃食物 五 游戏菜单界面 六 游戏存储与读写 七 其他函数 八 主函数入口
  • Letters CodeForces - 978C(水题,low_bound()函数使用)

    水题 记录一下low bound begin end num 其中low bound是指以num为下界 寻找第一个比num大或相等的元素的指针 通过减去 begin指针我们可以获得相应的下标 upper bound first last v
  • p51 thinkpad 拆解_ThinkPad P51s固态硬盘加装指南(含拆机图)

    原标题 ThinkPad P51s固态硬盘加装指南 含拆机图 ThinkPad P51s是一款定位功能强大 机身轻薄的移动工作站 在19 9mm的机身中承载着酷睿i7 专业图形显卡 32G大内存 固态 机械双硬盘等专属强大性能 但是强大的性
  • webpack自动化打包webpack-dev-server

    在前面的章节中我们每次改完要打包的资源文件 和配置文件都是是输入npx webpack命令手动打包的 那么有没有什么办法可以监听到我们代码的改动 在保存时就自动打包呢 答案是当然有 不然哪些框架的脚手架是怎么实现保存自动打包的呢 这就是本章
  • Ubuntu重现IBM-Blockchain/marbles的Demo

    IBM Blockchain marbles Github网址 之前看书marbles是被翻译成大理石 不过也有翻译成弹珠的 自己理解就可以了 都是资产 现在我们开始重现这个官方的Demo 搭建Fabric的开发环境 搭建的环境至少是1 0