Fabric区块链Node.js开发详解Fabric区块链Java开发详解Fabric区块链Golang开发详解1、安装预编译的Hyperledger Fabric 2.0应用程序Hyperledger Fabric官方提供了以下2.0版本的预编译程序:
configtxgen:用于生成Fabric创世区块初始或更新配置文件configtxlator:用于编解码Fabric区块链配置文件cryptogen:用于快速生成节点、用户、客户端等所需的证书和密钥文件discover:用于Fabric网络的服务发现idemixgen:很少用到orderer:Fabric排序节点程序peer:Fabric对等节点程序fabric-ca-client:Fabric-CA服务程序的客户端,用于注册和添加用户首先创建一个Hyperledger Fabric 2.0的专用目录,然后进入 该目录:1 g* c# C) w9 t3 h4 H; O$ i
1% s& ~" b7 P- ~1 p8 e* w$ \ 2/ t; V) o) }4 I1 B5 b! K# z2 l 33 O3 G" ?/ ?8 ~8 W& Z9 s5 q | ~$ mkdir hubwiz-hf2$ v! f7 x: n9 ^ ~$ cd hubwiz-hf2 ~/hubwiz-hf2$( f, W! j8 k' J* |! Q |
1 | ~/hubwiz-hf2$ curl -sSL https://bit.ly/2ysbOFE | bash -s -d -- 2.0.0 1.4.4 0.4.18 |
2.0.0:表示Hyperledger Fabric的版本号1.4.4:表示Fabric CA的版本号0.4.18:表示第三方引用的版本号上述命令执行后,在当前目录的bin子目录下你就可以看到上述程序了:
1; Y" r1 [' E3 f: R, S% [8 D' Z5 a& f | ~/huwbiz-hf2$ ls bin7 Z$ I6 j3 E0 }; g: g( z |
17 W( ^+ U: Z2 f* P* S' | | export PATH=$HOME/hubwiz-hf2/bin:$PATH @/ N9 |/ I# }1 ~7 W |
1. M+ J. I7 D# G( G( k! j% L4 V | ~$ orderer version& q/ m) `3 S$ {, R |
2、安装Hyperledger Fabric 2.0示例程序代码在Hyperledger Fabric 2.0目录中执行如下命令安装官方提供的示例代码:1 l- K1 \$ |/ v3 O, [) _" n
1 | ~/hubwiz-hf2$ git clone https://github.com/hyperledger/fabric-samples" I2 }. x. {3 z U; d8 P6 I |
使用如下命令查看并验证fabric-samples安装成功:
1- c& _$ K" d0 g* T8 f, ]+ U- K | ~/hubwiz-hf2$ tree fabric-samples -L 1 -d |
1 2 3 4 5 6 e9 {+ {: `; u& c 76 J. X$ I+ @ i- O6 D 8# C8 J* B8 p& M, c: j+ l+ K 9 10 11 X* k& L6 Z& q" H 12 13 14 | fabric-samples& {7 M" Y0 g3 G |- basic-network |- chaincode-docker-devmode |- chaincode |- ci! O7 p- P- d( A1 J7 M! H! K. V( W( u7 r |- commercial-paper- s. D) H% }, W" E |- docs |- fabcar& p5 N) i5 x, o" v% G2 q1 \$ L |- first-network9 n7 R# D! B# _ |- high-throughput |- interest_rate_swaps k) z/ h+ l( o |- off_chain_data: [4 L& r& }0 y2 V' |- P7 A( _ |- scripts |- test-network |
3、预下载Hyperledger Fabric 2.0的docker镜像可以使用如下命令预下载Hyperledger Fabric 2.0的docker镜像, 这样在进行后续的测试时,会减少一些等待时间。
1 | ~/hubwiz-hf2$ curl -sSL https://bit.ly/2ysbOFE | bash -s -b -- 2.0.0 1.4.4 0.4.18% r) f/ ]: d( y, h D9 u |
4、使用test-network测试Hyperledger Fabric 2.0进入fabric-samples目录启动Hyperledger Fabric 2.0新增加的测试网络test-network:
19 C b) y, [% J& O: Q- N7 U 29 T, Z q& {2 C% N& y5 u+ W8 ]3 u- l$ s$ h | ~/hubwiz-hf2$ cd fabric-samples/test-network ~/hubwiz-hf2/fabric-samples/test-network$ ./network.sh up4 ^8 l. M8 a2 ~4 l, C |
1 2 32 m% w1 ]% h1 \ 4 5 6% w% r8 a- p: h' t2 p 7& F! ]: @: ^0 I) z 8 9" R; d* E: n' f& `3 q4 t# j y0 s 10 113 t8 F f7 q) a2 o | Creating network "net_test" with the default driver6 B2 c* E5 M% j% n Creating volume "net_orderer.example.com" with default driver5 N+ v, _+ I$ a& ]: v s: t Creating volume "net_peer0.org1.example.com" with default driver4 n' G P! ?. H: Y9 u9 K5 H Creating volume "net_peer0.org2.example.com" with default driver& v9 \9 F& {3 j" C& k4 a z Creating orderer.example.com ... done Creating peer0.org2.example.com ... done Creating peer0.org1.example.com ... done$ q7 ]0 a) [# V9 R6 H CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 8d0c74b9d6af hyperledger/fabric-orderer:latest "orderer" 4 seconds ago Up Less than a second 0.0.0.0:7050->7050/tcp orderer.example.com) W. K' k; w4 [: P ea1cf82b5b99 hyperledger/fabric-peer:latest "peer node start" 4 seconds ago Up Less than a second 0.0.0.0:7051->7051/tcp peer0.org1.example.com cd8d9b23cb56 hyperledger/fabric-peer:latest "peer node start" 4 seconds ago Up 1 second 7051/tcp, 0.0.0.0:9051->9051/tcp peer0.org2.example.com |