From aed7ca68a09b9c9a8a7534bd6ee92016c8cf4f8d Mon Sep 17 00:00:00 2001 From: Troy McConaghy Date: Thu, 28 Feb 2019 12:18:53 +0100 Subject: [PATCH] Added the --squid-py-v0.4.2-compatible option and updated README.md accordingly --- README.md | 50 ++++++++++++++++++++-------------- Welcome_to_Ocean_Protocol.png | Bin 0 -> 40938 bytes start_ocean.sh | 10 ++++++- 3 files changed, 38 insertions(+), 22 deletions(-) create mode 100644 Welcome_to_Ocean_Protocol.png diff --git a/README.md b/README.md index b67a527..ebcca86 100644 --- a/README.md +++ b/README.md @@ -14,7 +14,7 @@ - [Prerequisites](#prerequisites) - [Get Started](#get-started) - - [Script Options](#script-options) + - [Script Options](#script-options) - [Docker Building Blocks](#docker-building-blocks) - [Pleuston](#pleuston) - [Aquarius](#aquarius) @@ -33,45 +33,49 @@ You need to have the newest versions of: * [Docker](https://www.docker.com/get-started) * [Docker Compose](https://docs.docker.com/compose/) -* Linux/MacOS. Currently Windows OS is not supported. - -**To run as a publisher:** `Brizo` configuration must be set with valid Azure account credentials. This is done in the file [`brizo.env`](./brizo.env). Follow our tutorial [Set up Azure Storage](https://docs.oceanprotocol.com/tutorials/azure-for-brizo/) to learn how to get those credentials. +* Linux or macOS. Currently Windows is not supported. +* If you want to use Azure Storage with Brizo (and you might not), then you must edit the file [`brizo.env`](./brizo.env) to have your Azure credentials. To learn how to get those credentials, see our tutorial to [Set up Azure Storage](https://docs.oceanprotocol.com/tutorials/azure-for-brizo/). ## Get Started -Bring up an instance of the whole Ocean Protocol network stack (connected to the Nile Testnet) with the `./start_ocean.sh` script: +It's overkill, but to be _sure_ that you use exactly the Docker images and volumes you want, you can start by pruning all the Docker things in your system: + +```bash +docker system prune --all --volumes +``` + +(An alternative would be to add the options `--purge` and `--force-pull` in your call to `./start_ocean.sh` below but that's not as sure as the above command.) + +If you're new to Barge, it's best to pin components (e.g. Aquarius, Brizo and Keeper Contracts) to a set of specific versions known to work with a specific version of squid-py, squid-js, etc. +For example, if you do: ```bash git clone git@github.com:oceanprotocol/barge.git cd barge - -./start_ocean.sh +./start_ocean.sh --squid-py-v0.4.2-compatible --no-pleuston --local-spree-node ``` -screen shot 2018-10-10 at 12 20 48 +then you'll freeze Aquarius, Brizo and Keeper Contracts at versions known to work with squid-py v0.4.2 (and Mantaray 0.4.0). The above command will also not run Pleuston (because squid-py users don't usually need to run Pleuston) and will run a local Spree node (explained more below). + +Welcome to Ocean Protocol --- -This will bring up the `stable` versions of all components, referring to their respective `master` branches. +If you want to use the latest versions of Aquarius, Brizo, Keeper Contracts and Pleuston (with the Docker image tag `latest`, based on the `develop` branches), then include `--latest` in the call to `start_ocean.sh`. You can pin one or all of the versions (to something other than `latest` by setting some environment variables explicitly (e.g. `KEEPER_VERSION=v0.6.12`). Read the `start_ocean.sh` code for details. -To get the `latest` versions of all components, referring to their `develop` branches, pass the argument `--latest`: +If you don't pin the versions of components (with an option like `--latest` or `--squid-py-v0.4.2-compatible`), then the default is to use the Docker images with Docker image tag `stable` (based on the `master` branches). You can pin one or all of the versions (to something other than `stable` by setting some environment variables explicitly (e.g. `KEEPER_VERSION=v0.6.12`). Read the `start_ocean.sh` code for details. -```bash -./start_ocean.sh --latest -``` +If you don't specify what kind of local node to run (e.g. using `--local-spree-node`) then the default is to run a local Nile node (i.e. `--local-nile-node`). -After getting everything running, you can open the **Pleuston Frontend** application in your browser: - -[http://localhost:3000](http://localhost:3000) - -### Script Options +## Script Options The `./start_ocean.sh` script provides the following options: Option | Description ----------------------------| ----------- -`--latest` | `latest` means to use the latest `develop` branches whereas `stable` means to use the last `stable` releases. -`--force-pull` | Force pulling the latest revision of the used docker images. +`--latest` | `latest` means to use the latest `develop` branches. +`--squid-py-v0.4.2-compatible` | Use versions of Aquarius, Brizo and Keeper Contracts known to be compatible with squid-py v0.4.2. +`--force-pull` | Force pulling the latest revision of the used Docker images. `--no-pleuston` | Start up Ocean without the `pleuston` Building Block. Helpful for development on `pleuston`. `--no-aquarius` | Start up Ocean without the `aquarius` Building Block. `--no-brizo` | Start up Ocean without the `brizo` Building Block. @@ -90,7 +94,11 @@ Ocean compose consists of a set of building blocks that can be combined to form ### Pleuston -By default it will start one container. This Building Block can be disabled by setting the `--no-pleuston` flag. +By default it will start one container. If Pleuston is running, you can open the **Pleuston Frontend** application in your browser: + +[http://localhost:3000](http://localhost:3000) + +This Building Block can be disabled by setting the `--no-pleuston` flag. Hostname | External Port | Internal Url | Local Url | Description -----------|---------------|-----------------------|-----------------------|-------------- diff --git a/Welcome_to_Ocean_Protocol.png b/Welcome_to_Ocean_Protocol.png new file mode 100644 index 0000000000000000000000000000000000000000..a4690f8238a22e6cd23883d102f7ff40c19e4d89 GIT binary patch literal 40938 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%0AA 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 z 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 G_}>9BzmdKG literal 0 HcmV?d00001 diff --git a/start_ocean.sh b/start_ocean.sh index 5292127..3e16d77 100755 --- a/start_ocean.sh +++ b/start_ocean.sh @@ -92,9 +92,17 @@ while :; do export PLEUSTON_VERSION=${PLEUSTON_VERSION:-latest} printf $COLOR_Y'Switched to latest components...\n\n'$COLOR_RESET ;; + --squid-py-v0.4.2-compatible) + export AQUARIUS_VERSION=v0.1.8 + export BRIZO_VERSION=v0.2.0 + export KEEPER_VERSION=v0.6.12 + printf $COLOR_Y'Using components compatible with squid-py v0.4.2:\n\n'$COLOR_RESET + printf $COLOR_Y'- Compatible with Mantaray v0.4.0\n\n'$COLOR_RESET + printf $COLOR_Y'- Not used with Pleuston: do --no-pleuston\n\n'$COLOR_RESET + ;; --force-pull) export FORCEPULL="true" - printf $COLOR_Y'Pulling latest components...\n\n'$COLOR_RESET + printf $COLOR_Y'Pulling the latest revision of the used Docker images...\n\n'$COLOR_RESET ;; ################################################# # Exclude switches