Sign inSign up

cubeplex/postgresql-pgroonga-pgvector

By cubeplex

Updated about 3 hours ago

PostgreSQL with PGroonga full-text search and pgvector

Image
Databases & storage
1

5.8K

cubeplex/postgresql-pgroonga-pgvector repository overview

postgresql-pgroonga-pgvector

PostgreSQL with PGroonga (full-text search) and pgvector (vector similarity) preinstalled.

Built from the official postgres image using Debian/PGDG extension packages. Multi-arch: linux/amd64, linux/arm64.

Source: github.com/cubeplexai/postgresql-pgroonga-pgvector

Also published on GHCR: ghcr.io/cubeplexai/postgresql-pgroonga-pgvector

From CubePlex
ProjectOne-linerLinks
CubePlexAI agent workspace for teams — collaborate with agents that use tools, sandboxes, and shared context.Website · GitHub
CubePiAsync-first Python agent kernel (inspired by Pi) for coding agents, tools, and continuous sessions.Website · GitHub

Quick start

docker run --rm -e POSTGRES_PASSWORD=postgres -p 5432:5432 \
  cubeplex/postgresql-pgroonga-pgvector:latest

Enable the extensions:

CREATE EXTENSION IF NOT EXISTS pgroonga;
CREATE EXTENSION IF NOT EXISTS vector;
Docker Compose
services:
  postgresql:
    image: cubeplex/postgresql-pgroonga-pgvector:latest
    ports:
      - "5432:5432"
    environment:
      POSTGRES_USER: postgres
      POSTGRES_PASSWORD: postgres
      POSTGRES_DB: postgres
    volumes:
      - pgdata:/var/lib/postgresql
    healthcheck:
      test: ["CMD-SHELL", "pg_isready -U postgres"]
      interval: 10s
      timeout: 5s
      retries: 5

volumes:
  pgdata:

Tags

TagMeaning
latestLatest build from main
18Postgres major
18.4Postgres patch version
18.4-pgroongaX.Y.Z-pgvectorA.B.CFull stack pin (package versions at build time)
sha-<short>Git commit
v*Git release tag (when present)

Recommended for production: pin the full composite tag, for example:

cubeplex/postgresql-pgroonga-pgvector:18.4-pgroonga4.0.8-pgvector0.8.6

What's included

ComponentSource
PostgreSQLOfficial postgres image
PGroongapostgresql-*-pgdg-pgroonga (Groonga apt)
pgvectorpostgresql-*-pgvector (PGDG)

Configuration and data layout match the official Postgres image (POSTGRES_* env vars, /var/lib/postgresql, entrypoint scripts).


Environment variables

Same as the official Postgres image:

VariableDescription
POSTGRES_PASSWORDSuperuser password (required unless trust auth)
POSTGRES_USERSuperuser name (default postgres)
POSTGRES_DBDefault database (default: same as user)
POSTGRES_INITDB_ARGSExtra initdb arguments
PGDATAData directory

Example: PGroonga + pgvector

CREATE EXTENSION IF NOT EXISTS pgroonga;
CREATE EXTENSION IF NOT EXISTS vector;

-- Full-text search
CREATE TABLE docs (
  id bigserial PRIMARY KEY,
  body text
);
CREATE INDEX docs_body_pgroonga ON docs USING pgroonga (body);

-- Vectors
CREATE TABLE items (
  id bigserial PRIMARY KEY,
  embedding vector(3)
);
CREATE INDEX items_embedding_ivfflat ON items
  USING ivfflat (embedding vector_l2_ops) WITH (lists = 100);

Build & CI

Images are built automatically from the GitHub repository on every push to main (and on tags), then pushed here and to GHCR.

To bump the Postgres base version, edit versions.env in the source repo and merge to main.


License

PostgreSQL and the packaged extensions retain their upstream licenses. See the source repository for details.

Tag summary

Content type

Image

Digest

sha256:0e908ca02

Size

181.5 MB

Last updated

about 3 hours ago

docker pull cubeplex/postgresql-pgroonga-pgvector