Skip to content
Wharfbase

PostgreSQL

PostgreSQL databases are found in containers by their image, and on the host by their process and config files (host scan).

Plan Community (every plan)
Default ports 5432
Also recognized TimescaleDB, PostGIS, pgvector, Supabase Postgres, ParadeDB, Bitnami PostgreSQL
Credential hints from POSTGRES_USER, POSTGRESQL_USERNAME, PGUSER, POSTGRES_PASSWORD, POSTGRESQL_PASSWORD, POSTGRESQL_POSTGRES_PASSWORD, POSTGRES_PASSWORD_FILE, POSTGRESQL_PASSWORD_FILE, POSTGRES_DB, POSTGRESQL_DATABASE, PGDATABASE
Data in the container /var/lib/postgresql/data, /var/lib/postgresql, /bitnami/postgresql, /home/postgres/pgdata
On the host (host scan) postgres, postmaster

Browse and edit tables, views and materialized views; the SQL editor with Explain (and Explain Analyze inside a rolled-back transaction); exports, CSV import, ER diagrams. Read-only connections run scripts in a READ ONLY transaction.

Wharfbase works with any user; give it only what you want it to do.

PostgreSQL 14 and later have predefined roles for this:

CREATE ROLE wharfbase_ro LOGIN PASSWORD '…';
GRANT CONNECT ON DATABASE app TO wharfbase_ro;
GRANT pg_read_all_data TO wharfbase_ro;

Before 14, grant per schema:

GRANT USAGE ON SCHEMA public TO wharfbase_ro;
GRANT SELECT ON ALL TABLES IN SCHEMA public TO wharfbase_ro;
ALTER DEFAULT PRIVILEGES IN SCHEMA public GRANT SELECT ON TABLES TO wharfbase_ro;
CREATE ROLE wharfbase_rw LOGIN PASSWORD '…';
GRANT CONNECT ON DATABASE app TO wharfbase_rw;
GRANT pg_read_all_data, pg_write_all_data TO wharfbase_rw;
  • Live consumers (who is connected): GRANT pg_read_all_stats TO wharfbase_ro;, or Wharfbase only sees its own sessions.
  • Backups (pg_dump -Fc): the read-only user above is enough.

Checked against PostgreSQL 17: the read-only role reads, its writes are refused, and pg_dump works.