APIM OSS - DB-less
gravitee-io/oss/apim/dbless
Gravitee APIM gateway in DB-less mode with the Gravitee Kubernetes Operator
Deploys the Gravitee API Management gateway in DB-less mode alongside the Gravitee Kubernetes Operator (GKO). APIs are defined entirely through Kubernetes custom resources — no database is involved.
Install gck#
go install github.com/gravitee-io-labs/gck@latest
For other installation methods, see Installation .
Usage#
Create#
gck create --from gravitee-io/oss/apim/dbless
Cleanup#
gck delete
Quick Start#
The gateway is available at http://localhost:30082
.
Define APIs using GKO custom resources (ApiV4Definition, ApiDefinition):
kubectl apply -f my-api.yaml -n gravitee
For a guided introduction, see the Gravitee APIM quick start guide and the GKO documentation .
Composition chain
This context is composed from the following base contexts:
Endpoints
Services this context exposes on your machine after gck create, including the ones it inherits from the contexts it composes. Rows marked with a flag only exist when you pass it.
| Service | URL | Notes | From |
|---|---|---|---|
| APIM Gateway | http://localhost:30082 | gravitee-io/oss/apim/base | |
| APIM Bridge API | http://localhost:30085 | needs --enable-bridge | gravitee-io/oss/apim/base |
Context flags
Optional flags you can pass to gck create to customize this context:
| Flag | Description |
|---|---|
--disable-es | Disable Elasticsearch and analytics reporters |
--disable-portal | Disable the developer portal UI |
--disable-ui | Disable both Console and Portal UIs |
--enable-bridge | Enable bridge architecture: management API serves as bridge, gateway syncs through it |
--enable-consul | Deploy Consul and configure APIM service discovery |
--enable-distributed-sync | Deploy Redis and enable distributed sync with multiple gateway replicas |
--enable-gko | Deploy the Gravitee Kubernetes Operator (GKO) alongside APIM |
--enable-hc-vault | Deploy HashiCorp Vault and configure it as a secret provider |
--enable-keycloak | Deploy Keycloak and configure APIM OIDC security provider |
--enable-kibana | Deploy Kibana alongside Elasticsearch |
--enable-mailhog | Deploy MailHog and configure APIM email settings |
--enable-opentelemetry-jaeger | Deploy Jaeger and enable OpenTelemetry tracing on the gateway |
--enable-otel-collector | Export gateway OpenTelemetry traces to a composed otel-collector |
--enable-prometheus | Deploy Prometheus and enable APIM metrics |
--enable-redis | Deploy Redis and use it for gateway rate limiting |
--enable-system-proxy | Deploy mitmproxy and configure APIM HTTP client proxy |
--enable-tags | Configure gateway with sharding tags (internal/external) |
--enable-tcp | Add a TCP protocol listener on the gateway |
--enable-tls | Enable TLS termination on the gateway |
Variables
Template variables overridable with --set. Use --set path.segments.var=value to target a specific context in the composition chain.
| Variable | Default | Origin | Description |
|---|---|---|---|
clusterName | gravitee | gravitee-io/oss/apim/dbless | Name of the Kind cluster |
imagePrefix | graviteeio | gravitee-io/oss/apim/dbless | Docker image prefix for Gravitee components |
helmVersion | (empty) | gravitee-io/oss/apim/dbless | Helm chart version constraint |
imageTag | latest | gravitee-io/oss/apim/dbless | Docker image tag for the APIM gateway |
imageRepository | graviteeio/kubernetes-operator | gravitee-io/oss/gko | GKO Docker image repository |