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- m( e6 Z B9 U 2 30 Q* V8 h, d. ]. ` M5 L, Y8 s | ~$ mkdir hubwiz-hf2! O4 | D) [6 k2 A- t6 l5 O- q ~$ cd hubwiz-hf2 ~/hubwiz-hf2$ |
13 Z# A0 Y9 e0 c; r# ~9 y | ~/hubwiz-hf2$ curl -sSL https://bit.ly/2ysbOFE | bash -s -d -- 2.0.0 1.4.4 0.4.18& H- a8 J5 w; u; j* W7 m$ j6 b# r |
2.0.0:表示Hyperledger Fabric的版本号1.4.4:表示Fabric CA的版本号0.4.18:表示第三方引用的版本号上述命令执行后,在当前目录的bin子目录下你就可以看到上述程序了:5 e1 M! w7 f0 A6 \& p0 v& ^; X
1' ?( o7 a" q' V: h m7 f5 p | ~/huwbiz-hf2$ ls bin. E* R9 X$ e7 ^' F8 y. U |
18 u; y9 _# S; y0 F$ r$ s7 H | export PATH=$HOME/hubwiz-hf2/bin:$PATH |
1 | ~$ orderer version, b( j' ]. t. L+ k0 a |
2、安装Hyperledger Fabric 2.0示例程序代码在Hyperledger Fabric 2.0目录中执行如下命令安装官方提供的示例代码:+ B' c7 G4 \, C! f
1/ @5 R D* f+ x | ~/hubwiz-hf2$ git clone https://github.com/hyperledger/fabric-samples8 ]. } ^% m1 P( K6 C% D |
使用如下命令查看并验证fabric-samples安装成功:4 b# v, I! Y) j/ }0 M) c
14 M/ Z2 B3 L$ ^- [7 I/ j$ d- I/ L | ~/hubwiz-hf2$ tree fabric-samples -L 1 -d |
1 2 33 m3 {# ~7 _. L6 {0 Z3 ? 4; z$ z! W! J4 d' E4 u e# Q7 | 5 6 7 8# w. h: B2 j) J 9 10 11! Y1 s- j0 O" E+ G9 h+ d3 c. z! J 12& ?1 p3 K' R1 W4 x& G 13! d/ l2 |8 v) t$ @1 }# G 14 | fabric-samples. Y1 n/ C" B: k4 z d |- basic-network |- chaincode-docker-devmode |- chaincode |- ci6 ^" O. R2 A2 Y: P |- commercial-paper! j- f4 w# w s2 ~7 D5 O |- docs+ T+ f$ s/ {3 w. |) V |- fabcar |- first-network% z! t: x6 R2 j2 R2 |$ h) A3 d) l |- high-throughput1 t4 G" S1 X$ y* S% w3 | |- interest_rate_swaps |- off_chain_data' a$ j" V* Y1 Q# H& i7 K( i |- scripts |- test-network8 U5 ?' G4 g9 B6 ?, A6 ~' V |
3、预下载Hyperledger Fabric 2.0的docker镜像可以使用如下命令预下载Hyperledger Fabric 2.0的docker镜像, 这样在进行后续的测试时,会减少一些等待时间。' Q9 A/ _ P! r5 ]
1, B1 l, ]% t; j1 b1 o: |( I | ~/hubwiz-hf2$ curl -sSL https://bit.ly/2ysbOFE | bash -s -b -- 2.0.0 1.4.4 0.4.18- b E- B; ]. D! ]! S |
4、使用test-network测试Hyperledger Fabric 2.0进入fabric-samples目录启动Hyperledger Fabric 2.0新增加的测试网络test-network:
1 2 | ~/hubwiz-hf2$ cd fabric-samples/test-network2 d0 @: o2 R' ^9 Z9 u: z, i: X! g ~/hubwiz-hf2/fabric-samples/test-network$ ./network.sh up |
1, u; X7 Z2 s# `' Y! D6 ~8 M 2 30 H2 G, q; B7 M1 t5 Q 4 C3 C6 P* |' [ 5 65 @7 K& A/ ]0 ]+ d2 [: X 7 8 9 10 11) v9 n' U6 f, k' [/ Z/ r | Creating network "net_test" with the default driver$ Z$ }) J: H: R4 z! X$ Q Creating volume "net_orderer.example.com" with default driver Creating volume "net_peer0.org1.example.com" with default driver Creating volume "net_peer0.org2.example.com" with default driver. m [# F5 U2 Y/ P Creating orderer.example.com ... done- ?, s+ s0 C, X Creating peer0.org2.example.com ... done6 M3 Y1 s7 U4 z' J Creating peer0.org1.example.com ... done8 Y8 s/ i9 P7 m; z. S, U( p( L4 E 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' i3 e$ m5 r' U% r0 e7 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) Z: Z0 }3 u$ ]5 C9 q' R8 K! N 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 |