Skip to content

Pier使用文档

Alexader edited this page Nov 27, 2020 · 6 revisions

准备工作

如果你想在本地或者服务器上运行跨链网关,你需要在机器上安装有以下的依赖:

golang1.13+packrgomockmockgen

安装和配置

编译安装

执行下面的命令进行安装

git clone https://github.com/meshplus/pier

cd pier

git checkout v1.0.0-rc1

make install

编译Fabric插件,项目需要下载在和pier同级目录下再编译:

git clone https://github.com/meshplus/pier-client-fabric

cd pier-client-fabric

git checkout v1.0.0-rc1

make fabric-1.4

配置

跨链网关配置

Pier 需要配置中继链和应用链的相关信息,可以指定配置目录,默认路径为 $HOME/.pier

pier init --repo=$HOME/.pier

// 查看具体的配置内容

cat $HOME/.pier/pier.toml

主要需要修改的部分是端口信息、中继链的信息、应用链的信息

  • 修改端口信息

[port]

// 如果不冲突的话,可以不用修改

pprof = 44555

  • 修改中继链信息

[bitxhub]

//在服务器启动的bitxhub需要修改为服务器地址

addr = "localhost:60011"

// 修改为BitXHub节点的地址

validators = [

    "0x000f1a7a08ccc48e5d30f80850cf1cf283aa3abd",

    "0xe93b92f1da08f925bdee44e91e7768380ae83307",

    "0xb18c8575e3284e79b92100025a31378feb8100d6",

    "0x856E2B9A5FA82FD1B031D1FF6863864DBAC7995D",

]

  • 修改应用链信息

[appchain]

// 所连接的应用链对应的Plugin文件在跨链网关配置文件夹下的相对路径

plugin = "fabric-client-1.4.so"

// 所连接的应用链的配置文件夹在跨链网关配置文件夹下的相对路径

config = "fabric"

插件配置

插件配置的模板在pier-client-fabric项目中

// 转到pier-client-fabric项目路径下

mkdir $HOME/.pier/plugins

cp ./build/fabric-client-1.4.so $HOME/.pier/plugins/

cp ./config $HOME/.pier/fabric

插件配置主要文件有


├── fabric
│   ├── config.yaml
|   └── crypto-config/
│   └── fabric.toml
│   └── fabric.validators

主要修改Fabric网络配置,验证证书,跨链合约设置:

  • Fabric网络配置
// 复制你所部署的Fabric所产生的crypto-config文件夹
cp -r /path/to/crypto-config $HOME/.pier/fabric/


// 复制Fabric上验证人证书

cp $HOME/.pier/fabric/crypto-config/peerOrganizations/org2.example.com/peers/peer1.org2.example.com/msp/signcerts/peer1.org2.example.com-cert.pem $HOME/.pier/fabric/fabric.validators
  • 修改 config.yaml 文件

config.yaml文件记录的Fabric网络配置,需要使用绝对路径,把所有的路径都修改为 crypto-config文件夹所在的绝对路径。


path: {CONFIG_PATH}/fabric/crypto-config => path: $HOME/.pier/fabric/crypto-config

同时需要修改所有的Fabric 的IP地址,如:


url: grpcs://localhost:7050 => url: grpcs://10.1.16.48:7050

  • 修改跨链合约相关配置

修改 fabric.toml 文件


addr = "localhost:7053" // 若Fabric部署在服务器上,该为服务器地址

event_filter = "interchain-event-name"

username = "Admin"

ccid = "broker" // 若部署跨链broker合约名字不是broker需要修改

channel_id = "mychannel"

org = "org2"

应用链注册

以上工作都准备好之后,Pier需要向中继链进行注册:

pier --repo $HOME/.pier appchain register --name=fab --type=fabric --validators=$HOME/.pier/fabric/fabric.validators --desc="fabric appchain for test" --version=1.4.3

部署验证规则

pier --repo $HOME/.pier rule deploy --path ./fabric-rule.wasm

--path需要指定编译好的验证规则。

启动跨链网关

Pier启动之前,必须有已经在运行的应用链和中继链,并且应用链上已经部署broker合约。

应用链注册之后,在中继链每个Pier都有唯一的ID,可以通过下面的命令进行查询

pier --repo=$HOME/.pier id

启动进程

pier --repo=$HOME/.pier start