Namespace
ferretdb
Image / Tag
postgres-documentdb:17-0.105.0
Content Digest
sha256:a9e097a7c3a5bf592e988d8f0ee36b19d309436be56a1342effda3fc804117f4
Details
Created

2025-07-15 12:54:51 UTC

Size

483 MB

Content Digest
Labels
  • org.opencontainers.image.description
    PostgreSQL with DocumentDB extension
  • org.opencontainers.image.source
    https://github.com/FerretDB/documentdb
  • org.opencontainers.image.title
    PostgreSQL+DocumentDB
  • org.opencontainers.image.url
    https://www.ferretdb.com/
  • org.opencontainers.image.vendor
    FerretDB Inc.
  • org.opencontainers.image.version
    0.105.0~ferretdb~2.4.0

Environment
GOSU_VERSION

1.17

LANG

en_US.utf8

PATH

/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/lib/postgresql/17/bin

PGDATA

/var/lib/postgresql/data

PG_MAJOR

17

PG_VERSION

17.5-1.pgdg120+1


Layers

[#000] sha256:3da95a905ed546f99c4564407923a681757d89651a388ec3f1f5e9bf5ed0b39d - 5.57% (26.9 MB)

[#001] sha256:b374722b7db636067f940384cf6f7a009f144eeae9f37e79a9e10bdf3c87ce75 - 0.0% (1.14 KB)

[#002] sha256:9e48f0d5503bcd1c8b747221654327ce1c5bc8ae74c810270aa63cd69db6c4ae - 0.89% (4.32 MB)

[#003] sha256:c883d509c82bbcc80d6d4f25d5b033b11578a814efc49186fb588c25f8951dce - 0.29% (1.38 MB)

[#004] sha256:e9068395fab490c61482984f1b1a83712bfd982c88536502b1070e83fbe9c108 - 1.59% (7.69 MB)

[#005] sha256:f68d74b3ee3b1d74249569b94d6231b54e1e28ba0b675ae81ac3325351ece951 - 0.24% (1.14 MB)

[#006] sha256:420b84accc7fc80f4e1044354c9682a524725aa1a84334911022bd615dd7e0c4 - 0.0% (116 Bytes)

[#007] sha256:761152bb4395104b108877fa2d500c11c8e2e20d2746563f9e17f95edec63553 - 0.0% (3.07 KB)

[#008] sha256:1eb73c80cbecbcb92422ee9ac8c4005fcbe09ebf4f637994af5a89305032744f - 22.25% (108 MB)

[#009] sha256:bbce49c39241aa4c931439b29edfd2e71092d7e5d9890f2d30068a598db1d686 - 0.0% (9.99 KB)

[#010] sha256:f028345d193470f5ec8554c75eed31ce8b8ba1bbcec0b151d4df7db4d6d67892 - 0.0% (127 Bytes)

[#011] sha256:67bfaf72b9daafd46b78aa938bc13e6abecbe61f4c93605582a440e121bd227d - 0.0% (167 Bytes)

[#012] sha256:ebb41c3a1a26791e6f9393c8de9e5cfac131a08b1bcd38ad3b999e7bf8550daf - 0.0% (5.79 KB)

[#013] sha256:a56d6197194ebb9f374d817816c073a74bdd6c88b91076821dc8d1c727e8a66f - 0.0% (184 Bytes)

[#014] sha256:f3420805fd17f4a126ffab59558d049168d7bad1c68054a5c26a18bcaa20abb0 - 67.73% (327 MB)

[#015] sha256:a6bb7908526914288e1f08055374a47f0910d75e5c6c36e0d6ba19ff9fbeea6c - 1.43% (6.93 MB)


History
2025-06-06 18:27:47 UTC (debuerreotype 0.15)

# debian.sh --arch 'amd64' out/ 'bookworm' '@1751241600'

2025-06-06 18:27:47 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c set -eux; groupadd -r postgres --gid=999; useradd -r -g postgres --uid=999 --home-dir=/var/lib/postgresql --shell=/bin/bash postgres; install --verbose --directory --owner postgres --group postgres --mode 1777 /var/lib/postgresql # buildkit

2025-06-06 18:27:47 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c set -ex; apt-get update; apt-get install -y --no-install-recommends gnupg less ; rm -rf /var/lib/apt/lists/* # buildkit

2025-06-06 18:27:47 UTC (buildkit.dockerfile.v0)

ENV GOSU_VERSION=1.17

2025-06-06 18:27:47 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c set -eux; savedAptMark="$(apt-mark showmanual)"; apt-get update; apt-get install -y --no-install-recommends ca-certificates wget; rm -rf /var/lib/apt/lists/*; dpkgArch="$(dpkg --print-architecture | awk -F- '{ print $NF }')"; wget -O /usr/local/bin/gosu "https://github.com/tianon/gosu/releases/download/$GOSU_VERSION/gosu-$dpkgArch"; wget -O /usr/local/bin/gosu.asc "https://github.com/tianon/gosu/releases/download/$GOSU_VERSION/gosu-$dpkgArch.asc"; export GNUPGHOME="$(mktemp -d)"; gpg --batch --keyserver hkps://keys.openpgp.org --recv-keys B42F6819007F00F88E364FD4036A9C25BF357DD4; gpg --batch --verify /usr/local/bin/gosu.asc /usr/local/bin/gosu; gpgconf --kill all; rm -rf "$GNUPGHOME" /usr/local/bin/gosu.asc; apt-mark auto '.*' > /dev/null; [ -z "$savedAptMark" ] || apt-mark manual $savedAptMark > /dev/null; apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false; chmod +x /usr/local/bin/gosu; gosu --version; gosu nobody true # buildkit

2025-06-06 18:27:47 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c set -eux; if [ -f /etc/dpkg/dpkg.cfg.d/docker ]; then grep -q '/usr/share/locale' /etc/dpkg/dpkg.cfg.d/docker; sed -ri '/\/usr\/share\/locale/d' /etc/dpkg/dpkg.cfg.d/docker; ! grep -q '/usr/share/locale' /etc/dpkg/dpkg.cfg.d/docker; fi; apt-get update; apt-get install -y --no-install-recommends locales; rm -rf /var/lib/apt/lists/*; echo 'en_US.UTF-8 UTF-8' >> /etc/locale.gen; locale-gen; locale -a | grep 'en_US.utf8' # buildkit

2025-06-06 18:27:47 UTC (buildkit.dockerfile.v0)

ENV LANG=en_US.utf8

2025-06-06 18:27:47 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c set -eux; apt-get update; apt-get install -y --no-install-recommends libnss-wrapper xz-utils zstd ; rm -rf /var/lib/apt/lists/* # buildkit

2025-06-06 18:27:47 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c mkdir /docker-entrypoint-initdb.d # buildkit

2025-06-06 18:27:47 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c set -ex; key='B97B0AFCAA1A47F044F244A07FCC7D46ACCC4CF8'; export GNUPGHOME="$(mktemp -d)"; mkdir -p /usr/local/share/keyrings/; gpg --batch --keyserver keyserver.ubuntu.com --recv-keys "$key"; gpg --batch --export --armor "$key" > /usr/local/share/keyrings/postgres.gpg.asc; gpgconf --kill all; rm -rf "$GNUPGHOME" # buildkit

2025-06-06 18:27:47 UTC (buildkit.dockerfile.v0)

ENV PG_MAJOR=17

2025-06-06 18:27:47 UTC (buildkit.dockerfile.v0)

ENV PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/lib/postgresql/17/bin

2025-06-06 18:27:47 UTC (buildkit.dockerfile.v0)

ENV PG_VERSION=17.5-1.pgdg120+1

2025-06-06 18:27:47 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c set -ex; export PYTHONDONTWRITEBYTECODE=1; dpkgArch="$(dpkg --print-architecture)"; aptRepo="[ signed-by=/usr/local/share/keyrings/postgres.gpg.asc ] http://apt.postgresql.org/pub/repos/apt/ bookworm-pgdg main $PG_MAJOR"; case "$dpkgArch" in amd64 | arm64 | ppc64el) echo "deb $aptRepo" > /etc/apt/sources.list.d/pgdg.list; apt-get update; ;; *) echo "deb-src $aptRepo" > /etc/apt/sources.list.d/pgdg.list; savedAptMark="$(apt-mark showmanual)"; tempDir="$(mktemp -d)"; cd "$tempDir"; apt-get update; apt-get install -y --no-install-recommends dpkg-dev; echo "deb [ trusted=yes ] file://$tempDir ./" > /etc/apt/sources.list.d/temp.list; _update_repo() { dpkg-scanpackages . > Packages; apt-get -o Acquire::GzipIndexes=false update; }; _update_repo; nproc="$(nproc)"; export DEB_BUILD_OPTIONS="nocheck parallel=$nproc"; apt-get build-dep -y postgresql-common-dev; apt-get source --compile postgresql-common-dev; _update_repo; apt-get build-dep -y "postgresql-$PG_MAJOR=$PG_VERSION"; apt-get source --compile "postgresql-$PG_MAJOR=$PG_VERSION"; apt-mark showmanual | xargs apt-mark auto > /dev/null; apt-mark manual $savedAptMark; ls -lAFh; _update_repo; grep '^Package: ' Packages; cd /; ;; esac; apt-get install -y --no-install-recommends postgresql-common; sed -ri 's/#(create_main_cluster) .*$/\1 = false/' /etc/postgresql-common/createcluster.conf; apt-get install -y --no-install-recommends "postgresql-$PG_MAJOR=$PG_VERSION" ; rm -rf /var/lib/apt/lists/*; if [ -n "$tempDir" ]; then apt-get purge -y --auto-remove; rm -rf "$tempDir" /etc/apt/sources.list.d/temp.list; fi; find /usr -name '*.pyc' -type f -exec bash -c 'for pyc; do dpkg -S "$pyc" &> /dev/null || rm -vf "$pyc"; done' -- '{}' +; postgres --version # buildkit

2025-06-06 18:27:47 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c set -eux; dpkg-divert --add --rename --divert "/usr/share/postgresql/postgresql.conf.sample.dpkg" "/usr/share/postgresql/$PG_MAJOR/postgresql.conf.sample"; cp -v /usr/share/postgresql/postgresql.conf.sample.dpkg /usr/share/postgresql/postgresql.conf.sample; ln -sv ../postgresql.conf.sample "/usr/share/postgresql/$PG_MAJOR/"; sed -ri "s!^#?(listen_addresses)\s*=\s*\S+.*!\1 = '*'!" /usr/share/postgresql/postgresql.conf.sample; grep -F "listen_addresses = '*'" /usr/share/postgresql/postgresql.conf.sample # buildkit

2025-06-06 18:27:47 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c install --verbose --directory --owner postgres --group postgres --mode 3777 /var/run/postgresql # buildkit

2025-06-06 18:27:47 UTC (buildkit.dockerfile.v0)

ENV PGDATA=/var/lib/postgresql/data

2025-06-06 18:27:47 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c install --verbose --directory --owner postgres --group postgres --mode 1777 "$PGDATA" # buildkit

2025-06-06 18:27:47 UTC (buildkit.dockerfile.v0)

VOLUME [/var/lib/postgresql/data]

2025-06-06 18:27:47 UTC (buildkit.dockerfile.v0)

COPY docker-entrypoint.sh docker-ensure-initdb.sh /usr/local/bin/ # buildkit

2025-06-06 18:27:47 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c ln -sT docker-ensure-initdb.sh /usr/local/bin/docker-enforce-initdb.sh # buildkit

2025-06-06 18:27:47 UTC (buildkit.dockerfile.v0)

ENTRYPOINT ["docker-entrypoint.sh"]

2025-06-06 18:27:47 UTC (buildkit.dockerfile.v0)

STOPSIGNAL SIGINT

2025-06-06 18:27:47 UTC (buildkit.dockerfile.v0)

EXPOSE map[5432/tcp:{}]

2025-06-06 18:27:47 UTC (buildkit.dockerfile.v0)

CMD ["postgres"]

2025-07-15 12:54:50 UTC (buildkit.dockerfile.v0)

ARG TARGETARCH=amd64

2025-07-15 12:54:50 UTC (buildkit.dockerfile.v0)

ARG POSTGRES_VERSION=17

2025-07-15 12:54:50 UTC (buildkit.dockerfile.v0)

ARG DOCUMENTDB_VERSION=0.105.0~ferretdb~2.4.0

2025-07-15 12:54:50 UTC (buildkit.dockerfile.v0)

RUN |3 TARGETARCH=amd64 POSTGRES_VERSION=17 DOCUMENTDB_VERSION=0.105.0~ferretdb~2.4.0 /bin/sh -c set -ex apt update apt upgrade -y apt install -y \ postgresql-${POSTGRES_VERSION} \ postgresql-${POSTGRES_VERSION}-cron \ postgresql-${POSTGRES_VERSION}-pgvector \ postgresql-${POSTGRES_VERSION}-postgis-3 \ postgresql-${POSTGRES_VERSION}-rum \ postgresql-server-dev-${POSTGRES_VERSION} \ barman-cli-cloud # buildkit

2025-07-15 12:54:51 UTC (buildkit.dockerfile.v0)

RUN |3 TARGETARCH=amd64 POSTGRES_VERSION=17 DOCUMENTDB_VERSION=0.105.0~ferretdb~2.4.0 /bin/sh -c set -ex cd /src cp packaging/deb12-postgresql-${POSTGRES_VERSION}-documentdb_${DOCUMENTDB_VERSION}_${TARGETARCH}.deb /tmp/documentdb.deb dpkg -i /tmp/documentdb.deb rm /tmp/documentdb.deb cp packaging/10-preload.sh /docker-entrypoint-initdb.d/ cp packaging/20-install.sql /docker-entrypoint-initdb.d/ # buildkit

2025-07-15 12:54:51 UTC (buildkit.dockerfile.v0)

WORKDIR /

2025-07-15 12:54:51 UTC (buildkit.dockerfile.v0)

LABEL org.opencontainers.image.title=PostgreSQL+DocumentDB

2025-07-15 12:54:51 UTC (buildkit.dockerfile.v0)

LABEL org.opencontainers.image.description=PostgreSQL with DocumentDB extension

2025-07-15 12:54:51 UTC (buildkit.dockerfile.v0)

LABEL org.opencontainers.image.source=https://github.com/FerretDB/documentdb

2025-07-15 12:54:51 UTC (buildkit.dockerfile.v0)

LABEL org.opencontainers.image.url=https://www.ferretdb.com/

2025-07-15 12:54:51 UTC (buildkit.dockerfile.v0)

LABEL org.opencontainers.image.vendor=FerretDB Inc.

2025-07-15 12:54:51 UTC (buildkit.dockerfile.v0)

LABEL org.opencontainers.image.version=0.105.0~ferretdb~2.4.0

Details
Created

2025-07-15 12:54:23 UTC

Size

461 MB

Content Digest
Labels
  • org.opencontainers.image.description
    PostgreSQL with DocumentDB extension
  • org.opencontainers.image.source
    https://github.com/FerretDB/documentdb
  • org.opencontainers.image.title
    PostgreSQL+DocumentDB
  • org.opencontainers.image.url
    https://www.ferretdb.com/
  • org.opencontainers.image.vendor
    FerretDB Inc.
  • org.opencontainers.image.version
    0.105.0~ferretdb~2.4.0

Environment
GOSU_VERSION

1.17

LANG

en_US.utf8

PATH

/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/lib/postgresql/17/bin

PGDATA

/var/lib/postgresql/data

PG_MAJOR

17

PG_VERSION

17.5-1.pgdg120+1


Layers

[#000] sha256:37259e7330667afd74c3386d3ed869f06bd9b7714370c78e3065f4e28607cc02 - 5.81% (26.8 MB)

[#001] sha256:ad9bf12774e0ce0cfc3590b89bf3f236f0aea06947fee5a72a20fa202ed71726 - 0.0% (1.14 KB)

[#002] sha256:6c7475e9a1eb4f54ff3ce293c889e2869ad04ef99fa0b7351cc0c56883bb54a4 - 0.93% (4.29 MB)

[#003] sha256:fd3187d6acde3adaef3e0f34d748f51ea0b09ffcc3b84dc9835025728bcc9b0b - 0.29% (1.31 MB)

[#004] sha256:573b5990cac7e74fa1044129ca27a93c56b716f8496bfb98fb82827baf1547b7 - 1.67% (7.69 MB)

[#005] sha256:34ed8d648854a75044ac1f6f617360354c51765209cb50203cec18628581fec9 - 0.23% (1.06 MB)

[#006] sha256:e0da14ecf374478a552357a6b003a1a3112374ae371112403892342ae796c709 - 0.0% (116 Bytes)

[#007] sha256:a3e06971819ce27ad3c1012fd87314a414a32e3b2aed7bcddaa864d3b915378d - 0.0% (3.07 KB)

[#008] sha256:8b584fe980c87b9526413459514b388d849fc81956eed127bdca603f88922d0c - 22.98% (106 MB)

[#009] sha256:7e8924348af8157ac8590079c71306f20b5d28863cc1c6ae60b00e62e9457da1 - 0.0% (10 KB)

[#010] sha256:62d6ecd3917a565e19c5821e4b151d78b5ffbce87d494ea05ddc0b5fa6a666a5 - 0.0% (127 Bytes)

[#011] sha256:47d365097430b3254cb90bc3ffcff62d72cc34dfab6e9a4ce99e3973e874a121 - 0.0% (167 Bytes)

[#012] sha256:183c1a68f8aac4658bc8985475dbf76d22c60c54cae0da7d9a2431e828cbbe59 - 0.0% (5.79 KB)

[#013] sha256:7683a1632945479e439d7ff1bb4d1d6b8f333628bf046af6733298699c6f5d8c - 0.0% (184 Bytes)

[#014] sha256:c6fc88af27440c7ceb6c79c319c13b2f681a1bdc45ce2ba0b47cd4180a0b680f - 66.59% (307 MB)

[#015] sha256:f10876dea65f123fc5c4cd32f61a246a8e7bc00504574be0027f66d6c42a00d4 - 1.49% (6.88 MB)


History
2025-06-06 18:27:47 UTC (debuerreotype 0.15)

# debian.sh --arch 'arm64' out/ 'bookworm' '@1751241600'

2025-06-06 18:27:47 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c set -eux; groupadd -r postgres --gid=999; useradd -r -g postgres --uid=999 --home-dir=/var/lib/postgresql --shell=/bin/bash postgres; install --verbose --directory --owner postgres --group postgres --mode 1777 /var/lib/postgresql # buildkit

2025-06-06 18:27:47 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c set -ex; apt-get update; apt-get install -y --no-install-recommends gnupg less ; rm -rf /var/lib/apt/lists/* # buildkit

2025-06-06 18:27:47 UTC (buildkit.dockerfile.v0)

ENV GOSU_VERSION=1.17

2025-06-06 18:27:47 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c set -eux; savedAptMark="$(apt-mark showmanual)"; apt-get update; apt-get install -y --no-install-recommends ca-certificates wget; rm -rf /var/lib/apt/lists/*; dpkgArch="$(dpkg --print-architecture | awk -F- '{ print $NF }')"; wget -O /usr/local/bin/gosu "https://github.com/tianon/gosu/releases/download/$GOSU_VERSION/gosu-$dpkgArch"; wget -O /usr/local/bin/gosu.asc "https://github.com/tianon/gosu/releases/download/$GOSU_VERSION/gosu-$dpkgArch.asc"; export GNUPGHOME="$(mktemp -d)"; gpg --batch --keyserver hkps://keys.openpgp.org --recv-keys B42F6819007F00F88E364FD4036A9C25BF357DD4; gpg --batch --verify /usr/local/bin/gosu.asc /usr/local/bin/gosu; gpgconf --kill all; rm -rf "$GNUPGHOME" /usr/local/bin/gosu.asc; apt-mark auto '.*' > /dev/null; [ -z "$savedAptMark" ] || apt-mark manual $savedAptMark > /dev/null; apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false; chmod +x /usr/local/bin/gosu; gosu --version; gosu nobody true # buildkit

2025-06-06 18:27:47 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c set -eux; if [ -f /etc/dpkg/dpkg.cfg.d/docker ]; then grep -q '/usr/share/locale' /etc/dpkg/dpkg.cfg.d/docker; sed -ri '/\/usr\/share\/locale/d' /etc/dpkg/dpkg.cfg.d/docker; ! grep -q '/usr/share/locale' /etc/dpkg/dpkg.cfg.d/docker; fi; apt-get update; apt-get install -y --no-install-recommends locales; rm -rf /var/lib/apt/lists/*; echo 'en_US.UTF-8 UTF-8' >> /etc/locale.gen; locale-gen; locale -a | grep 'en_US.utf8' # buildkit

2025-06-06 18:27:47 UTC (buildkit.dockerfile.v0)

ENV LANG=en_US.utf8

2025-06-06 18:27:47 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c set -eux; apt-get update; apt-get install -y --no-install-recommends libnss-wrapper xz-utils zstd ; rm -rf /var/lib/apt/lists/* # buildkit

2025-06-06 18:27:47 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c mkdir /docker-entrypoint-initdb.d # buildkit

2025-06-06 18:27:47 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c set -ex; key='B97B0AFCAA1A47F044F244A07FCC7D46ACCC4CF8'; export GNUPGHOME="$(mktemp -d)"; mkdir -p /usr/local/share/keyrings/; gpg --batch --keyserver keyserver.ubuntu.com --recv-keys "$key"; gpg --batch --export --armor "$key" > /usr/local/share/keyrings/postgres.gpg.asc; gpgconf --kill all; rm -rf "$GNUPGHOME" # buildkit

2025-06-06 18:27:47 UTC (buildkit.dockerfile.v0)

ENV PG_MAJOR=17

2025-06-06 18:27:47 UTC (buildkit.dockerfile.v0)

ENV PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/lib/postgresql/17/bin

2025-06-06 18:27:47 UTC (buildkit.dockerfile.v0)

ENV PG_VERSION=17.5-1.pgdg120+1

2025-06-06 18:27:47 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c set -ex; export PYTHONDONTWRITEBYTECODE=1; dpkgArch="$(dpkg --print-architecture)"; aptRepo="[ signed-by=/usr/local/share/keyrings/postgres.gpg.asc ] http://apt.postgresql.org/pub/repos/apt/ bookworm-pgdg main $PG_MAJOR"; case "$dpkgArch" in amd64 | arm64 | ppc64el) echo "deb $aptRepo" > /etc/apt/sources.list.d/pgdg.list; apt-get update; ;; *) echo "deb-src $aptRepo" > /etc/apt/sources.list.d/pgdg.list; savedAptMark="$(apt-mark showmanual)"; tempDir="$(mktemp -d)"; cd "$tempDir"; apt-get update; apt-get install -y --no-install-recommends dpkg-dev; echo "deb [ trusted=yes ] file://$tempDir ./" > /etc/apt/sources.list.d/temp.list; _update_repo() { dpkg-scanpackages . > Packages; apt-get -o Acquire::GzipIndexes=false update; }; _update_repo; nproc="$(nproc)"; export DEB_BUILD_OPTIONS="nocheck parallel=$nproc"; apt-get build-dep -y postgresql-common-dev; apt-get source --compile postgresql-common-dev; _update_repo; apt-get build-dep -y "postgresql-$PG_MAJOR=$PG_VERSION"; apt-get source --compile "postgresql-$PG_MAJOR=$PG_VERSION"; apt-mark showmanual | xargs apt-mark auto > /dev/null; apt-mark manual $savedAptMark; ls -lAFh; _update_repo; grep '^Package: ' Packages; cd /; ;; esac; apt-get install -y --no-install-recommends postgresql-common; sed -ri 's/#(create_main_cluster) .*$/\1 = false/' /etc/postgresql-common/createcluster.conf; apt-get install -y --no-install-recommends "postgresql-$PG_MAJOR=$PG_VERSION" ; rm -rf /var/lib/apt/lists/*; if [ -n "$tempDir" ]; then apt-get purge -y --auto-remove; rm -rf "$tempDir" /etc/apt/sources.list.d/temp.list; fi; find /usr -name '*.pyc' -type f -exec bash -c 'for pyc; do dpkg -S "$pyc" &> /dev/null || rm -vf "$pyc"; done' -- '{}' +; postgres --version # buildkit

2025-06-06 18:27:47 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c set -eux; dpkg-divert --add --rename --divert "/usr/share/postgresql/postgresql.conf.sample.dpkg" "/usr/share/postgresql/$PG_MAJOR/postgresql.conf.sample"; cp -v /usr/share/postgresql/postgresql.conf.sample.dpkg /usr/share/postgresql/postgresql.conf.sample; ln -sv ../postgresql.conf.sample "/usr/share/postgresql/$PG_MAJOR/"; sed -ri "s!^#?(listen_addresses)\s*=\s*\S+.*!\1 = '*'!" /usr/share/postgresql/postgresql.conf.sample; grep -F "listen_addresses = '*'" /usr/share/postgresql/postgresql.conf.sample # buildkit

2025-06-06 18:27:47 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c install --verbose --directory --owner postgres --group postgres --mode 3777 /var/run/postgresql # buildkit

2025-06-06 18:27:47 UTC (buildkit.dockerfile.v0)

ENV PGDATA=/var/lib/postgresql/data

2025-06-06 18:27:47 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c install --verbose --directory --owner postgres --group postgres --mode 1777 "$PGDATA" # buildkit

2025-06-06 18:27:47 UTC (buildkit.dockerfile.v0)

VOLUME [/var/lib/postgresql/data]

2025-06-06 18:27:47 UTC (buildkit.dockerfile.v0)

COPY docker-entrypoint.sh docker-ensure-initdb.sh /usr/local/bin/ # buildkit

2025-06-06 18:27:47 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c ln -sT docker-ensure-initdb.sh /usr/local/bin/docker-enforce-initdb.sh # buildkit

2025-06-06 18:27:47 UTC (buildkit.dockerfile.v0)

ENTRYPOINT ["docker-entrypoint.sh"]

2025-06-06 18:27:47 UTC (buildkit.dockerfile.v0)

STOPSIGNAL SIGINT

2025-06-06 18:27:47 UTC (buildkit.dockerfile.v0)

EXPOSE map[5432/tcp:{}]

2025-06-06 18:27:47 UTC (buildkit.dockerfile.v0)

CMD ["postgres"]

2025-07-15 12:54:20 UTC (buildkit.dockerfile.v0)

ARG TARGETARCH=arm64

2025-07-15 12:54:20 UTC (buildkit.dockerfile.v0)

ARG POSTGRES_VERSION=17

2025-07-15 12:54:20 UTC (buildkit.dockerfile.v0)

ARG DOCUMENTDB_VERSION=0.105.0~ferretdb~2.4.0

2025-07-15 12:54:20 UTC (buildkit.dockerfile.v0)

RUN |3 TARGETARCH=arm64 POSTGRES_VERSION=17 DOCUMENTDB_VERSION=0.105.0~ferretdb~2.4.0 /bin/sh -c set -ex apt update apt upgrade -y apt install -y \ postgresql-${POSTGRES_VERSION} \ postgresql-${POSTGRES_VERSION}-cron \ postgresql-${POSTGRES_VERSION}-pgvector \ postgresql-${POSTGRES_VERSION}-postgis-3 \ postgresql-${POSTGRES_VERSION}-rum \ postgresql-server-dev-${POSTGRES_VERSION} \ barman-cli-cloud # buildkit

2025-07-15 12:54:23 UTC (buildkit.dockerfile.v0)

RUN |3 TARGETARCH=arm64 POSTGRES_VERSION=17 DOCUMENTDB_VERSION=0.105.0~ferretdb~2.4.0 /bin/sh -c set -ex cd /src cp packaging/deb12-postgresql-${POSTGRES_VERSION}-documentdb_${DOCUMENTDB_VERSION}_${TARGETARCH}.deb /tmp/documentdb.deb dpkg -i /tmp/documentdb.deb rm /tmp/documentdb.deb cp packaging/10-preload.sh /docker-entrypoint-initdb.d/ cp packaging/20-install.sql /docker-entrypoint-initdb.d/ # buildkit

2025-07-15 12:54:23 UTC (buildkit.dockerfile.v0)

WORKDIR /

2025-07-15 12:54:23 UTC (buildkit.dockerfile.v0)

LABEL org.opencontainers.image.title=PostgreSQL+DocumentDB

2025-07-15 12:54:23 UTC (buildkit.dockerfile.v0)

LABEL org.opencontainers.image.description=PostgreSQL with DocumentDB extension

2025-07-15 12:54:23 UTC (buildkit.dockerfile.v0)

LABEL org.opencontainers.image.source=https://github.com/FerretDB/documentdb

2025-07-15 12:54:23 UTC (buildkit.dockerfile.v0)

LABEL org.opencontainers.image.url=https://www.ferretdb.com/

2025-07-15 12:54:23 UTC (buildkit.dockerfile.v0)

LABEL org.opencontainers.image.vendor=FerretDB Inc.

2025-07-15 12:54:23 UTC (buildkit.dockerfile.v0)

LABEL org.opencontainers.image.version=0.105.0~ferretdb~2.4.0

Danger Zone
Delete Tag

Please be careful as this will not just delete the reference but also the actual content!

For example when you have latest and v1.2.3 both pointing to the same image
the deletion of latest will also permanently remove v1.2.3.

Delete