Namespace
supabase
Image / Tag
postgres:17.6.1.123-mg-1-multigres_arm64
Content Digest
sha256:86907a060efa0da1a5402178c6be3a05bcfa4dca9e4f8e30e9f5463f7c11c66b
Details
Created

2026-05-20 14:47:08 UTC

Size

363 MB

Content Digest
Environment
GRN_PLUGINS_DIR

/usr/lib/groonga/plugins

LANG

en_US.UTF-8

LANGUAGE

en_US:en

LC_ALL

en_US.UTF-8

LOCALE_ARCHIVE

/nix/var/nix/profiles/default/lib/locale/locale-archive

PATH

/nix/var/nix/profiles/default/bin:/usr/lib/postgresql/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin

PGDATA

/var/lib/postgresql/data

POSTGRES_DB

postgres

POSTGRES_HOST

/var/run/postgresql

POSTGRES_INITDB_ARGS

--allow-group-access --locale-provider=icu --encoding=UTF-8 --icu-locale=en_US.UTF-8

POSTGRES_INITDB_SQL_FILES

/docker-entrypoint-initdb.d/multigres-init.sql

POSTGRES_USER

supabase_admin


Layers

[#000] sha256:d17f077ada118cc762df373ff803592abf2dfa3ddafaa7381e364dd27a88fca7 - 1.1% (4.01 MB)

[#001] sha256:4553a4537c98ac6d73c7df2f876b18952b4d9508a7c823313e3d759b08fd59bb - 2.0% (7.26 MB)

[#002] sha256:4fa062ed2f68a048460715bbd338497f230b46ddcbf76a5ffe04285303c5d0c5 - 0.0% (1 KB)

[#003] sha256:0bc87f601f6996857029c396b1fca320dd93d8ddbb98c5c021324c23f16efff9 - 0.0% (329 Bytes)

[#004] sha256:ee6bb49e36154e7109f1fe4035dc60e55c3439888582950a2eaa40b3c7d0d322 - 0.0% (8.33 KB)

[#005] sha256:fc212a6628d2753964f11c08d7f5ab13ceeb8639fd9fc2b3c8ba42bac1d50eb1 - 0.0% (1.84 KB)

[#006] sha256:ca8b4179b9f42ce92aea5774899e2b7d650cf8920b34d27b8340fee73414772f - 0.0% (1015 Bytes)

[#007] sha256:92e8fb41a5a04e89674a724def63155d44dc0c629986ce3012737b07c131166d - 0.0% (340 Bytes)

[#008] sha256:bc4f668a419ebd0839a43e5f89fc432d4f98a8dba8883c375eca793244662d8e - 0.0% (277 Bytes)

[#009] sha256:e158eb1df9b11a4c5cda13b5be51e6376ae6778b91c06acb58ecef0fcac85f33 - 0.0% (1.49 KB)

[#010] sha256:585102295b9650b62de34e517f267a43b10abab7282fbbb1c97a1f08ff7c2fbd - 0.0% (3.76 KB)

[#011] sha256:f957069f5fd773a475420ae16925acad87e8fa243ee9a02c19a58b54c489c5e9 - 0.0% (389 Bytes)

[#012] sha256:e0da1d3beb30d7becb5d4491e49ae8b7e8c77749dc12e6e6c8fc1a291bf8776a - 0.0% (335 Bytes)

[#013] sha256:e7d3052537dd23d5a83b5b56c4efc4976eb0e8b76059166b38820f9a1a7e54ca - 0.0% (360 Bytes)

[#014] sha256:1886073fb66f35efa43b5a61ee7b90ebb8e3680cdf3c7974b81e9e5a3a858330 - 0.0% (8.49 KB)

[#015] sha256:0929c83798c04b648fb5b842ccf9bdbbc895ab95a8715d8cc7dfd8d79fff8a17 - 0.0% (13.2 KB)

[#016] sha256:af393f0c1d49a581cf232e6875be3e1080f46d5c45b525f3915e42fdc0eeece4 - 0.0% (522 Bytes)

[#017] sha256:d5b1a4479a0e5382b4265a3a324641a0407b422c5bf6f24de28f8c8bee049710 - 0.0% (271 Bytes)

[#018] sha256:e96abf555f2b0a9435f2850e5a7b67b5bbf87d9519fd060a6d2041151faf1721 - 96.66% (351 MB)

[#019] sha256:dda5479a05ef5023ee9568d7373b2900eed25001e64c9d73a54b182fa87a5538 - 0.03% (99.7 KB)

[#020] sha256:4bbe20a52b5117a0fb27bb7008a5c03bd78015dafbb17a8aaf995205a85a33e8 - 0.2% (731 KB)

[#021] sha256:7342b0a950fc43ea36628621f727c23913eff35e876e120e1fe368475f123af8 - 0.0% (4.09 KB)

[#022] sha256:ce1dd48d3df7936a73742019dd0f4e2ad19aab2d847deda9bc54c37463c4d7f3 - 0.0% (2.4 KB)

[#023] sha256:12d1fb9e38ba8e6acea2ebb347d09e58d35d05c8c6f1808d495b301db91a1d25 - 0.0% (3.03 KB)

[#024] sha256:6957a03a303578fd57b8586d47fcb4709a99c7b4465d9083049c19eaa08b5ae4 - 0.0% (254 Bytes)

[#025] sha256:bd7a7a5e5a17c5dadf18af7aafaa90d20a3ae97a3d8f902cb39639631a430fae - 0.0% (1.47 KB)

[#026] sha256:08e4070d892f1e4fb9d54bd1c04c013b9e0452abf4f8dd1a5d713a5d22034a7f - 0.0% (1.46 KB)


History
2026-04-15 20:01:25 UTC (buildkit.dockerfile.v0)

ADD alpine-minirootfs-3.23.4-aarch64.tar.gz / # buildkit

2026-04-15 20:01:25 UTC (buildkit.dockerfile.v0)

CMD ["/bin/sh"]

2026-05-20 14:44:44 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c apk add --no-cache bash curl openssh procps shadow su-exec tzdata musl-locales musl-locales-lang && rm -rf /var/cache/apk/* # buildkit

2026-05-20 14:44:44 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c addgroup -S postgres && adduser -S -G postgres -h /var/lib/postgresql -s /bin/bash postgres && addgroup -S wal-g && adduser -S -G wal-g -s /bin/bash wal-g && adduser postgres wal-g # buildkit

2026-05-20 14:44:44 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c mkdir -p /usr/lib/postgresql/bin /usr/lib/postgresql/share/postgresql /usr/share/postgresql /var/lib/postgresql/data /var/run/postgresql /etc/postgresql /etc/postgresql-custom && chown -R postgres:postgres /usr/lib/postgresql /var/lib/postgresql /usr/share/postgresql /var/run/postgresql /etc/postgresql /etc/postgresql-custom # buildkit

2026-05-20 14:44:44 UTC (buildkit.dockerfile.v0)

COPY ansible/files/postgresql_config/postgresql.conf.j2 /etc/postgresql/postgresql.conf # buildkit

2026-05-20 14:44:44 UTC (buildkit.dockerfile.v0)

COPY ansible/files/postgresql_config/pg_hba.conf.j2 /etc/postgresql/pg_hba.conf # buildkit

2026-05-20 14:44:44 UTC (buildkit.dockerfile.v0)

COPY ansible/files/postgresql_config/pg_ident.conf.j2 /etc/postgresql/pg_ident.conf # buildkit

2026-05-20 14:44:44 UTC (buildkit.dockerfile.v0)

COPY ansible/files/postgresql_config/conf.d /etc/postgresql-custom/conf.d # buildkit

2026-05-20 14:44:44 UTC (buildkit.dockerfile.v0)

COPY ansible/files/postgresql_config/postgresql-stdout-log.conf /etc/postgresql/logging.conf # buildkit

2026-05-20 14:44:44 UTC (buildkit.dockerfile.v0)

COPY ansible/files/postgresql_config/supautils.conf.j2 /etc/postgresql-custom/supautils.conf # buildkit

2026-05-20 14:44:44 UTC (buildkit.dockerfile.v0)

COPY ansible/files/postgresql_extension_custom_scripts /etc/postgresql-custom/extension-custom-scripts # buildkit

2026-05-20 14:44:44 UTC (buildkit.dockerfile.v0)

COPY ansible/files/postgresql_config/custom_walg.conf /etc/postgresql-custom/wal-g.conf # buildkit

2026-05-20 14:44:44 UTC (buildkit.dockerfile.v0)

COPY ansible/files/postgresql_config/custom_read_replica.conf /etc/postgresql-custom/read-replica.conf # buildkit

2026-05-20 14:44:44 UTC (buildkit.dockerfile.v0)

COPY ansible/files/pgsodium_getkey_urandom.sh.j2 /usr/lib/postgresql/bin/pgsodium_getkey.sh # buildkit

2026-05-20 14:44:44 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c sed -i -e "s|#unix_socket_directories = '/tmp'|unix_socket_directories = '/var/run/postgresql'|g" -e "s|#session_preload_libraries = ''|session_preload_libraries = 'supautils'|g" -e "s|#include = '/etc/postgresql-custom/supautils.conf'|include = '/etc/postgresql-custom/supautils.conf'|g" -e "s/ timescaledb,//g" -e "s/ pgsodium,//g" -e "s/db_user_namespace = off/#db_user_namespace = off/g" -e "s|^data_directory |#data_directory |g" /etc/postgresql/postgresql.conf && echo "pgsodium.getkey_script= '/usr/lib/postgresql/bin/pgsodium_getkey.sh'" >> /etc/postgresql/postgresql.conf && echo "vault.getkey_script= '/usr/lib/postgresql/bin/pgsodium_getkey.sh'" >> /etc/postgresql/postgresql.conf && chown -R postgres:postgres /etc/postgresql-custom && mkdir -p /usr/share/postgresql/extension/ && ln -s /usr/lib/postgresql/bin/pgsodium_getkey.sh /usr/share/postgresql/extension/pgsodium_getkey && chmod +x /usr/lib/postgresql/bin/pgsodium_getkey.sh # buildkit

2026-05-20 14:44:44 UTC (buildkit.dockerfile.v0)

COPY migrations/db /docker-entrypoint-initdb.d/ # buildkit

2026-05-20 14:44:44 UTC (buildkit.dockerfile.v0)

COPY ansible/files/pgbouncer_config/pgbouncer_auth_schema.sql /docker-entrypoint-initdb.d/init-scripts/00-schema.sql # buildkit

2026-05-20 14:44:44 UTC (buildkit.dockerfile.v0)

COPY ansible/files/stat_extension.sql /docker-entrypoint-initdb.d/migrations/00-extension.sql # buildkit

2026-05-20 14:47:07 UTC (buildkit.dockerfile.v0)

ENV PGDATA=/var/lib/postgresql/data

2026-05-20 14:47:07 UTC (buildkit.dockerfile.v0)

ENV POSTGRES_HOST=/var/run/postgresql

2026-05-20 14:47:07 UTC (buildkit.dockerfile.v0)

ENV POSTGRES_USER=supabase_admin

2026-05-20 14:47:07 UTC (buildkit.dockerfile.v0)

ENV POSTGRES_DB=postgres

2026-05-20 14:47:07 UTC (buildkit.dockerfile.v0)

ENV POSTGRES_INITDB_ARGS=--allow-group-access --locale-provider=icu --encoding=UTF-8 --icu-locale=en_US.UTF-8

2026-05-20 14:47:07 UTC (buildkit.dockerfile.v0)

ENV LANG=en_US.UTF-8

2026-05-20 14:47:07 UTC (buildkit.dockerfile.v0)

ENV LANGUAGE=en_US:en

2026-05-20 14:47:07 UTC (buildkit.dockerfile.v0)

ENV LC_ALL=en_US.UTF-8

2026-05-20 14:47:07 UTC (buildkit.dockerfile.v0)

ENV GRN_PLUGINS_DIR=/usr/lib/groonga/plugins

2026-05-20 14:47:07 UTC (buildkit.dockerfile.v0)

COPY /nix /nix # buildkit

2026-05-20 14:47:08 UTC (buildkit.dockerfile.v0)

COPY /tmp/groonga-plugins/plugins /usr/lib/groonga/plugins # buildkit

2026-05-20 14:47:08 UTC (buildkit.dockerfile.v0)

COPY /usr/local/bin/gosu /usr/local/bin/gosu # buildkit

2026-05-20 14:47:08 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c for f in /nix/var/nix/profiles/default/bin/*; do ln -sf "$f" /usr/lib/postgresql/bin/ 2>/dev/null || true; ln -sf "$f" /usr/bin/ 2>/dev/null || true; done && ln -sf /nix/var/nix/profiles/default/share/postgresql/* /usr/lib/postgresql/share/postgresql/ 2>/dev/null || true && ln -sf /nix/var/nix/profiles/default/share/postgresql/* /usr/share/postgresql/ 2>/dev/null || true && ln -sf /usr/lib/postgresql/share/postgresql/timezonesets /usr/share/postgresql/timezonesets 2>/dev/null || true # buildkit

2026-05-20 14:47:08 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c chown -R postgres:postgres /usr/lib/postgresql && chown -R postgres:postgres /usr/share/postgresql # buildkit

2026-05-20 14:47:08 UTC (buildkit.dockerfile.v0)

COPY docker/pgctld/postgresql.conf.tmpl /etc/pgctld-custom/postgresql.conf.tmpl # buildkit

2026-05-20 14:47:08 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c printf '#!/bin/sh\nexec /nix/var/nix/profiles/default/bin/pgctld --postgres-config-template /etc/pgctld-custom/postgresql.conf.tmpl "$@"\n' > /usr/local/bin/pgctld && chmod +x /usr/local/bin/pgctld # buildkit

2026-05-20 14:47:08 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c sed -i 's/ timescaledb,//g; s/ plv8,//g' /etc/postgresql-custom/supautils.conf # buildkit

2026-05-20 14:47:08 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c set -e && manifest=/docker-entrypoint-initdb.d/multigres-init.sql && printf -- "-- Auto-generated: run init-scripts and migrations after initdb\n" > "$manifest" && printf "DO \$\$ BEGIN\n IF NOT EXISTS (SELECT FROM pg_roles WHERE rolname = 'postgres') THEN\n CREATE ROLE postgres SUPERUSER LOGIN;\n END IF;\nEND \$\$;\n" >> "$manifest" && printf "ALTER DATABASE postgres OWNER TO postgres;\n\n" >> "$manifest" && printf "SET SESSION AUTHORIZATION postgres;\n" >> "$manifest" && for f in $(ls /docker-entrypoint-initdb.d/init-scripts/*.sql 2>/dev/null | sort); do printf '\\ir init-scripts/%s\n' "$(basename "$f")" >> "$manifest"; done && printf "\nRESET SESSION AUTHORIZATION;\n\n" >> "$manifest" && for f in $(ls /docker-entrypoint-initdb.d/migrations/*.sql 2>/dev/null | sort); do printf '\\ir migrations/%s\n' "$(basename "$f")" >> "$manifest"; done && chown postgres:postgres "$manifest" # buildkit

2026-05-20 14:47:08 UTC (buildkit.dockerfile.v0)

ENV POSTGRES_INITDB_SQL_FILES=/docker-entrypoint-initdb.d/multigres-init.sql

2026-05-20 14:47:08 UTC (buildkit.dockerfile.v0)

ENV PATH=/nix/var/nix/profiles/default/bin:/usr/lib/postgresql/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin

2026-05-20 14:47:08 UTC (buildkit.dockerfile.v0)

ENV LOCALE_ARCHIVE=/nix/var/nix/profiles/default/lib/locale/locale-archive

2026-05-20 14:47:08 UTC (buildkit.dockerfile.v0)

HEALTHCHECK &{["CMD-SHELL" "pg_isready -U postgres -h localhost || true"] "30s" "5s" "10s" "0s" '\x03'}

2026-05-20 14:47:08 UTC (buildkit.dockerfile.v0)

STOPSIGNAL SIGINT

2026-05-20 14:47:08 UTC (buildkit.dockerfile.v0)

USER postgres

2026-05-20 14:47:08 UTC (buildkit.dockerfile.v0)

EXPOSE map[5432/tcp:{}]

2026-05-20 14:47:08 UTC (buildkit.dockerfile.v0)

ENTRYPOINT ["tail"]

2026-05-20 14:47:08 UTC (buildkit.dockerfile.v0)

CMD ["-f" "/dev/null"]

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