add graph & split elastic

This commit is contained in:
alexcos20 2021-04-09 02:44:50 -07:00
parent 9bc446bd89
commit ee45276650
5 changed files with 91 additions and 17 deletions

View File

@ -9,7 +9,7 @@
- [Prerequisites](#prerequisites)
- [Get Started](#get-started)
- [Options](#options)
- [Component Versions](#component-versions)
- [Component Versions](#component-versions-and-exposed-ports)
- [All Options](#all-options)
- [Docker Building Blocks](#docker-building-blocks)
- [Aquarius](#aquarius)
@ -55,13 +55,22 @@ This will run the current default versions of [Aquarius](https://github.com/ocea
The startup script comes with a set of options for customizing various things.
### Component Versions
### Component Versions and exposed ports
The default versions are always a combination of component versions which are considered stable.
| Aquarius | Provider | Ganache | ocean-contracts |
| -------- | -------- | -------- | --------------- |
| `v2.2.7` | `v0.4.9` | `latest` | `V0.5.9`
| Component name | Required by | Version | IP Address | Ports exposed |
| -------------- | ------------------ | --------------------------------- | --------------- | ------------- |
| ganache | ocean-contracts | latest | 172.15.0.3 | 8545 -> 8545 |
| ocean-contracts | | v0.5.9 | 172.15.0.14 | |
| Aquarius | | v2.2.8 | 172.15.0.5 | 5000 -> 5000 |
| Elasticsearch | Aquarius | 6.8.3 | 172.15.0.6 | |
| Provider | | v0.4.9 | 172.15.0.4 | 8030 -> 8030 |
| Provider2 | | v0.4.9 | 172.15.0.7 | 8030 -> 8030 |
| GraphNode | | oceanprotocol/graph-node:latest | 172.15.0.15 | 9000 -> 8000 ,9001 -> 8001 , 9020 -> 8020, 9030 -> 8030, 9040 -> 8040 |
| Graphipfs | | ipfs/go-ipfs:v0.4.23 | 172.15.0.16 | 5001 -> 5001 |
| Graphpgsql | | postgres | 172.15.0.7 | 5432 -> 5432 |
You can override the Docker image tag used for a particular component by setting its associated environment variable before calling `start_ocean.sh`:
@ -81,10 +90,12 @@ export AQUARIUS_VERSION=v2.0.0
| Option | Description |
| -------------------------- | ----------------------------------------------------------------------------------------------- |
| `--no-aquarius` | Start up Ocean without the `aquarius` Building Block. |
| `--no-elasticseach` | Start up Ocean without the `elasticsearch` Building Block. |
| `--no-provider` | Start up Ocean without the `provider` Building Block. |
| `--with-provider2` | Runs a 2nd provider, on port 8031. This is required for ocean.js/ocean.py integration tests. 2nd Provider will use the same image and parameters (log_level, ipfs gateway, compute gateway, etc) as provider1, but has a different private key |
| `--no-ganache` | Start up Ocean without the `ganache` Building Block. |
| `--no-dashboard` | Start up Ocean without the `dashboard` Building Block. |
| `--with-thegraph` | Start up Ocean with graphnode, ipfs & postgresql |
| `--skip-deploy` | Start up Ocean without deploying the contracts. Useful when ethereum node already has contracts.|
| `--force-pull` | Force pulling the latest revision of the used Docker images. |
| `--purge` | Removes the Docker containers, volumes, artifact folder and networks used by the script. |

View File

@ -1,17 +1,7 @@
version: '3'
services:
elasticsearch:
image: elasticsearch:6.8.3
networks:
backend:
ipv4_address: 172.15.0.6
environment:
ES_JAVA_OPTS: "-Xms512m -Xmx512m"
MAX_MAP_COUNT: "64000"
discovery.type: "single-node"
aquarius:
image: oceanprotocol/aquarius:${AQUARIUS_VERSION:-latest}
image: myaquarius
ports:
- 5000:5000
networks:

View File

@ -0,0 +1,11 @@
version: '3'
services:
elasticsearch:
image: elasticsearch:6.8.3
networks:
backend:
ipv4_address: 172.15.0.6
environment:
ES_JAVA_OPTS: "-Xms512m -Xmx512m"
MAX_MAP_COUNT: "64000"
discovery.type: "single-node"

View File

@ -0,0 +1,52 @@
version: '3'
services:
graph-node:
image: oceanprotocol/graph-node:latest
ports:
- '9000:8000'
- '9001:8001'
- '9020:8020'
- '9030:8030'
- '9040:8040'
networks:
backend:
ipv4_address: 172.15.0.15
depends_on:
- ipfs
- postgres
- ocean-contracts
environment:
postgres_host: 172.15.0.17
postgres_user: graph-node
postgres_pass: let-me-in
postgres_db: graph-node
ipfs: '172.15.0.16:5001'
ethereum: 'barge:${NETWORK_RPC_URL}'
RUST_LOG: info
ipfs:
image: ipfs/go-ipfs:v0.4.23
ports:
- '5001:5001'
networks:
backend:
ipv4_address: 172.15.0.16
volumes:
- graphipfs:/data/ipfs
postgres:
image: postgres
ports:
- '5432:5432'
networks:
backend:
ipv4_address: 172.15.0.17
command: ['postgres', '-cshared_preload_libraries=pg_stat_statements']
environment:
POSTGRES_USER: graph-node
POSTGRES_PASSWORD: let-me-in
POSTGRES_DB: graph-node
volumes:
- graphpgsql:/var/lib/postgresql/data
volumes:
graphipfs:
graphpgsql:

View File

@ -28,7 +28,7 @@ COMPOSE_DIR="${DIR}/compose-files"
# Default versions of Aquarius, Provider
export AQUARIUS_VERSION=${AQUARIUS_VERSION:-v2.2.7}
export AQUARIUS_VERSION=${AQUARIUS_VERSION:-v2.2.8}
export PROVIDER_VERSION=${PROVIDER_VERSION:-v0.4.9}
export CONTRACTS_VERSION=${CONTRACTS_VERSION:-v0.5.9}
export PROJECT_NAME="ocean"
@ -159,6 +159,7 @@ COMPOSE_FILES=""
COMPOSE_FILES+=" -f ${COMPOSE_DIR}/network_volumes.yml"
COMPOSE_FILES+=" -f ${COMPOSE_DIR}/dashboard.yml"
COMPOSE_FILES+=" -f ${COMPOSE_DIR}/aquarius.yml"
COMPOSE_FILES+=" -f ${COMPOSE_DIR}/elasticsearch.yml"
COMPOSE_FILES+=" -f ${COMPOSE_DIR}/provider.yml"
COMPOSE_FILES+=" -f ${COMPOSE_DIR}/ganache.yml"
COMPOSE_FILES+=" -f ${COMPOSE_DIR}/ocean_contracts.yml"
@ -191,6 +192,10 @@ while :; do
COMPOSE_FILES+=" -f ${COMPOSE_DIR}/provider2.yml"
printf $COLOR_Y'Starting with a 2nd Provider...\n\n'$COLOR_RESET
;;
--with-thegraph)
COMPOSE_FILES+=" -f ${COMPOSE_DIR}/thegraph.yml"
printf $COLOR_Y'Starting with TheGraph...\n\n'$COLOR_RESET
;;
--no-ganache)
COMPOSE_FILES="${COMPOSE_FILES/ -f ${COMPOSE_DIR}\/ganache.yml/}"
COMPOSE_FILES="${COMPOSE_FILES/ -f ${COMPOSE_DIR}\/ocean_contracts.yml/}"
@ -200,6 +205,11 @@ while :; do
COMPOSE_FILES="${COMPOSE_FILES/ -f ${COMPOSE_DIR}\/aquarius.yml/}"
printf $COLOR_Y'Starting without Aquarius...\n\n'$COLOR_RESET
;;
--no-elasticsearch)
COMPOSE_FILES="${COMPOSE_FILES/ -f ${COMPOSE_DIR}\/elasticsearch.yml/}"
printf $COLOR_Y'Starting without Elastic search...\n\n'$COLOR_RESET
;;
--no-dashboard)
COMPOSE_FILES="${COMPOSE_FILES/ -f ${COMPOSE_DIR}\/dashboard.yml/}"
printf $COLOR_Y'Starting without Dashboard ...\n\n'$COLOR_RESET