64 lines
1.9 KiB
Markdown
64 lines
1.9 KiB
Markdown
Ethereum Network Intelligence API
|
|
============
|
|
[![Build Status][travis-image]][travis-url] [![dependency status][dep-image]][dep-url]
|
|
|
|
This is the backend service which runs along with the node for tracking the ethereum network status, fetches information through the JSON-RPC and connects through WebSockets to [eth-netstats](https://github.com/cubedro/eth-netstats) and feed information constantly.
|
|
|
|
## Prerequisite
|
|
* cpp-ethereum
|
|
* node
|
|
* npm
|
|
|
|
|
|
## Installation on Ubuntu
|
|
|
|
Fetch and run the build shell. This will install everything you need: latest cpp-ethereum - CLI (develop branch), node.js, npm, pm2.
|
|
|
|
```
|
|
curl https://raw.githubusercontent.com/cubedro/eth-net-intelligence-api/master/bin/build.sh | sh
|
|
```
|
|
|
|
## Configuration
|
|
|
|
Configure the app modifying [processes.json](/eth-net-intelligence-api/blob/master/processes.json). Note that you have to modify the backup processes.json file located in `./bin/processes.json` (to allow you to set your env vars without being rewritten when updating).
|
|
|
|
```
|
|
"env":
|
|
{
|
|
"NODE_ENV" : "production", // tell the client we're in production environment
|
|
"RPC_HOST" : "localhost", // eth JSON-RPC host
|
|
"RPC_PORT" : "8080", // eth JSON-RPC port
|
|
"ETH_IMPLEMENTATION" : "cpp", // eth implementation: "cpp" or "go"
|
|
"INSTANCE_NAME" : "",
|
|
"WS_SERVER" : "", // path to eth-netstats WebSockets api server
|
|
"WS_SECRET" : "", // WebSockets api server secret used for login
|
|
}
|
|
```
|
|
|
|
## Run
|
|
|
|
Run it using pm2:
|
|
|
|
```
|
|
cd ~/bin
|
|
pm2 start processes.json
|
|
```
|
|
|
|
## Updating
|
|
|
|
To update the API client use the following commands:
|
|
|
|
```
|
|
pm2 kill
|
|
cd ~/bin/www
|
|
git pull
|
|
sudo npm update
|
|
sudo npm install
|
|
cd ..
|
|
pm2 start processes.json
|
|
```
|
|
|
|
[travis-image]: https://travis-ci.org/cubedro/eth-net-intelligence-api.svg
|
|
[travis-url]: https://travis-ci.org/cubedro/eth-net-intelligence-api
|
|
[dep-image]: https://david-dm.org/cubedro/eth-net-intelligence-api.svg
|
|
[dep-url]: https://david-dm.org/cubedro/eth-net-intelligence-api |