Skip to content

Repository files navigation

ScaleODM Logo

ScaleODM

Kubernetes-native orchestration for OpenDroneMap workloads, with a NodeODM-compatible API and S3-native task I/O.

Release Version

Security

Warning

ScaleODM does not provide authentication or authorization. Run it only on trusted private/internal networks. Do not expose the API directly to the public internet.

Quick start (Helm OCI)

This is the shortest path from zero to a running install on an existing Kubernetes cluster.

  1. Create namespace and required runtime secret:
kubectl create namespace scaleodm

kubectl create secret generic scaleodm-secrets \
  --namespace scaleodm \
  --from-literal=SCALEODM_DATABASE_URL="postgresql://user:pass@your-db:5432/scaleodm?sslmode=require" \
  --from-literal=AWS_S3_ENDPOINT="https://s3.amazonaws.com" \
  --from-literal=AWS_ACCESS_KEY_ID="YOUR_ACCESS_KEY" \
  --from-literal=AWS_SECRET_ACCESS_KEY="YOUR_SECRET_KEY" \
  --from-literal=AWS_DEFAULT_REGION="us-east-1"
  1. Install the chart:
helm upgrade --install scaleodm oci://ghcr.io/hotosm/charts/scaleodm \
  --namespace scaleodm \
  --create-namespace \
  --version <chart-version> \
  --set database.external.enabled=true \
  --set s3.external.enabled=true \
  --set secrets.runtime.name="scaleodm-secrets" \
  --set argo.enabled=true
  1. Verify API connectivity (adjust host/port for your service exposure):
curl http://localhost:31100/info

API smoke test

# 1) Node info
curl http://localhost:31100/info

# 2) Create task (images must already exist in S3)
curl -X POST http://localhost:31100/task/new \
  -F "name=my-project" \
  -F "readS3Path=s3://mybucket/images/" \
  -F "writeS3Path=s3://mybucket/images/output/" \
  -F 'options=[{"name":"fast-orthophoto","value":true}]'

# 3) Check task status
curl http://localhost:31100/task/{uuid}/info

Documentation index

Logo

The logo is a bit of a mashup between the Kubernete's ship wheel and OpenDroneMap's drone with rotors.

Elements of both were used, and the colour scheme changed.

If anyone has copyright concerns, please inform the author of the repo.

About

Kubernetes-native auto-scaling and load balancing for OpenDroneMap.

Resources

Stars

11 stars

Watchers

2 watching

Forks

Releases

Packages

Contributors

Languages