TestingOpsDocumentation

External PostgreSQL

Use your own PostgreSQL instead of the bundled one

The kit bundles PostgreSQL 17 with the pgvector extension. To use your own server:

  1. PostgreSQL 15 or newer with the vector extension available (CREATE EXTENSION vector; must succeed — the knowledge graph depends on it).
  2. Create a database and a user that owns it.
  3. In .env, set DATABASE_URL and leave TESTINGOPS_DB_* empty:
DATABASE_URL=postgres://testingops:secret@db.company.local:5432/testingops?sslmode=require
  1. ./install.sh — with DATABASE_URL set the bundled database is not started (docker compose runs without the bundled-db profile) and migrations run against your server.

Backups: backup.sh cannot dump an external database from inside the kit; schedule pg_dump -Fc on your database server and keep it together with the application data backup.

Managed services that work: Amazon RDS / Aurora PostgreSQL, Azure Database for PostgreSQL, Google Cloud SQL — all offer pgvector. Connection pooling in transaction mode (PgBouncer) is not supported for the migration step; point DATABASE_URL at the server directly.