Sign inSign up

epicmorg/postgres

By epicmorg

•Updated about 6 hours ago

PostgreSQL 8.2-18 from PGDG on Debian trixie; 10+ with ~90 extensions, TimescaleDB

Image
1

10K+

epicmorg/postgres repository overview

⁠epicmorg/postgres

PostgreSQL server images built from the official PGDG apt repository⁠ on our epicmorg/debian:trixie⁠ base. The entrypoint is the familiar one from the official postgres image, so the usual POSTGRES_* variables and /docker-entrypoint-initdb.d work the same way.

⁠What's inside

  • postgresql-<major> with contrib and server-dev from apt.postgresql.org (trixie-pgdg); binaries in /usr/lib/postgresql/<major>/bin (on PATH);
  • 10 ... 18 additionally ship a large extension set from PGDG (about 90 packages), among them PostGIS 3, pgRouting, pgvector, pg_cron, pg_partman, pg_repack, pglogical, wal2json, pgaudit, orafce, hypopg, pg_hint_plan, pg_stat_kcache, pg_qualstats, PoWA, mysql_fdw / oracle_fdw / tds_fdw, PL/R, PL/Lua, PL/Java, PL/Python3, PL/Perl, PL/Tcl, and EDB's system_stats⁠ built from source;
  • 15 ... 18 also include TimescaleDB 2⁠ (timescaledb-2-postgresql-<major>);
  • 8.2 ... 9.6 (museum majors) ship only the server, contrib, server-dev and client;
  • pgloader⁠ in every tag;
  • locale en_US.UTF-8 (LANG=en_US.utf8), listen_addresses='*' in the sample config;
  • PGDATA=/var/lib/postgresql/data (a VOLUME), port 5432, STOPSIGNAL SIGINT, tini as PID 1, healthcheck pg_isready.

Extensions are installed, not enabled: add them to shared_preload_libraries where required and run CREATE EXTENSION in your database.

⁠Tags

TagsDockerfile
8.28.2⁠
8.38.3⁠
8.48.4⁠
9.09.0⁠
9.19.1⁠
9.29.2⁠
9.39.3⁠
9.49.4⁠
9.59.5⁠
9.69.6⁠
1010⁠
1111⁠
1212⁠
1313⁠
1414⁠
1515⁠
1616⁠
1717⁠
18, latest18⁠

Every tag is pushed to docker.io, quay.io and ghcr.io (epicmorg/postgres:<tag> on each) - same digest everywhere.

⁠Usage

docker run -d --name postgres \
  -e POSTGRES_PASSWORD=secret \
  -v pgdata:/var/lib/postgresql/data \
  -p 5432:5432 \
  epicmorg/postgres:17

Environment variables handled by the entrypoint (same semantics as the official image, _FILE variants supported): POSTGRES_PASSWORD, POSTGRES_USER, POSTGRES_DB, POSTGRES_INITDB_ARGS, POSTGRES_INITDB_WALDIR, POSTGRES_HOST_AUTH_METHOD. Scripts (*.sh, *.sql, *.sql.gz, *.sql.xz) in /docker-entrypoint-initdb.d run on the first start with an empty data directory. See the official postgres image docs⁠ for details.

⁠Notes

Tag summary

Content type

Image

Digest

sha256:ea8aa51ba…

Size

1.8 GB

Last updated

about 6 hours ago

docker pull epicmorg/postgres