diff --git a/SUMMARY.md b/SUMMARY.md index 23279e4a..13dfdd06 100644 --- a/SUMMARY.md +++ b/SUMMARY.md @@ -32,6 +32,7 @@ * [Writing Algorithms for Compute to Data](building-with-ocean/compute-to-data/compute-to-data-algorithms.md) * [Setting up private docker registry](building-with-ocean/compute-to-data/compute-to-data-docker-registry.md) * [Deploying components](building-with-ocean/deploying-components/README.md) + * [Setup server](building-with-ocean/deploying-components/setup-server.md) * [Deploying Marketplace](building-with-ocean/deploying-components/deploying-marketplace.md) * [Deploying Aquarius](building-with-ocean/deploying-components/deploying-aquarius.md) * [Projects using Ocean Protocol](building-with-ocean/projects-using-ocean.md) diff --git a/building-with-ocean/deploying-components/deploying-aquarius.md b/building-with-ocean/deploying-components/deploying-aquarius.md index d1c1c9db..f9d32654 100644 --- a/building-with-ocean/deploying-components/deploying-aquarius.md +++ b/building-with-ocean/deploying-components/deploying-aquarius.md @@ -10,6 +10,7 @@ Aquarius consists of two parts:\ ### Prerequisites +* A server for hosting Aquarius. See [this guide](setup-server.md) on creating a server. * Docker and Docker compose are installed. Click [here](https://docs.docker.com/engine/install/) to view guide on installing docker. * Ethereum API. Aquarius uses Ethereum api for monitoring on-chain events.\ Choose any api provider of your choice. Some of the commonly used are: @@ -205,57 +206,3 @@ up ``` After pulling all the asset metadata from the blockchain, Aquarius can be used to query the assets using Elasticsearch query. Aquarius REST API are documented here. - -## **Using hosting services** - -Aquarius can be hosted on any infrastructure providers like AWS, Azure, Heroku, Digitalocean, and many others. The tutorial here explains how to create a server using Digitalocean and running the required commands to host Aquarius. Apart from steps for create a server, the remaining part of the tutorial will be same for all hosting providers. - -#### Creating account and setting billing - -Go to [https://www.digitalocean.com/](https://www.digitalocean.com/) and create an account. Provide the appropriate information for billing and accounting. - -#### Create a droplet - -Click on **`Create`** button and choose **`Droplets`** options from dropdown. - -![](../../.gitbook/assets/image.png) - -#### Configure droplet - -Select Ubuntu OS and choose a plan. The required CPU, Memory depends on the number of requests Aquarius is expected to serve. - -![Configure droplet](<../../.gitbook/assets/image (8).png>) - -Also, select the region where you want Aquarius to be hosted and a root password. - -![](<../../.gitbook/assets/image (4).png>) - -![Click Create Droplet](<../../.gitbook/assets/image (7).png>) - -Finalize the parameters for the server, click on `Create Droplet.` After the server is ready, s`e`lect the Access console option from the dropdown. - -![Click Access Console](<../../.gitbook/assets/image (3).png>) - -![Click Launch Droplet Console](<../../.gitbook/assets/image (9).png>) - -A window will open with a terminal session. Now, the required infrastructure is ready for hosting Aquarius. Let's install docker and docker-compose on the server. Follow the installation guide [here](https://docs.docker.com/engine/install/ubuntu/). - -The below commands shows the commands executed by following the guide. - -```bash -sudo apt-get update -sudo apt-get install ca-certificates curl gnupg lsb-release -sudo mkdir -p /etc/apt/keyrings -curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg -echo \ - "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu \ - $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null -sudo apt-get update -sudo apt-get install docker-ce docker-ce-cli containerd.io docker-compose-plugin - -# Now install docker-compose -sudo apt-get update -sudo apt-get install docker-compose-plugin -``` - -Now that, the server is ready with all the required dependencies follow the steps from[ creating a working directory](deploying-aquarius.md#create-a-working-directory) to[ Start Aquarius](deploying-aquarius.md#start-aquarius). diff --git a/building-with-ocean/deploying-components/deploying-marketplace.md b/building-with-ocean/deploying-components/deploying-marketplace.md index 27c57e75..9b8a3244 100644 --- a/building-with-ocean/deploying-components/deploying-marketplace.md +++ b/building-with-ocean/deploying-components/deploying-marketplace.md @@ -2,9 +2,9 @@ ### Prerequisites -* Docker and Docker compose are installed +* A server for hosting Aquarius. See [this guide](setup-server.md) on creating a server. -### Create a directory +#### Create a directory ``` mkdir my-marketplace @@ -15,18 +15,14 @@ cd my-marketplace Copy the below content into the \`.env\` file. -TODO: explain ALLOWED\_PUBLISHERS and EVENTS\_RPC - {% code title=".env" %} ``` DB_USERNAME=username DB_PASSWORD=password -# check the available versions: https://hub.docker.com/repository/docker/oceanprotocol/aquarius +Build a Marketplace container ``` {% endcode %} -### Build a Marketplace container - #### Create a \`Dockerfile\` file and copy the below content into it. {% code title="Dockerfile" %} diff --git a/building-with-ocean/deploying-components/setup-server.md b/building-with-ocean/deploying-components/setup-server.md new file mode 100644 index 00000000..7f98bd9a --- /dev/null +++ b/building-with-ocean/deploying-components/setup-server.md @@ -0,0 +1,65 @@ +--- +description: >- + The following tutorial shows how to create a server ready for hosting Ocean + Protocol's components. +--- + +# Setup server + +## **Using hosting services** + +Ocean Protocol's components can be hosted on any infrastructure providers like AWS, Azure, Heroku, Digitalocean, and many others. The tutorial here explains how to create a server using Digitalocean and installing docker which will be required to host Ocean Protocol's components. Apart from steps for create a server, the remaining part of the tutorial will be same for all hosting providers. + +#### Creating account and setting billing + +Go to [https://www.digitalocean.com/](https://www.digitalocean.com/) and create an account. Provide the appropriate information for billing and accounting. + +#### Create a droplet + +Click on **`Create`** button and choose **`Droplets`** options from dropdown. + +![](../../.gitbook/assets/image.png) + +#### Configure droplet + +Select Ubuntu OS and choose a plan. The required CPU, Memory depends on the number of requests Aquarius is expected to serve. + +![Configure droplet](<../../.gitbook/assets/image (8).png>) + +Also, select the region where you want Aquarius to be hosted and a root password. + +![](<../../.gitbook/assets/image (4).png>) + +![Click Create Droplet](<../../.gitbook/assets/image (7).png>) + +Finalize the parameters for the server, click on `Create Droplet.` After the server is ready, s`e`lect the Access console option from the dropdown. + +![Click Access Console](<../../.gitbook/assets/image (3).png>) + +![Click Launch Droplet Console](<../../.gitbook/assets/image (9).png>) + +A window will open with a terminal session. Now, the required infrastructure is ready for hosting Aquarius. Let's install docker and docker-compose on the server. Follow the installation guide [here](https://docs.docker.com/engine/install/ubuntu/). + +The below commands shows the commands executed by following the guide. + +```bash +sudo apt-get update +sudo apt-get install ca-certificates curl gnupg lsb-release +sudo mkdir -p /etc/apt/keyrings +curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg +echo \ + "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu \ + $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null +sudo apt-get update +sudo apt-get install docker-ce docker-ce-cli containerd.io docker-compose-plugin + +# Now install docker-compose +sudo apt-get update +sudo apt-get install docker-compose-plugin +``` + +Now that, the server is ready with all the required dependencies are installed for hosting Ocean Components, follow the instructions given in Component specific guide. + +* [Deploying Marketplace](deploying-marketplace.md) +* [ Deploying Aquarius ](deploying-aquarius.md) +