2025-11-14 19:20:05 UTC
105 MB
llvm19-dev clang19
GOSU_VERSION1.19
LANGen_US.utf8
PATH/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
PGDATA/var/lib/postgresql/data
PG_MAJOR17
PG_SHA256ef9e343302eccd33112f1b2f0247be493cb5768313adeb558b02de8797a2e9b5
PG_VERSION17.7
[#000] sha256:2d35ebdb57d9971fea0cac1582aa78935adf8058b2cc32db163c98822e5dfa1b - 3.44% (3.63 MB)
[#001] sha256:0994e2a6ce3a81fb431dc0c3fe293b8dc682328ca75ced21aae8188cce4ff521 - 0.0% (972 Bytes)
[#002] sha256:ed24ebfd38baded179e8a6f820fc645a6f0f3b22f3e00cc18adccbece1a6cc55 - 0.83% (897 KB)
[#003] sha256:3fa9b0a7f3bddc07d4b0f6458611069019536dd6f3b7f189518de6c7f375f988 - 0.0% (116 Bytes)
[#004] sha256:d1fdc01cfb64af494df8709629ed2ce0f5320bcc05a5e06599232c5720bc0df9 - 95.72% (101 MB)
[#005] sha256:004c438aca5b3ffaceed0e23c5c8ef77b275ecc1a5013b7b766d5e0aed198fbf - 0.01% (9.65 KB)
[#006] sha256:656ca692f8ee7c8539551035672430dc6663d01a882f3188a7b3362864ed1eed - 0.0% (126 Bytes)
[#007] sha256:40df805578103c3c1b2424174c45c2e3cf43a423f0d0bd502ad9576d91c3c9ed - 0.0% (169 Bytes)
[#008] sha256:8444cb202a3f25f2dc3237b34bcacab7b11a2fe38f3d138553d4d67606243b66 - 0.01% (5.7 KB)
[#009] sha256:7344f10d1096e90b097c3ff28147a81bbe30c3b9291d4e6a8ab4e667b7a2c636 - 0.0% (185 Bytes)
ADD alpine-minirootfs-3.22.2-x86_64.tar.gz / # buildkit
2025-10-08 11:04:56 UTC (buildkit.dockerfile.v0)CMD ["/bin/sh"]
2025-11-14 19:17:51 UTC (buildkit.dockerfile.v0)RUN /bin/sh -c set -eux; addgroup -g 70 -S postgres; adduser -u 70 -S -D -G postgres -H -h /var/lib/postgresql -s /bin/sh postgres; install --verbose --directory --owner postgres --group postgres --mode 1777 /var/lib/postgresql # buildkit
2025-11-14 19:17:54 UTC (buildkit.dockerfile.v0)ENV GOSU_VERSION=1.19
2025-11-14 19:17:54 UTC (buildkit.dockerfile.v0)RUN /bin/sh -c set -eux; apk add --no-cache --virtual .gosu-deps ca-certificates dpkg gnupg ; 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; apk del --no-network .gosu-deps; chmod +x /usr/local/bin/gosu; gosu --version; gosu nobody true # buildkit
2025-11-14 19:17:54 UTC (buildkit.dockerfile.v0)ENV LANG=en_US.utf8
2025-11-14 19:17:54 UTC (buildkit.dockerfile.v0)RUN /bin/sh -c mkdir /docker-entrypoint-initdb.d # buildkit
2025-11-14 19:17:54 UTC (buildkit.dockerfile.v0)ENV PG_MAJOR=17
2025-11-14 19:17:54 UTC (buildkit.dockerfile.v0)ENV PG_VERSION=17.7
2025-11-14 19:17:54 UTC (buildkit.dockerfile.v0)ENV PG_SHA256=ef9e343302eccd33112f1b2f0247be493cb5768313adeb558b02de8797a2e9b5
2025-11-14 19:17:54 UTC (buildkit.dockerfile.v0)ENV DOCKER_PG_LLVM_DEPS=llvm19-dev clang19
2025-11-14 19:20:04 UTC (buildkit.dockerfile.v0)RUN /bin/sh -c set -eux; wget -O postgresql.tar.bz2 "https://ftp.postgresql.org/pub/source/v$PG_VERSION/postgresql-$PG_VERSION.tar.bz2"; echo "$PG_SHA256 *postgresql.tar.bz2" | sha256sum -c -; mkdir -p /usr/src/postgresql; tar --extract --file postgresql.tar.bz2 --directory /usr/src/postgresql --strip-components 1 ; rm postgresql.tar.bz2; apk add --no-cache --virtual .build-deps $DOCKER_PG_LLVM_DEPS bison coreutils dpkg-dev dpkg flex g++ gcc krb5-dev libc-dev libedit-dev libxml2-dev libxslt-dev linux-headers make openldap-dev openssl-dev perl-dev perl-ipc-run perl-utils python3-dev tcl-dev util-linux-dev zlib-dev icu-dev lz4-dev zstd-dev ; cd /usr/src/postgresql; awk '$1 == "#define" && $2 == "DEFAULT_PGSOCKET_DIR" && $3 == "\"/tmp\"" { $3 = "\"/var/run/postgresql\""; print; next } { print }' src/include/pg_config_manual.h > src/include/pg_config_manual.h.new; grep '/var/run/postgresql' src/include/pg_config_manual.h.new; mv src/include/pg_config_manual.h.new src/include/pg_config_manual.h; gnuArch="$(dpkg-architecture --query DEB_BUILD_GNU_TYPE)"; export LLVM_CONFIG="/usr/lib/llvm19/bin/llvm-config"; export CLANG=clang-19; ./configure --enable-option-checking=fatal --build="$gnuArch" --enable-integer-datetimes --enable-tap-tests --disable-rpath --with-uuid=e2fs --with-pgport=5432 --with-system-tzdata=/usr/share/zoneinfo --prefix=/usr/local --with-includes=/usr/local/include --with-libraries=/usr/local/lib --with-gssapi --with-icu --with-ldap --with-libxml --with-libxslt --with-llvm --with-lz4 --with-openssl --with-perl --with-python --with-tcl --with-zstd ; make -j "$(nproc)" world-bin; make install-world-bin; make -C contrib install; runDeps="$( scanelf --needed --nobanner --format '%n#p' --recursive /usr/local | tr ',' '\n' | sort -u | awk 'system("[ -e /usr/local/lib/" $1 " ]") == 0 { next } { print "so:" $1 }' | grep -v -e perl -e python -e tcl )"; apk add --no-cache --virtual .postgresql-rundeps $runDeps bash tzdata zstd icu-data-full $([ "$(apk --print-arch)" != 'ppc64le' ] && echo 'nss_wrapper') ; apk del --no-network .build-deps; cd /; rm -rf /usr/src/postgresql /usr/local/share/doc /usr/local/share/man ; postgres --version # buildkit
2025-11-14 19:20:05 UTC (buildkit.dockerfile.v0)RUN /bin/sh -c set -eux; cp -v /usr/local/share/postgresql/postgresql.conf.sample /usr/local/share/postgresql/postgresql.conf.sample.orig; sed -ri "s!^#?(listen_addresses)\s*=\s*\S+.*!\1 = '*'!" /usr/local/share/postgresql/postgresql.conf.sample; grep -F "listen_addresses = '*'" /usr/local/share/postgresql/postgresql.conf.sample # buildkit
2025-11-14 19:20:05 UTC (buildkit.dockerfile.v0)RUN /bin/sh -c install --verbose --directory --owner postgres --group postgres --mode 3777 /var/run/postgresql # buildkit
2025-11-14 19:20:05 UTC (buildkit.dockerfile.v0)ENV PGDATA=/var/lib/postgresql/data
2025-11-14 19:20:05 UTC (buildkit.dockerfile.v0)RUN /bin/sh -c install --verbose --directory --owner postgres --group postgres --mode 1777 "$PGDATA" # buildkit
2025-11-14 19:20:05 UTC (buildkit.dockerfile.v0)VOLUME [/var/lib/postgresql/data]
2025-11-14 19:20:05 UTC (buildkit.dockerfile.v0)COPY docker-entrypoint.sh docker-ensure-initdb.sh /usr/local/bin/ # buildkit
2025-11-14 19:20:05 UTC (buildkit.dockerfile.v0)RUN /bin/sh -c ln -sT docker-ensure-initdb.sh /usr/local/bin/docker-enforce-initdb.sh # buildkit
2025-11-14 19:20:05 UTC (buildkit.dockerfile.v0)ENTRYPOINT ["docker-entrypoint.sh"]
2025-11-14 19:20:05 UTC (buildkit.dockerfile.v0)STOPSIGNAL SIGINT
2025-11-14 19:20:05 UTC (buildkit.dockerfile.v0)EXPOSE map[5432/tcp:{}]
2025-11-14 19:20:05 UTC (buildkit.dockerfile.v0)CMD ["postgres"]