# 配置项

## 示例格式

```json
{
  "cmi": "",
  "debug": "",
  "disableDoRepo": false,
  "disableLocalLhs": false,
  "doipCertPath": "",
  "doipLhsAddress": "",
  "doipPort": -1,
  "doipUserHandle": "",
  "enableEventPersistence": false,
  "enableSsl": "./ssl/chained.pem:./ssl/domain.pem",
  "ip": "127.0.0.1",
  "isLAN": true,
  "overwrite": false,
  "servicePort": 21030,
  "textFileSuffixes": ".yjs,.json,.txt,.css,.js,.html,.md,.conf,.csv",
  "withBdledgerClient": "./runnable/bdledger_mac",
  "withBdledgerServer": false,
  "consistencyPlugins": "./libs/custom-plugin.jar",
  "startContract": [],
  "datachainConf": "021.node.internetapi.cn:21121"
}
```

## consistencyPlugins 配置

下述四项插件使用字符串分割，如需添加多项，以逗号分隔，在cmconfig.json里修改如:

``````
"consistencyPlugins": "xxx/xxx.jar,xxx/xxx.jar"
``````

## 通讯插件配置

下述四项插件使用字符串分割，如需添加多项，在cmconfig.json里修改如:

``````
"wsPluginActions": "org.bdware.metering.MeteringAction"
``````

1. wsPluginActions: WS端,包括contractManagerFrameHandler和CMHttpHandler
2. clientToAgentPlugins: client -> cluster 包括MasterClientFrameHandler
3. clientToClusterPlugins:[], client -> NodeCenterClientHandler
4. tcpPlugins:tcp 包括TcpserverFrameHandler

## startContract配置说明

其中startConfig.json为json数组结构，格式如下：

```json
[
  {
    "path": "./BDWareProjectDir/publicCompiled/xxx.ypk",
    "owner": "",
    "killBeforeStart": "",
    "createParam": {}
  },
  {
    
  }
]
```
path为必填配置项。表示启动的ypk的路径。
owner为可选配置，不填时，使用NodeManger的key作为Owner。
killBeforeStart为可选配置，填写kill的合约名称。
createParam为可选配置。表示合约的启动参数。

## datachainConf 配置说明

1.针对Window Docker/Mac Docker
可使用`"datachainConf":"host.docker.internal:2401"`进行配置。
2.针对Linux Docker，可通过查看`docker 0`的网卡IP进行设置。
如：`"datachainConf":"172.16.10.1:2401"`。
3.如果是在同一dockercompose.yml下启动，可以使用：
`"datachainConf":"bdledger:2401"`进行配置。