Fabric区块链Node.js开发详解Fabric区块链Java开发详解Fabric区块链Golang开发详解1、安装预编译的Hyperledger Fabric 2.0应用程序Hyperledger Fabric官方提供了以下2.0版本的预编译程序:- f7 ]6 `: e0 B
configtxgen:用于生成Fabric创世区块初始或更新配置文件configtxlator:用于编解码Fabric区块链配置文件cryptogen:用于快速生成节点、用户、客户端等所需的证书和密钥文件discover:用于Fabric网络的服务发现idemixgen:很少用到orderer:Fabric排序节点程序peer:Fabric对等节点程序fabric-ca-client:Fabric-CA服务程序的客户端,用于注册和添加用户首先创建一个Hyperledger Fabric 2.0的专用目录,然后进入 该目录:+ N, Q: e/ Q8 C' z: h4 A. K
1 2 3. R O/ y& I5 w. v1 I% ~$ O& M7 j | ~$ mkdir hubwiz-hf2 ~$ cd hubwiz-hf2( v( q* ]" S) J2 Y! \ ~/hubwiz-hf2$ |
1 | ~/hubwiz-hf2$ curl -sSL https://bit.ly/2ysbOFE | bash -s -d -- 2.0.0 1.4.4 0.4.18& ~! u; c; t2 \5 l- J# ?5 f |
2.0.0:表示Hyperledger Fabric的版本号1.4.4:表示Fabric CA的版本号0.4.18:表示第三方引用的版本号上述命令执行后,在当前目录的bin子目录下你就可以看到上述程序了:
11 j1 u P7 [: u* T4 p4 L | ~/huwbiz-hf2$ ls bin |
1 | export PATH=$HOME/hubwiz-hf2/bin:$PATH |
1 | ~$ orderer version |
2、安装Hyperledger Fabric 2.0示例程序代码在Hyperledger Fabric 2.0目录中执行如下命令安装官方提供的示例代码:# g. V6 s$ L* Y( s
1 | ~/hubwiz-hf2$ git clone https://github.com/hyperledger/fabric-samples |
使用如下命令查看并验证fabric-samples安装成功:9 j7 _8 ~9 E$ c3 n& O
1 | ~/hubwiz-hf2$ tree fabric-samples -L 1 -d5 B* y. _0 ?. b0 O3 U4 P |
1/ f1 V( N3 e5 b+ j 2 34 e6 U$ S/ k" B1 h* u; p 4 5) b' T2 F! _3 v 62 L; o$ N5 O$ D2 s j 7) Z( ]" l8 V7 V# z; m0 i 8 98 e/ k, F% N3 `" C 10 11. u3 T& U5 E% U7 Q9 M$ n' @ 12 13& i) a* c* e4 b& u5 C 14/ ~/ h4 B; P) M1 \8 k! [ | fabric-samples |- basic-network5 P R7 O8 M" K8 A* l- |) [ |- chaincode-docker-devmode |- chaincode |- ci! t/ e! y! h+ T, w% t% D |- commercial-paper |- docs3 y4 |" ?! ]5 x. _4 o) \ |- fabcar |- first-network |- high-throughput1 |! }' R- k9 T' W; U% M6 H/ Q1 r |- interest_rate_swaps$ K0 y) y' d( f% B |- off_chain_data |- scripts* e$ j) ?6 i1 h |- test-network |
3、预下载Hyperledger Fabric 2.0的docker镜像可以使用如下命令预下载Hyperledger Fabric 2.0的docker镜像, 这样在进行后续的测试时,会减少一些等待时间。: ?$ A# E3 ]8 u! |/ L1 ~. Z
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:9 B& U" Q3 t, u# v" ^3 d
1 2 | ~/hubwiz-hf2$ cd fabric-samples/test-network+ i( r% m5 L/ M) X0 R( X$ J& Y ~/hubwiz-hf2/fabric-samples/test-network$ ./network.sh up( d$ \. e6 [" ^- C% W8 j. Z9 [ |
1 2# _/ D+ \$ f. p7 P 3- s9 s) i0 c, p% @8 _2 g 4 5 6/ d/ d2 r7 `. g- i$ ], y0 [ 7 8( H1 j, W2 V# f8 h 9 108 U" k2 @ L, u V6 m 11 J* b. R+ e0 }" C0 u | Creating network "net_test" with the default driver) j9 ?$ E# c/ y+ Y/ ^$ @ Creating volume "net_orderer.example.com" with default driver Creating volume "net_peer0.org1.example.com" with default driver3 Q4 i5 c2 _( l" E; _3 g/ b Creating volume "net_peer0.org2.example.com" with default driver Creating orderer.example.com ... done6 T0 n t4 T2 j. q3 X Creating peer0.org2.example.com ... done5 k4 y+ [+ u5 a Creating peer0.org1.example.com ... done& o8 T2 P/ r2 c9 j/ m3 D CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES2 q! u9 a/ o4 [9 G9 S+ H 8d0c74b9d6af hyperledger/fabric-orderer:latest "orderer" 4 seconds ago Up Less than a second 0.0.0.0:7050->7050/tcp orderer.example.com, _- c8 ] P/ D9 t( H 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% B/ N2 t3 |1 p' n) e3 | 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, H% |5 s* p3 E4 o |