-
Notifications
You must be signed in to change notification settings - Fork 16
Pier使用文档
Alexader edited this page Nov 27, 2020
·
6 revisions
如果你想在本地或者服务器上运行跨链网关,你需要在机器上安装有以下的依赖:
golang1.13+、packr、gomock、mockgen
执行下面的命令进行安装
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