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 2( t* [. G7 ~/ W2 O 35 ~) Q, e% r6 o0 C. @ | ~$ mkdir hubwiz-hf2/ {1 i. l/ j* z) u ~$ cd hubwiz-hf2 ~/hubwiz-hf2$ |
1 | ~/hubwiz-hf2$ curl -sSL https://bit.ly/2ysbOFE | bash -s -d -- 2.0.0 1.4.4 0.4.184 h; m8 ]5 }# z |
2.0.0:表示Hyperledger Fabric的版本号1.4.4:表示Fabric CA的版本号0.4.18:表示第三方引用的版本号上述命令执行后,在当前目录的bin子目录下你就可以看到上述程序了:
1 | ~/huwbiz-hf2$ ls bin3 s. ^" o3 R/ _# \# o& ^ |
1 | export PATH=$HOME/hubwiz-hf2/bin:$PATH3 b/ }0 \, z x4 d# c* U6 E1 A |
1/ b6 e A$ D J; K6 \( {: g | ~$ orderer version8 \9 I: G' J$ J8 G* f! ^ |
2、安装Hyperledger Fabric 2.0示例程序代码在Hyperledger Fabric 2.0目录中执行如下命令安装官方提供的示例代码:4 C9 m& V' u8 B% Q
10 p2 H! {/ q. m0 F+ a% {( L& }4 X& k | ~/hubwiz-hf2$ git clone https://github.com/hyperledger/fabric-samples" }- ?8 U/ n9 g" z* D: d5 }4 h" P |
使用如下命令查看并验证fabric-samples安装成功:/ e; a% t; _: [/ g) a
1 | ~/hubwiz-hf2$ tree fabric-samples -L 1 -d# d) d! _( \, [. y |
1 2 3 4+ k& @/ D6 E( D 50 P, K% c6 B2 r8 _! x8 `( z$ k4 L" r 68 f' E3 m2 m; ^0 p 7) |' R# F. N' s 8 9 10 11) U/ d4 x- _( j) D5 _% T( a' k 12 133 I, I7 q. e/ T: v4 E n7 K 14 | fabric-samples |- basic-network |- chaincode-docker-devmode |- chaincode" y( ]/ j8 w. p |- ci3 s8 a5 S' b$ F |- commercial-paper |- docs |- fabcar* A& {' L3 l+ J2 {+ z/ B' R2 t3 F |- first-network |- high-throughput0 q6 k/ v X4 N |- interest_rate_swaps |- off_chain_data |- scripts e( K d5 s: G& D7 C4 j1 A |- test-network5 F! s5 z9 t4 c |
3、预下载Hyperledger Fabric 2.0的docker镜像可以使用如下命令预下载Hyperledger Fabric 2.0的docker镜像, 这样在进行后续的测试时,会减少一些等待时间。% a; v' N' s; F# m* T
1 | ~/hubwiz-hf2$ curl -sSL https://bit.ly/2ysbOFE | bash -s -b -- 2.0.0 1.4.4 0.4.18 |
4、使用test-network测试Hyperledger Fabric 2.0进入fabric-samples目录启动Hyperledger Fabric 2.0新增加的测试网络test-network:
1 2- _; e: d* t$ c3 R: P% P | ~/hubwiz-hf2$ cd fabric-samples/test-network5 i( q0 |8 ^3 U8 k0 ]) W ~/hubwiz-hf2/fabric-samples/test-network$ ./network.sh up+ Z8 c9 @. v) h N" n |
1 2; n2 p3 t0 s1 U8 w; B$ {# e9 U& } 3- c# ?8 \* o. g- R' Q6 [. G/ a 4) |* J# ^4 x$ [( k+ P3 s0 B 5& d( e6 d! p6 u1 I' s$ }2 i 61 h0 f- { O8 m9 |9 i/ t/ w 7 8: C, z; e# Z9 q) u" l1 ^; W 93 G: f. o$ {& J# b9 \/ a( G6 @, J 10 11 | Creating network "net_test" with the default driver Creating volume "net_orderer.example.com" with default driver Creating volume "net_peer0.org1.example.com" with default driver: q! l% h: R6 K4 [3 F+ F: ~ Creating volume "net_peer0.org2.example.com" with default driver7 z* D# M3 [9 h- Y: [ Creating orderer.example.com ... done Creating peer0.org2.example.com ... done Creating peer0.org1.example.com ... done- T9 J' D: y C3 U, P9 e h2 N* G CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES9 e+ f$ k6 }# X; s 8d0c74b9d6af hyperledger/fabric-orderer:latest "orderer" 4 seconds ago Up Less than a second 0.0.0.0:7050->7050/tcp orderer.example.com 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( }& w( N# K% a$ O- c& S |