From 434d4c22d0f5136c989b6aab05f8e83d4ba04f95 Mon Sep 17 00:00:00 2001 From: Matthias Kretschmann Date: Wed, 10 Oct 2018 12:53:16 +0200 Subject: [PATCH] document script options & environment variables --- README.md | 49 ++++++++++++++++++++++++++++++++++--------------- 1 file changed, 34 insertions(+), 15 deletions(-) diff --git a/README.md b/README.md index 527d54a..5770ca5 100644 --- a/README.md +++ b/README.md @@ -13,11 +13,13 @@ ## Table of Contents -* [Prerequisites](#prerequisites) -* [Get Started](#get-started) -* [Ocean Protocol components](#ocean-protocol-components) -* [Contributing](#contributing) -* [License](#license) + - [Prerequisites](#prerequisites) + - [Get Started](#get-started) + - [Script Options](#script-options) + - [Ocean Protocol components](#ocean-protocol-components) + - [Environment Variables](#environment-variables) + - [Contributing](#contributing) + - [License](#license) --- @@ -30,7 +32,7 @@ You need to have the newest versions available of both: ## Get Started -Then bring up an instance of the whole Ocean Protocol network stack with: +Then bring up an instance of the whole Ocean Protocol network stack with the `start_ocean.sh` script: ```bash git clone git@github.com:oceanprotocol/docker-images.git @@ -55,6 +57,16 @@ After getting everything running, you can open the **Pleuston Frontend** applica http://localhost:3000 ``` +### Script Options + +The script provides the following options: + +Option | Description +--- | --- +`--latest` | Get the `latest` versions of all components, referring to their `develop` branches. +`--no-pleuston` | Start up Ocean without an instance of `pleuston`. Helpful for development on `pleuston`. +`--local-parity-node` | Runs a local parity POA node instead of ganache-cli. + ## Ocean Protocol components The Ocean Docker compose starts the following components: @@ -65,21 +77,28 @@ The Ocean Docker compose starts the following components: ![Ocean Protocol Components](doc/img/ocean-components@2x.png) -### Options +### Environment Variables -The keeper-contracts component runs with ganache by default and every run will produce and deploy new instances of the keeper contracts. -Ganache can be run with a specific database path by setting the env var `REUSE_DATABASE` to "true". By default, the ganache database will be setup in the cwd. +The `start_ocean.sh` script sets defaults for the following environment variables but you can use these in combination with the Docker Compose files for further customization, e.g.: -The following env vars enable some customization: +```bash +export REUSE_DATABASE="true" +docker-compose --project-name=ocean -f docker-compose-no-pleuston.yml up +``` -* DEPLOY_CONTRACTS: skip deploying smart contracts by setting this to "false", in this case `REUSE_DATABASE` should be set to True in the previous run when using ganache -* KEEPER_NETWORK_NAME: set to one of "ganache" (default), "kovan", or "ocean_poa_net_local" -* ARTIFACTS_FOLDER: this is where the deployed smart contracts abi files will be available. This can be pointed at any path you like. When running a separate pleuston instance, it may be necessary to copy the abi files from this artifacts folder to the @oceanprotocol/keeper-contracts/artifacts folder in pleuston +Variable | Description +--- | --- +`REUSE_DATABASE` | The keeper-contracts component runs with ganache by default and every run will produce and deploy new instances of the keeper contracts. Ganache can be run with a specific database path by setting the env var `REUSE_DATABASE` to `"true"`. By default, the ganache database will be setup in the cwd. +`DEPLOY_CONTRACTS` | skip deploying smart contracts by setting this to `"false"`, in this case `REUSE_DATABASE` should be set to `"true"` in the previous run when using ganache +`KEEPER_NETWORK_NAME` | set to one of `"ganache"` (default), `"kovan"`, or `"ocean_poa_net_local"` +`ARTIFACTS_FOLDER` | this is where the deployed smart contracts abi files will be available. This can be pointed at any path you like. A subset of the components can be run by modifying the docker-compose file directly or by using one of the other pre-built compose files: -* `docker-compose-no-pleuston.yml` runs all components without the pleuston. This is useful for developing/debugging the front-end app. So first the docker compose container can be started then pleuston can be started separately from source. You can also use `./start_ocean.sh --no-pleuston` to do this -* `docker-compose-local-parity-node.yml` is similar to the above with no pleuston, but runs a local parity POA node instead of ganache-cli. You can also use `./start_ocean.sh --local-parity-node` instead +Compose file | Description +--- | --- +`docker-compose-no-pleuston.yml` | runs all components without the pleuston. This is useful for developing/debugging the front-end app. So first the docker compose container can be started then pleuston can be started separately from source. You can also use `./start_ocean.sh --no-pleuston` to do this +`docker-compose-local-parity-node.yml` | similar to the above with no pleuston, but runs a local parity POA node instead of ganache-cli. You can also use `./start_ocean.sh --local-parity-node` instead ## Contributing