Skip to main content
The malisper/pgrust:v0.2 Docker image is a drop-in replacement for the official postgres image. It accepts the same environment variables, exposes the same port, and stores data in the same default location - so you can swap it into any existing Docker or Docker Compose setup by changing a single line. The image is multi-arch and supports both amd64 (x86-64) and arm64 (Apple Silicon, AWS Graviton) without any additional configuration.

Quick Start

Start a Pgrust container with a single command:
Pgrust is now listening on localhost:5432. Connect immediately with psql or any PostgreSQL client.

Environment Variables

malisper/pgrust recognizes the same environment variables as the official postgres image. No new variables to learn.
Setting POSTGRES_HOST_AUTH_METHOD=trust disables password authentication entirely. Do not use trust in any environment where the port is reachable by untrusted users.

Docker Compose

Drop Pgrust into a Compose stack the same way you would use the official postgres image:
Start the stack:
Check that the container is healthy:

Connecting to the Container

Use any standard PostgreSQL client or driver. The connection details match whatever you configured in the environment variables.
Or using a connection URL:
Because Pgrust is 100% wire-compatible with PostgreSQL 18.3, every standard client works: psql, pgAdmin, TablePlus, DBeaver, DataGrip, and all language drivers (psycopg2, node-postgres, pgx, sqlx, JDBC, and more).

Multi-Arch Support

The malisper/pgrust:v0.2 image is a multi-platform manifest that includes: Docker automatically pulls the correct variant for your host. No --platform flag is needed.

Limitations

PostgreSQL extensions (.so files) are not supported. Pgrust does not yet have a stable extension ABI, so existing compiled extensions cannot be loaded. Built-in functionality — including the bundled pgrcolumnar columnar storage engine — works normally. Pure-SQL extensions that do not rely on a shared library may work, but are not officially tested.
Pgrust v0.2 is not yet production-ready. Do not use this image to store data you cannot afford to lose. It is intended for evaluation, benchmarking, and development.