README.md 1.4 KB
Newer Older
Q
Quinton.Xu 已提交
1 2 3 4 5 6 7
# node-apollo

  携程Apollo配置中心node SDK.

## Install

```bash
Q
Quinton.Xu 已提交
8
$ npm i node-apollo --save-dev
Q
Quinton.Xu 已提交
9
```
Q
Quinton.Xu 已提交
10 11 12 13 14 15
Node.js >= 6.0.0 required.

## Features

- ✔︎ 适用eggjs, thinkjs等docker部署项目
- ✔︎ 适用自己手动搭建的服务,可直接读取JSON格式的配置
Q
Quinton.Xu 已提交
16 17 18

## Usage

Q
Quinton.Xu 已提交
19
* See [examples](https://github.com/Quinton/node-apollo/tree/master/example)
Q
Quinton.Xu 已提交
20

Q
Quinton.Xu 已提交
21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48
## remoteConfigService
```
  const config = {
      configServerUrl: 'http://example.com',
      appId: '<appId>',
      clusterName: 'default',
      namespaceName: '',
      apolloEnv: 'dev',
      token: '<apollo access token>'
      // clientIp: '',
    };
    const result = await apollo.remoteConfigService(config);
```
  >**NOTE:** 读取携程Apollo配置,调用第三方应用接入Apollo开放平台, 详情请参考[Apollo开放平台](https://github.com/ctripcorp/apollo/wiki/Apollo%E5%BC%80%E6%94%BE%E5%B9%B3%E5%8F%B0).
## createEnvFile
```
  const obj = {
      mongoose: 'mongo://127.0.0.1:27017',
      appId: '<appId>',
    };
  apollo.createEnvFile(eggConfig);
```
>**NOTE:** 生成环境变量文件,常用于docker化项目,详细请参考[example](https://github.com/Quinton/node-apollo/tree/master/example).
## setEnv
```
apollo.setEnv();
```
>**NOTE:** 注入环境变量到process.env, 详情亲参考[dotenv](https://github.com/motdotla/dotenv#usage).
Q
Quinton.Xu 已提交
49 50 51 52 53

## TODO
  
 - [] 支持局部配置热更新

Q
Quinton.Xu 已提交
54 55 56
## License

[MIT](LICENSE)