Deploy a Marketplace

Prerequisites

  • A server for hosting Ocean Marketplace. See this guide on creating a server.

  • Obtain API key for wanted network. See this guide for this.

Push your customized Ocean Market code to your Git repository

In case you customized the Ocean Market using the tutorial from this chapter (link), push your code to a Git repository.

Create a directory

mkdir my-marketplace
cd my-marketplace

Create a file with the name `.env`

If you already created the .env file as instructed in ...(link to customize the market chapter), you can skip this step, otherwise copy the below content into the `.env` file.

.env
# Update this value if your Market should use custom Aquarius 
NEXT_PUBLIC_METADATACACHE_URI=https://v4.aquarius.oceanprotocol.com

# Provide INFURA project ID from the obtained API key for NEXT_PUBLIC_INFURA_PROJECT_ID
#NEXT_PUBLIC_INFURA_PROJECT_ID="xxx" 
#NEXT_PUBLIC_MARKET_FEE_ADDRESS="0xxx"
#NEXT_PUBLIC_PUBLISHER_MARKET_ORDER_FEE="1"
#NEXT_PUBLIC_CONSUME_MARKET_ORDER_FEE="1"
#NEXT_PUBLIC_CONSUME_MARKET_FIXED_SWAP_FEE="1"

#
# ADVANCED SETTINGS
#

# Toggle pricing options presented during price creation
#NEXT_PUBLIC_ALLOW_FIXED_PRICING="true"
#NEXT_PUBLIC_ALLOW_FREE_PRICING="true"

# Privacy Preference Center
#NEXT_PUBLIC_PRIVACY_PREFERENCE_CENTER="true"

Create a `Dockerfile` file and copy the below content into it.

In the following Dockerfile, replace <YOUR_GIT_REPO_URL> with the url of your Ocean Market fork repository or use "https://github.com/oceanprotocol/market.git" if you want to deploy the standard image of Ocean Market.

Dockerfile
FROM node:16
RUN git clone <YOUR_GIT_REPO_URL> /usr/app/market
WORKDIR /usr/app/market
RUN npm ci --legacy-peer-deps
RUN npm run build
EXPOSE 3000
CMD ["npx", "next", "start"]

Build a docker image

docker build . -f Dockerfile -t market:latest

Start the marketplace

docker start market

Last updated

Logo

Copyright 2024 Ocean Protocol Foundation Ltd.