Skip to content

developmentseed/eoapi-k8s

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

eoapi-k8s

eoapi-k8s

Test License Artifact Hub

What is eoAPI?

eoAPI is a collection of REST APIs for Earth Observation data access and analysis. This repository provides a production-ready Kubernetes deployment solution with flexible database options, unified ingress configuration, and built-in monitoring.

Quick Start

Prerequisites

  • helm
  • A Kubernetes cluster (local or cloud-based)
  • kubectl configured for your cluster

Option 1: One-Command Installation

The fastest way to get started is using our Makefile commands:

For local development with Minikube:

make minikube

For cloud deployment:

make deploy

This will automatically:

  1. Install the PostgreSQL operator
  2. Add the eoAPI helm repository
  3. Install the eoAPI helm chart
  4. Set up necessary namespaces and configurations

Option 2: Step-by-Step Installation

If you prefer more control over the installation process:

  1. Install the PostgreSQL operator:
helm upgrade --install \
  --set disable_check_for_upgrades=true pgo \
  oci://registry.developers.crunchydata.com/crunchydata/pgo \
  --version 5.7.4
  1. Add the eoAPI helm repository:
helm repo add eoapi https://devseed.com/eoapi-k8s/
  1. Get your current git SHA:
export GITSHA=$(git rev-parse HEAD | cut -c1-10)
  1. Install eoAPI:
helm upgrade --install \
  --namespace eoapi \
  --create-namespace \
  --set gitSha=$GITSHA \
  eoapi devseed/eoapi

Post-Installation

  1. Enable ingress (for Minikube):
minikube addons enable ingress
  1. Optional: Load sample data:
make ingest

Cloud Provider Setup

For cloud-based deployments, refer to our detailed setup guides:

Documentation

Contributing

We welcome contributions! See our contributing guide for details.

License

This project is licensed under the MIT License.