Set Up a Compute-to-Data Environment


First, create a folder with the following structure:


Then you need the following parts:

Customize your Operator Service deployment

The following resources need attention:

postgres-configmap.yamlContains secrets for the PostgreSQL deployment.
deployment.yamlALGO_POD_TIMEOUTAllowed time for a algorithm to run. If it exceeded this value (in minutes), it’s going to get killed.

Customize your Operator Engine deployment

Check the README section of operator engine to customize your deployment

Storage class

For minikube, you can use the default ‘standard’ class.

For AWS, please make sure that your class allocates volumes in the same region and zone in which you are running your pods.

We created our own ‘standard’ class in AWS:

kubectl get storageclass standard -o yaml
- matchLabelExpressions:
    - key:
          - us-east-1a
kind: StorageClass
    fsType: ext4
    type: gp2
reclaimPolicy: Delete
volumeBindingMode: Immediate

For more information, please visit

Create namespaces

kubectl create ns ocean-operator
kubectl create ns ocean-compute

Deploy Operator Service

kubectl config set-context --current --namespace ocean-operator
kubectl create -f /ocean/operator-service/postgres-configmap.yaml
kubectl create -f /ocean/operator-service/postgres-storage.yaml
kubectl create -f /ocean/operator-service/postgres-deployment.yaml
kubectl create -f /ocean/operator-service/postgresql-service.yaml
kubectl apply -f /ocean/operator-service/deployment.yaml

Deploy Operator Engine

kubectl config set-context --current --namespace ocean-compute
kubectl apply -f /ocean/operator-engine/sa.yml
kubectl apply -f /ocean/operator-engine/binding.yml
kubectl apply -f /ocean/operator-engine/operator.yml
kubectl create -f /ocean/operator-service/postgres-configmap.yaml

Expose Operator Service

kubectl expose deployment operator-api --namespace=ocean-operator --port=8050

Run a port forward or create your ingress service (not covered here):

kubectl -n ocean-operator port-forward svc/operator-api 8050

Initialize database

If your cluster is running on

curl -X POST "" -H  "accept: application/json"

Update Barge for local testing

Update Barge’s Provider by adding or updating the OPERATOR_SERVICE_URL env in /ocean/barge/compose-files/provider.yaml


Restart Barge with updated provider configuration