Example — pgconfig¶
This example deploys GeoServer Cloud with the pgconfig catalog backend (PostgreSQL) and the standalone Spring profile (no Consul/Config Server — services discover each other via Kubernetes DNS). The Helm chart in this directory is a minimal wrapper that depends on the upstream camptocamp/helm-geoserver-cloud chart plus PostgreSQL and RabbitMQ.
New to Kubernetes?
Before starting, make sure you have a local cluster with an ingress controller and a gscloud.localhost DNS alias. See Prerequisites.
Files in this example¶
Chart.yaml— wrapper chart metadata and dependencies.values.yaml— values overlay for the bundled and upstream charts.templates/install-postgis-cm.yml— aConfigMapthat installs the PostGIS extension on first Postgres startup.
1. Pull chart dependencies¶
From this directory (docs/src/deploy/kubernetes/helm/):
This downloads three charts into ./charts/:
geoservercloud(the upstream GSC chart, pinned to3.0.0-rc).postgresqlandrabbitmqfromghcr.io/georchestra/bitnami-helm-charts— a mirror that still publishes free images.
Expected last lines:
Saving 3 charts
Downloading geoservercloud from repo https://camptocamp.github.io/helm-geoserver-cloud
Downloading rabbitmq from repo oci://ghcr.io/georchestra/bitnami-helm-charts
Downloading postgresql from repo oci://ghcr.io/georchestra/bitnami-helm-charts
Deleting outdated charts
2. Install the chart¶
Expected: STATUS: deployed. Warnings about hostIP set without hostPort are harmless (from the upstream chart) and can be ignored.
3. Wait for all pods to be ready¶
Then verify:
Expected: 10 pods, all Running with 1/1 under READY:
NAME READY STATUS RESTARTS AGE
gs-cloud-pgconfig-gsc-gateway-… 1/1 Running 0 1m
gs-cloud-pgconfig-gsc-gwc-… 1/1 Running 0 1m
gs-cloud-pgconfig-gsc-rest-… 1/1 Running 0 1m
gs-cloud-pgconfig-gsc-wcs-… 1/1 Running 0 1m
gs-cloud-pgconfig-gsc-webui-… 1/1 Running 0 1m
gs-cloud-pgconfig-gsc-wfs-… 1/1 Running 0 1m
gs-cloud-pgconfig-gsc-wms-… 1/1 Running 0 1m
gs-cloud-pgconfig-gsc-wps-… 1/1 Running 0 1m
gs-cloud-pgconfig-postgresql-0 1/1 Running 0 1m
gs-cloud-pgconfig-rabbitmq-0 1/1 Running 0 1m
4. Confirm the DNS alias¶
You should already have this from Prerequisites:
Expected: a line mapping gscloud.localhost to 127.0.0.1.
5. Tear down¶
To also remove the cluster, see the teardown step in Prerequisites.
Troubleshooting¶
RabbitMQ Connection refused in early logs
GeoServer Cloud services start in parallel with RabbitMQ. For the first ~30 seconds you'll see log lines like:
The services retry automatically. If the message persists after a minute, check that gs-cloud-pgconfig-rabbitmq-0 is 1/1 Running.