diff --git a/SUMMARY.md b/SUMMARY.md index 23279e4a..e328d2cc 100644 --- a/SUMMARY.md +++ b/SUMMARY.md @@ -34,6 +34,7 @@ * [Deploying components](building-with-ocean/deploying-components/README.md) * [Deploying Marketplace](building-with-ocean/deploying-components/deploying-marketplace.md) * [Deploying Aquarius](building-with-ocean/deploying-components/deploying-aquarius.md) + * [Deploying Provider](building-with-ocean/deploying-components/deploying-provider.md) * [Projects using Ocean Protocol](building-with-ocean/projects-using-ocean.md) * [Using Ocean Market](using-ocean-market/README.md) * [Publish a data asset](using-ocean-market/marketplace-publish-data-asset.md) diff --git a/building-with-ocean/deploying-components/deploying-provider.md b/building-with-ocean/deploying-components/deploying-provider.md new file mode 100644 index 00000000..8690a030 --- /dev/null +++ b/building-with-ocean/deploying-components/deploying-provider.md @@ -0,0 +1,77 @@ +# Deploying Provider + +### About Provider + +### Prerequisites + +* Docker and Docker compose are installed. Click [here](https://docs.docker.com/engine/install/) to view guide on installing docker. +* Ethereum API. + See [this](../obtaining-api-key.md) guide on obtaining api key. + +### Create a working directory + +``` +mkdir Provider +cd Provider +``` + +### Create a \`.env\` file + +Copy the below content into the \`.env\` file and edit the values as needed. + + +{% code title=".env" %} +``` +# Mandatory variables + +# Update the value to the appropriate tag from here: https://hub.docker.com/r/oceanprotocol/provider-py/tags +PROVIDER_VERSION=latest +PROVIDER_PRIVATE_KEY= +NETWORK_URL= +AQUARIUS_URL= +``` +{% endcode %} + +### Create docker-compose file + +{% code title="docker-compose.provider.yml" %} +```yaml +version: '3' +services: + provider: + image: oceanprotocol/provider-py:v1.0.20 + container_name: provider + ports: + - 8030:8030 + networks: + - ocean_backend + environment: + NETWORK_URL: ${NETWORK_URL} + PROVIDER_PRIVATE_KEY: ${PROVIDER_PRIVATE_KEY} + LOG_LEVEL: DEBUG + OCEAN_PROVIDER_URL: "http://0.0.0.0:8030" + OCEAN_PROVIDER_WORKERS: "1" + OCEAN_PROVIDER_TIMEOUT: "9000" + # Defining OPERATOR_SERVICE_URL is optional. Set the value only if Provider should support Compute-to-data. + OPERATOR_SERVICE_URL: "" + # Defining IPFS_GATEWAY is optional. Set the value if Provider should support resolving IPFS urls. + IPFS_GATEWAY: "" + AQUARIUS_URL: ${AQUARIUS_URL} +volumes: + data: + driver: local +networks: + ocean_backend: + driver: bridge +``` +{% endcode %} + +### Start Provider + +``` +docker-compose \ +-f docker-compose.provider.yml +--env-file .env \ +-d \ +up +``` \ No newline at end of file