--- title: Minikube Compute-to-Data Environment description: --- ## Requirements - functioning internet-accessable provider service - machine capable of running compute (e.g. we used a machine with 8 CPUs, 16 GB Ram, 100GB SSD and fast internet connection) - Ubuntu 20.04 ## Install Docker and Git ```bash sudo apt update sudo apt install git docker.io sudo usermod -aG docker $USER && newgrp docker ``` ## Install Minikube ```bash wget -q --show-progress https://github.com/kubernetes/minikube/releases/download/v1.22.0/minikube_1.22.0-0_amd64.deb sudo dpkg -i minikube_1.22.0-0_amd64.deb ``` ## Download and Configure Operator Service ```bash git clone https://github.com/oceanprotocol/operator-service.git ``` Edit `operator-service/kubernetes/postgres-configmap.yaml`. Change `POSTGRES_PASSWORD` to nice long random password. Edit `operator-service/kubernetes/deployment.yaml`. Optionally change: - `ALGO_POD_TIMEOUT` - add `requests_cpu` - add `requests_memory` - add `limits_cpu` - add `limits_memory` ```yaml ... spec: containers: - env: - name: requests_cpu value: "4" - name: requests_memory value: "8Gi" - name: limits_cpu value: "8" - name: limits_memory value: "15Gi" - name: ALGO_POD_TIMEOUT value: "3600" ... ``` ## Download and Configure Operator Engine ```bash git clone https://github.com/oceanprotocol/operator-engine.git ``` Check the [README](https://github.com/oceanprotocol/operator-engine#customize-your-operator-engine-deployment) section of operator engine to customize your deployment. At a minimum you should add your IPFS URLs or AWS settings, and add (or remove) notification URLs. ## Install kubectl ```bash curl -LO "https://dl.k8s.io/release/$(curl -L -s https://dl.k8s.io/release/stable.txt)/bin/linux/amd64/kubectl" curl -LO "https://dl.k8s.io/$(curl -L -s https://dl.k8s.io/release/stable.txt)/bin/linux/amd64/kubectl.sha256" echo "$(