From 5b651488b081b65fda8a323f228e139adb79a35d Mon Sep 17 00:00:00 2001 From: Chia Date: Tue, 4 Aug 2026 19:58:52 +1200 Subject: Build AI gateway control plane and admin UI --- docker-compose.yml | 47 +++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 47 insertions(+) create mode 100644 docker-compose.yml (limited to 'docker-compose.yml') diff --git a/docker-compose.yml b/docker-compose.yml new file mode 100644 index 0000000..9e74612 --- /dev/null +++ b/docker-compose.yml @@ -0,0 +1,47 @@ +services: + postgres: + image: postgres:16-alpine + environment: + POSTGRES_USER: aigw + POSTGRES_PASSWORD: aigw + POSTGRES_DB: aigw + ports: + - "127.0.0.1:5432:5432" + volumes: + - aigw-postgres:/var/lib/postgresql/data + healthcheck: + test: ["CMD-SHELL", "pg_isready -U aigw -d aigw"] + interval: 5s + timeout: 3s + retries: 20 + + redis: + image: redis:7-alpine + ports: + - "127.0.0.1:6379:6379" + volumes: + - aigw-redis:/data + healthcheck: + test: ["CMD", "redis-cli", "ping"] + interval: 5s + timeout: 3s + retries: 20 + + aigw: + build: . + depends_on: + postgres: + condition: service_healthy + ports: + - "127.0.0.1:8080:8080" + environment: + AIGW_DATABASE_URL: postgres://aigw:aigw@postgres:5432/aigw?sslmode=disable + AIGW_REDIS_URL: redis://redis:6379/0 + AIGW_CREDENTIAL_KEY: ${AIGW_CREDENTIAL_KEY:?set AIGW_CREDENTIAL_KEY} + AIGW_ADMIN_TOKEN: ${AIGW_ADMIN_TOKEN:?set AIGW_ADMIN_TOKEN} + volumes: + - ./config.control.example.json:/etc/aigw/config.json:ro + +volumes: + aigw-postgres: + aigw-redis: -- cgit v1.2.3