在 Win7 环境使用 Docker Images模拟 IBM Bluemix Blockchain Service

开发者福利!热门AI工具限时免费用 购周边即赠Coding Plan Lite,Claude Code、Cursor等20+工具畅享,效率翻倍! 阅读详情

在 Win7 环境使用 Docker Images模拟 IBM Bluemix Blockchain Service

作者:陳兆麟 Email:chenlin2@ms9.hinet.net

在开发区块链 (blockchain) 应用系统时,一定是先在本机测试完毕后再上传至云端平台;本机测试可有两种方法:(1)本机安装 hyperledger/fabric source code(参考文獻[2],除了开发应用app,还可以修改hyperledger/fabric 源码)。(2)使用hyperledger/fabric docker images (仅用于开发应用app)。学生适用第一项 (可深入理解 hyperledger/fabric) ,企业适用于第二项 (安装简单,容易建立 blockchain app开发环境);以下网址范例是以 docker images 建立本机 blockchain 开发环境,并以 IBM marblrs(参考文獻[3]) 做为测试范例。

開發環境:Win7 (64 bit, RAM >=8G) , Docker Toolbox , blockchain

1. win7 安装 cygwin (https://cygwin.com/install.html)

将安装之执行文件目录 (C:\cygwin64\bin) 设定在控制台系统 path 变量

2. 参考附录 (1) 在 Win7安装 Docker Toolbox (安装最新版)

(Win 10 可直接安装 Docker 请参考附录2 )

3. 桌面点选 (Docker Quickstart Terminal)

$ docker -v

Docker version 1.12.0, build 8eab29e

$ docker-machine ls (Docker Quickstart Terminal接口执行,确认虚拟机default 已安装)

NAME ACTIVE DRIVER STATE URL SWARM DOCKER ERRORS
default virtualbox Running tcp://192.168.99.100:2376 v1.10.3

$ docker-machine env default
SET DOCKER_TLS_VERIFY=1
SET DOCKER_HOST=tcp://192.168.99.100:2376
SET DOCKER_CERT_PATH=C:\Users\user\.docker\machine\machines\default
SET DOCKER_MACHINE_NAME=default
REM Run this command to configure your shell:
REM     FOR /f "tokens=*" %i IN ('docker-machine env default') DO %i

$ FOR /f “tokens=*” %i IN (‘docker-machine env default’) DO %i

$ docker-machine ls (确定虚拟机已经启动)
NAME ACTIVE DRIVER STATE URL SWARM DOCKER ERRORS
default * virtualbox Running tcp://192.168.99.100:2376 v1.10.3

4. 使用 putty (附录 3) 登录 default VM (username: docker,password:tcuser)

5. 建立 blockchain network vp0,vp1

安装 docker-compose (https://docs.docker.com/compose/install/)
$sudo -i

$curl -L “https://github.com/docker/compose/releases/download/1.8.1/docker-compose-$(uname -s)-$(uname -m)” > /usr/local/bin/docker-compose
$ chmod +x /usr/local/bin/docker-compose
$ exit
$ cd /c/Users/user
$ git clone https://github.com/IBM-Blockchain/marbles.git
(下载范例 marbles )
修正 Dockerfile,docker-compose.yaml,app.js, mycreds.json (参考附录 4)
$ cd marbles; mkdir peer; cd peer
$ vi docker-compose.yaml
$ docker-compose up (启动 vp0 vp1 container)
$ docker ps (验证 vp0, vp1 已启动)
1c1d1ba037b1 hyperledger/fabric-peer peer_vp1_1
d94012517013 hyperledger/fabric-peer peer_vp0_1

6. 观察 peer_vp1_1, peer_vp0_1 之container IP

$docker exec -it peer_vp0_1 bash
$ifconfig (记录 ip)

7. 启动 marble App container

$cd /c/Users/user/marbles
$ vi mycreds.json (依据前项更换 vp0 vp1 IP)
编辑 Dockerfile , docker-compose.yaml (参考附录 4)
$docker-compose build
$docker-compose up (请关闭窗口不必要程序)
若出现以下错误删除 marrble container,重复执行 docker-compose up

$ docker ps -a

$docker rm -f marblesdocker_web_1

8. marble APP 启动成功显示如下 container ( container将记录执行过程)

$docker ps

9. 浏览器输入http://192.168.99.100:3000,(192.168.99.100 default VM 之 IP)点选 CREATE (每一步骤代表transaction)

10. 选择 颜色,大小,使用者 => create

11.将Bob’s 之 marble 拖曳置至 Leroy’s

12. 将 Red Mable 拖曳至垃圾桶

13. 浏览器输入http://localhost:3000/p2, (2 peer) 点选 CREATE

Bob 及 Leroy 可建立自己的 marble 并拖曳至另不同 user, 且user可以所持 marble 交易不同颜色的 marble。

14. 指定 User 为 BOB 将 white marble 拖曳至 Leroy’s (非 BOB 无法拖曳)

15. 在 BOB 之下点选 TRADE (交易 marbles 使用)

16. 选择交易对象

17. 显示正在等待的交易,点选 x (删除等待的交易)

18.正在等待的交易将消失

若将 Bob之 red marble 拖曳至垃圾桶, 正在等待的交易也会消失

19. 本例可修改为夺宝游戏

a 可增加参与者人数 ( 2 -> 5)
b 建立宝藏库, marble可改为宝物, 每一种宝物都有不同颜色组合, 根据 user所付出劳务的多寡,可至宝藏库换得不同价值的宝物.相同宝物不同颜色全拿,可至宝藏库交换更高价值的宝物,也可与其它参与者交换。
c 参予者不积极参与游戏,先前的宝物,将自动退还至宝藏库,积极度的计算与目前所获宝物价值有关,所获宝物愈多,积极度愈严格 (一定时间未取得相对应。
d 等级宝物就需退回原有取得之宝物;当所有宝物都被退回,即中止该user 参与取宝游戏)。

20. 夺宝游戏可应用在广告代理商, user 所看广告多寡视为劳务支出,夺宝冠军后可向代理商得现金作为报酬;游戏与个人能力无关; user只要肯花时间看广告就能取得报酬。

附录:

1.Win7 安装Docker Toolbox:
https://www.docker.com/products/docker-toolbox
http://knight-.iteye.com/blog/2254627
http://rominirani.com/2015/08/15/docker-toolbox-setup-windows/
https://getcarina.com/docs/troubleshooting/troubleshooting-windows-docker-vm-startup/
http://dockone.io/article/594
2.Win 10 安装Docker
http://blog.miniasp.com/post/2016/08/01/Docker-for-Windows-1-12-Released.aspx
3.putty安装及使用:
http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html
http://download.ithome.com.tw/article/index/id/1649
4.docker 组态档设定
marbles:Dockerfile,docker-compose.yaml, mycreds.json, app.js
marbles/peer:docker-compose.yaml
可经以下网址内容修正后可得
https://1drv.ms/b/s!AkBmzWP0h-VxghIk2nyUNi8vNtiC
https://1drv.ms/b/s!AkBmzWP0h-VxgVV8ldGqidoa4tn9
企业若需要协助请私讯我
5.陈兆麟 facebook
https://zh-cn.facebook.com/chaolin.chen.18

參考文獻:

1.https://github.com/IBM-Bluemix/bluechatter
2.http://blog.csdn.net/chenjaulin/article/details/52803480
3.https://github.com/IBM-Blockchain/marbles
4.http://ict.dst.ibm.com/files/CLD9404.pdf
5.https://hub.docker.com/r/reachlin/bluemix/
6.https://developer.ibm.com/answers/questions/190436/ice-login-error.html
7.http://dockone.io/article/594
8.https://www.youtube.com/watch?v=i7_dQQy40ZQ&feature=youtu.be
9.https://1drv.ms/b/s!AkBmzWP0h-VxggcKD76DVuLZ92ky
10.https://1drv.ms/f/s!AkBmzWP0h-Vxbr7h1uTNsTMcPWI
11.https://1drv.ms/b/s!AkBmzWP0h-VxazOBOsVz8nGMLpM
12.https://1drv.ms/b/s!AkBmzWP0h-VxbLK7FOjH9IL5HHc
13.https://www.youtube.com/watch?v=24JAF9Eu1mk&list=UUOTZe-b_jE_Ovy9K9UhZ4BA&index=74
14.https://www.youtube.com/watch?v=wSmJ-rwUo8I&list=UUOTZe-b_jE_Ovy9K9UhZ4BA&index=73
15.https://www.youtube.com/watch?v=SOsn6MvGH60&list=UUOTZe-b_jE_Ovy9K9UhZ4BA&index=72

使用HFC SDK for Node.js 开发 Hyperledger Fabric 客户端应用系统 开发区块链 (for Hyperledger Fabric) 应用系统时,首先要在 local 环境测试 chaincode (智能合约),测试无误后再将 chaincode 嵌入至客户端程序;客户端程序 (for Node.js) 使用Hyperledger Fabric Client (HFC) SDK所提供的 APIs与blockchain network 交谈。包含 HFC SDK的Node.js 客户端程序 阅读详情

相关推荐

Win7 环境使用 hyperledger fabric source code 模拟 IBM Bluemix Blockchain Service

当美国联准会(Fed)主席叶伦力挺区块链 (blockchain) 后,区块链如野火燎原般风靡了整个地球,它将改变人类传统生活习惯;唯一 IBM bluemix所提供的 bloclcahain service 最近几乎塞到爆,常出现用量超出负荷的讯息,幸好IBM佛心提供了4 万行 hyperledger/fabric source code如果没有这些 source code, 区块链的应用将会被口袋深的大厂把持;目

chenjaulin的博客 7742

DOCKER windows 7 详细安装教程

Edit DOCKER windows安装 编者: xiaym  日期:2015年1月20日  排版工具: 马克飞象  QQ: 252536711 DOCKER windows安装 1.下载程序包2. 设置环境变量3. 启动DOCKERT4. 分析start.sh5. 利用SSH工具管理6. 下载镜像 6.1 下载地址6.2 用FTP工具上传ta

初夏的专栏 18万+

在 hyperledger fabric 环境对Validating Peers布署 chaincode (智能合约)

在开发 hyperledger App 时为了要 access 分类帐的 block 必须使用 chaincode, 也就是 App上层传来的 data 将透过 chaincode 传至 block, 所以user 在写 chaincode时,先要定义 App上层 (for NODEJS) 所传来的参数及传回值; user 在写的chaincode 时是根据系统所提供 interface 将 data读出 or 写入

chenjaulin的博客 6318

IBM LinuxONE 云端平台执行 Blockchain Marbles App

IBM 所提供的 blockchain 范例 marbles (參考文獻 2)可在 bluemix 云端平台执行 (參考文獻 3);可在本机安装 hyperledger/fabric 开源软件环境执行,适合学生研究 (參考文獻 4);可在本机安装 docker环境下执行,适合产品开发(參考文獻 5);可在 IBM linuxone 云端平台 Virtual Server环境下执行,适合在线测试

chenjaulin的博客 5197

在 hyperledger fabric 新增 User后重新编译 Docker 开发环境所需 Images

Hyperledger并不属于公有链(Public Chain,如:比特币),他是需要经过用户审查及认证才能加入区块链交易的私有链;它透过CA(Certificate Authority)来进行公钥、私钥、数字签章的发行,同时也要管理使用者的账户,确保实名制。除了第一道的用户认证关卡外,还有两个确保区块链信息安全的关卡。在储存交易记录的区块(Block)安全与隐私上,Hyperledger利用PKI加密机制的公、私钥

chenjaulin的博客 4751

使用 Cloudsoft AMP 部署 Hyperledger fabric App & Validating Peers & Chaincode

当在本机virtualbox单一VM 开发 Hyperledger/fabric App 应用系统後, 可使用Cloudsoft AMP 將其移至其它云端平台 (IBM, Micro

chenjaulin的博客 3622

PS柜(SW2012)_机箱机柜.rar

PS柜(SW2012)_机箱机柜.rar

潮阳区(汕头)L1到L5五级街道街区分区数据集shp格式数据

本资源为汕头市潮阳区L1到L5五级街道街区分区数据集SHP格式数据。数据涵盖汕头市潮阳区全域范围,包含从省级到区级、街道级、社区级、网格级共五级行政区划边界矢量数据,数据精度高、边界清晰完整,包含完整的地名、行政区划代码、面积等属性字段。数据为标准Shapefile格式,可在ArcGIS、QGIS、SuperMap等GIS软件中直接打开编辑,适用于城市规划、人口统计、商业选址、物流配送、区域分析、GIS空间分析等多种应用场景,是城市数字化管理与空间分析的重要基础数据。

刀路转曲线精讲.prt_UG四五轴CNC编程练习图档.rar

刀路转曲线精讲.prt_UG四五轴CNC编程练习图档.rar

Iperf3安卓端二进制文件,APK文件,Windows端应用文件

Iperf3安卓端二进制文件,APK文件,Windows端应用文件

十堰市L1到L5五级街道街区分区数据集shp格式数据

本资源为十堰市L1到L5五级街道街区分区数据集SHP格式数据。数据涵盖十堰市全域范围,包含从省级到区级、街道级、社区级、网格级共五级行政区划边界矢量数据,数据精度高、边界清晰完整,包含完整的地名、行政区划代码、面积等属性字段。数据为标准Shapefile格式,可在ArcGIS、QGIS、SuperMap等GIS软件中直接打开编辑,适用于城市规划、人口统计、商业选址、物流配送、区域分析、GIS空间分析等多种应用场景,是城市数字化管理与空间分析的重要基础数据。

面板数据回归及案例-下载即用.zip

打开链接下载源码: https://pan.quark.cn/s/a4b39357ea24 一、课程信息 课程名:《Python统计与数据分析实战》 课程介绍 本课程结合Python进行统计与数据分析的原理讲解与实战,涵盖了绝大部分统计&数据分析模型,特别是当前比较主流的算法:参数估计、假设检验、线性回归、广义线性回归、非线性模型、Lasso、岭回归、广义可加模型、正交多项式模型、回归样条等;单因素和双因素方差分析;机器学习经常用到的主成分分析、因子分析、典型相关分析、聚类分析等;各种非参数统计模型,包括非参数统计推断、尺度推断、位置推断、列联表数据和属性数据分析、对数线性模型和分位回归模型、非参数核密度估计、非参数回归等。 全部模型和算法使用Python编程实现,实例驱动,聚焦实战,是成为高薪数据科学家和数据分析师的必备必学课程。 课程网址 全部课程视频在此处:B站网址 课程目录 第1章 数据描述性分析 第2章 参数估计 第3章 假设检验 第4章 回归分析 第5章 方差分析 第6章 判别分析与聚类分析 第7章 主成分分析、因子分析与典型相关分析 第8章 非参数统计 注:详细内容见文末的思维导图。 适用人群: (1)准备毕业后从事统计与数据分析行业的大学毕业生或准毕业生。 尤其是需要转向从事计算机编程、数据分析和机器学习方面工作的毕业生,或者需要提升技能以寻找高薪酬工作的准毕业生等。 (2)公司或企事业单位内部有数据分析和统计分析需求的从业人员。 (3)大学和科研院所的硕、博士研究生、青年教师等,特别是在管理学和人文社会科学等专业有量化研究需求的研究生和教师等 (4)需要转行从事数据分析方面工作,或有技能提升需求的初入职场者。 学习收获: (1)全程保姆式教学,学习路径合...

dbeaver-ce-26.2.1-windows-x86-64.zip

DBeaver CE Windows x86-64 版本是 DBeaver 社区版在 2024 年发布的稳定更新版本,专为运行 Microsoft Windows 操作系统的 64 位架构计算机编译构建。该软件包以 ZIP 格式封装,不包含安装程序,采用绿色免安装设计,解压后即可直接运行 dbeaver.exe 启动主程序。其核心定位是面向数据库开发人员、DBA、数据分析师及系统运维工程师提供一体化的数据库可视化操作环境。软件内置对超过八十种主流与小众数据库系统的原生支持,涵盖关系型数据库如 PostgreSQL、MySQL、MariaDB、Oracle Database、Microsoft SQL Server、IBM Db2、SQLite、HSQLDB、H2、Derby、Firebird、Informix、Teradata、Vertica、Greenplum、Exasol、ClickHouse、DuckDB、Apache Derby;也包括 NoSQL 类型中的 Cassandra、MongoDB(通过 JDBC 兼容驱动)、Redis(通过插件扩展);同时兼容各类云数据库服务

深度学习数据融合方法综述

代码下载链接: https://pan.quark.cn/s/a4b39357ea24 在深入分析基于深度学习的数据融合方法研究综述之前,有必要先掌握数据融合的基础定义。数据融合是指将多个信息源的数据进行整合的过程,通过分析、处理和综合这些数据,可以生成更为精确、可靠和有用的决策支持信息。这种技术在众多领域得到了广泛应用,包括军事指挥控制、医疗诊断、智能交通系统和企业资源规划等。在大数据时代背景下,数据融合技术显得尤为关键,因为它能够帮助人们从庞大的数据中筛选出有价值的信息,进而提升决策的质量。深度学习是一种基于深度神经网络的学习技术,它通过多层神经元实现非线性映射和特征抽象,能够高效地从数据中识别出复杂的模式和结构。在数据融合领域,深度学习有助于探索数据的深层特征信息,从而提升数据融合的深度和品质。基于深度学习的数据融合方法可以借助深度网络进行特征提取和表征学习,使得数据融合在处理复杂的数据集时更具优势。 从文献回顾的角度来看,近年来已经出现了多种基于深度学习的数据融合方法。例如,采用深度学习进行特征提取的数据融合方法能够有效地识别出数据的关键特征,通过这种方式可以滤除噪声和冗余信息,保留有用信息,从而为后续的数据处理提供更加准确的输入。而基于深度学习进行融合的数据融合方法则侧重于利用深度学习模型来整合不同来源的数据,在这一过程中,深度神经网络可以作为融合层,对多源数据进行有效的整合和优化。基于深度学习全程参与的数据融合方法指的是深度学习模型不仅用于特征提取和数据整合,还参与到数据融合的每一个环节,从数据预处理到最终决策支持的各个步骤。 文章中提到的网络首发流程对于学术论文的出版具有特殊的意义。论文在经过同行评议和主编最终审查后成为正式录用稿件,此时内容已经确...

操作系统-实践工单-03-模块三-用户组管理与文件权限实操.docx

操作系统-实践工单-03-模块三-用户组管理与文件权限实操.docx

上一篇: 在 Win7 环境使用 hyperledger fabric source code 模拟 IBM Bluemix Blockchain Service
下一篇: 在 IBM LinuxONE 云端平台建构虚拟服务器在线测试以 Docker 开发的 Application system
chenjaulin
博客等级 码龄19年 14粉丝 9原创
评论 4
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值