ShieldGate Docs

Get started

Docker Compose quickstart

Bring up Postgres, Redis, Api, Proxy, and Worker with Compose.

Goal

Run the packaged stack under deploy/docker without installing PostgreSQL/Redis yourself.

Prerequisites

  • Docker Engine + Compose plugin.
  • Copy of the repository.

Steps

From deploy/docker:

cp .env.example .env
# Replace every change-me value in .env.
docker compose build
docker compose up -d
docker compose ps

Typical published ports:

  • API: http://localhost:8080
  • Proxy: http://localhost:8081

API startup applies EF migrations and seeds the admin when Seed__Enabled=true.

Plugins and GeoIP

  • Sample plugins ship in Api/Worker images; a plugins volume can hold extra DLLs.
  • Place GeoLite2-Country.mmdb and GeoLite2-ASN.mmdb in deploy/docker/geoip/ if you need geo rules.

Data-plane tenant

Set DATA_PLANE_TENANT_ID after you create a tenant and publish configuration.
DATA_PLANE_ALLOW_EMPTY_CONFIG=true keeps demo Proxy ready before the first snapshot—set false for production-like behavior.

Verify

curl http://localhost:8080/health
curl http://localhost:8081/health
curl http://localhost:8081/ready
docker compose logs -f shieldgate-api shieldgate-proxy shieldgate-worker

Stop or reset

docker compose down
# Destructive — also removes volumes:
docker compose down -v

Pitfalls

  • Never reuse example credentials outside local development.
  • HTTPS on the Proxy is off by default; enable only with certificates configured from the control plane.

Next

First login · deeper notes in Docker Compose deploy