Namespace
dpage
Image / Tag
pgadmin4:2026-02-02-2
Content Digest
sha256:612d4b1d3785f11dc186e46c650590c6551e1083bfc24a4ed9464f50db9695df
Details
Created

2026-02-02 13:38:28 UTC

Size

177 MB

Content Digest
Environment
PATH

/usr/local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin

PYTHONPATH

/pgadmin4

PYTHON_SHA256

ce543ab854bc256b61b71e9b27f831ffd1bfd60a479d639f8be7f9757cf573e9

PYTHON_VERSION

3.14.2


Layers

[#000] sha256:589002ba0eaed121a1dbf42f6648f29e5be55d5c8a6ee0f8eaa0285cc21ac153 - 2.08% (3.68 MB)

[#001] sha256:6a6e0b1647863beafdee1aebbdaeaeb2fda3507fe7e1339bbdd208cc1e50a840 - 0.25% (450 KB)

[#002] sha256:ff83b2b57ff13d7d3ad1ccc77ff3a507c3ec3e1e2114fe6a549e922337320e8e - 7.18% (12.7 MB)

[#003] sha256:bd701e501660028c5c9421ae4ad32b775dd4677863eebf922cab66ae731ee6f7 - 0.0% (249 Bytes)

[#004] sha256:4c83e0b04ebe0b08682dc85c40978fa0f581af122f6ea5cf95f05ab87aebb24c - 4.79% (8.49 MB)

[#005] sha256:ab17806f53e3f03e42bc3c6d55940eaca5167c8eafef8d0e03627549717c2b02 - 58.11% (103 MB)

[#006] sha256:8565762de0e4350bdbb3bf8f6206a36ff3a36b39a17eea8b29152d3343f8f88d - 2.28% (4.05 MB)

[#007] sha256:5cf2e89a50a2f520c3763e1ba05c30f388223f01bfe94ee93bbdd0c63986ee84 - 0.14% (261 KB)

[#008] sha256:e1c23dbb4b5984a650628cb0034c5f59d7826bd8bc474be022a304fabe57d96e - 0.0% (190 Bytes)

[#009] sha256:8d519fc2ec5670957eaa395a7778385d10b8745887fb783e8bc2eefbcc663a26 - 0.0% (98 Bytes)

[#010] sha256:9e8248053982feacb61551b07046aa0ce9e34f7914bc0dd20752e04ef0276987 - 6.03% (10.7 MB)

[#011] sha256:7fbc3cf861664b734f51eb1be4d829c3e5facc2eb1b0414f4cc4d4794f0c3f46 - 19.05% (33.8 MB)

[#012] sha256:0b7fb37104bbb1f02a925ca26b878477f7f6d88ec763c5bfd0d49bbf9173a2fd - 0.0% (648 Bytes)

[#013] sha256:3e2aa9360881ceef87b1e46e7b2b97e0e443281db7c6b36f7012fef95825b68a - 0.0% (3.13 KB)

[#014] sha256:6917a3c8583072cec587af62a8cae85e2bba6a5cbade6f9026efc0d851fb55e6 - 0.0% (781 Bytes)

[#015] sha256:a4c46db92d0285e0deb5b228791a66d0f1837c65bdc74209616c3aa29e8d4321 - 0.09% (162 KB)


History
2026-01-28 01:18:04 UTC (buildkit.dockerfile.v0)

ADD alpine-minirootfs-3.23.3-x86_64.tar.gz / # buildkit

2026-01-28 01:18:04 UTC (buildkit.dockerfile.v0)

CMD ["/bin/sh"]

2026-01-28 03:32:59 UTC (buildkit.dockerfile.v0)

ENV PATH=/usr/local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin

2026-01-28 03:32:59 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c set -eux; apk add --no-cache ca-certificates tzdata ; # buildkit

2026-01-28 03:32:59 UTC (buildkit.dockerfile.v0)

ENV PYTHON_VERSION=3.14.2

2026-01-28 03:32:59 UTC (buildkit.dockerfile.v0)

ENV PYTHON_SHA256=ce543ab854bc256b61b71e9b27f831ffd1bfd60a479d639f8be7f9757cf573e9

2026-01-28 03:35:46 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c set -eux; apk add --no-cache --virtual .build-deps bluez-dev bzip2-dev dpkg-dev dpkg findutils gcc gdbm-dev gnupg libc-dev libffi-dev libnsl-dev libtirpc-dev linux-headers make ncurses-dev openssl-dev pax-utils readline-dev sqlite-dev tar tcl-dev tk tk-dev util-linux-dev xz xz-dev zlib-dev zstd-dev ; wget -O python.tar.xz "https://www.python.org/ftp/python/${PYTHON_VERSION%%[a-z]*}/Python-$PYTHON_VERSION.tar.xz"; echo "$PYTHON_SHA256 *python.tar.xz" | sha256sum -c -; mkdir -p /usr/src/python; tar --extract --directory /usr/src/python --strip-components=1 --file python.tar.xz; rm python.tar.xz; cd /usr/src/python; gnuArch="$(dpkg-architecture --query DEB_BUILD_GNU_TYPE)"; ./configure --build="$gnuArch" --enable-loadable-sqlite-extensions --enable-option-checking=fatal --enable-shared $(test "${gnuArch%%-*}" != 'riscv64' && echo '--with-lto') --with-ensurepip ; nproc="$(nproc)"; EXTRA_CFLAGS="-DTHREAD_STACK_SIZE=0x100000"; LDFLAGS="${LDFLAGS:--Wl},--strip-all"; arch="$(apk --print-arch)"; case "$arch" in x86_64|aarch64) EXTRA_CFLAGS="${EXTRA_CFLAGS:-} -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer"; ;; x86) ;; *) EXTRA_CFLAGS="${EXTRA_CFLAGS:-} -fno-omit-frame-pointer"; ;; esac; make -j "$nproc" "EXTRA_CFLAGS=${EXTRA_CFLAGS:-}" "LDFLAGS=${LDFLAGS:-}" ; rm python; make -j "$nproc" "EXTRA_CFLAGS=${EXTRA_CFLAGS:-}" "LDFLAGS=${LDFLAGS:--Wl},-rpath='\$\$ORIGIN/../lib'" python ; make install; cd /; rm -rf /usr/src/python; find /usr/local -depth \( \( -type d -a \( -name test -o -name tests -o -name idle_test \) \) -o \( -type f -a \( -name '*.pyc' -o -name '*.pyo' -o -name 'libpython*.a' \) \) \) -exec rm -rf '{}' + ; find /usr/local -type f -executable -not \( -name '*tkinter*' \) -exec scanelf --needed --nobanner --format '%n#p' '{}' ';' | tr ',' '\n' | sort -u | awk 'system("[ -e /usr/local/lib/" $1 " ]") == 0 { next } { print "so:" $1 }' | xargs -rt apk add --no-network --virtual .python-rundeps ; apk del --no-network .build-deps; export PYTHONDONTWRITEBYTECODE=1; python3 --version; pip3 --version # buildkit

2026-01-28 03:35:46 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c set -eux; for src in idle3 pip3 pydoc3 python3 python3-config; do dst="$(echo "$src" | tr -d 3)"; [ -s "/usr/local/bin/$src" ]; [ ! -e "/usr/local/bin/$dst" ]; ln -svT "$src" "/usr/local/bin/$dst"; done # buildkit

2026-01-28 03:35:46 UTC (buildkit.dockerfile.v0)

CMD ["python3"]

2026-02-02 13:27:53 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c apk update && apk upgrade && apk add bash postfix krb5-libs libjpeg-turbo shadow sudo tzdata libedit libldap libcap && rm -rf /var/cache/apk/* # buildkit

2026-02-02 13:35:39 UTC (buildkit.dockerfile.v0)

COPY /venv /venv # buildkit

2026-02-02 13:35:39 UTC (buildkit.dockerfile.v0)

COPY /usr/local/pgsql /usr/local/ # buildkit

2026-02-02 13:35:39 UTC (buildkit.dockerfile.v0)

COPY /usr/local/lib/libpq.so.5.18 /usr/lib/liblz4.so.1.10.0 /usr/lib/ # buildkit

2026-02-02 13:35:40 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c ln -s libpq.so.5.18 /usr/lib/libpq.so.5 && ln -s libpq.so.5.18 /usr/lib/libpq.so && ln -s liblz4.so.1.10.0 /usr/lib/liblz4.so.1 # buildkit

2026-02-02 13:35:40 UTC (buildkit.dockerfile.v0)

WORKDIR /pgadmin4

2026-02-02 13:38:19 UTC (buildkit.dockerfile.v0)

ENV PYTHONPATH=/pgadmin4

2026-02-02 13:38:19 UTC (buildkit.dockerfile.v0)

COPY /pgadmin4/web /pgadmin4 # buildkit

2026-02-02 13:38:20 UTC (buildkit.dockerfile.v0)

COPY /pgadmin4/docs/en_US/_build/html/ /pgadmin4/docs # buildkit

2026-02-02 13:38:20 UTC (buildkit.dockerfile.v0)

COPY pkg/docker/run_pgadmin.py pkg/docker/gunicorn_config.py /pgadmin4/ # buildkit

2026-02-02 13:38:20 UTC (buildkit.dockerfile.v0)

COPY pkg/docker/entrypoint.sh /entrypoint.sh # buildkit

2026-02-02 13:38:20 UTC (buildkit.dockerfile.v0)

COPY LICENSE /pgadmin4/LICENSE # buildkit

2026-02-02 13:38:28 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c /venv/bin/python3 -m pip install --no-cache-dir gunicorn==23.0.0 && find / -type d -name '__pycache__' -exec rm -rf {} + && useradd -r -u 5050 -g root -s /sbin/nologin pgadmin && mkdir -p /run/pgadmin /var/lib/pgadmin && chown pgadmin:root /run/pgadmin /var/lib/pgadmin && chmod g=u /var/lib/pgadmin && touch /pgadmin4/config_distro.py && chown pgadmin:root /pgadmin4/config_distro.py && chmod g=u /pgadmin4/config_distro.py && chmod g=u /etc/passwd && setcap CAP_NET_BIND_SERVICE=+eip /usr/local/bin/python3.[0-9][0-9] && echo "pgadmin ALL = NOPASSWD: /usr/sbin/postfix start" > /etc/sudoers.d/postfix && echo "pgadminr ALL = NOPASSWD: /usr/sbin/postfix start" >> /etc/sudoers.d/postfix # buildkit

2026-02-02 13:38:28 UTC (buildkit.dockerfile.v0)

USER 5050

2026-02-02 13:38:28 UTC (buildkit.dockerfile.v0)

VOLUME [/var/lib/pgadmin]

2026-02-02 13:38:28 UTC (buildkit.dockerfile.v0)

EXPOSE map[443/tcp:{} 80/tcp:{}]

2026-02-02 13:38:28 UTC (buildkit.dockerfile.v0)

ENTRYPOINT ["/entrypoint.sh"]

Details
Created

2026-02-02 13:35:00 UTC

Size

176 MB

Content Digest
Environment
PATH

/usr/local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin

PYTHONPATH

/pgadmin4

PYTHON_SHA256

ce543ab854bc256b61b71e9b27f831ffd1bfd60a479d639f8be7f9757cf573e9

PYTHON_VERSION

3.14.2


Layers

[#000] sha256:d8ad8cd72600f46cc068e16c39046ebc76526e41051f43a8c249884b200936c0 - 2.27% (4 MB)

[#001] sha256:217eb6daea6a539678017b05f049f5b9a73edce1373737c5b5f471ff3a13f3cb - 0.25% (452 KB)

[#002] sha256:8ff4bb98855c76b5fb4face7f2ec94fb6ffc5dbc996eb0f5ca50b4823b0e1ee7 - 7.27% (12.8 MB)

[#003] sha256:fd27da92a3729fe1d7a383531f4c67ad67db46e9d2f1bfdf8ec04d2ef5658f6b - 0.0% (249 Bytes)

[#004] sha256:051e9b2a0e93c4aea27fbbe45d3117b7341d63e13001b7e0ae89a6154fdde292 - 4.94% (8.71 MB)

[#005] sha256:72e0ba0ee29309456382f644d494280eaed1da544b15b73de267126bc423c326 - 57.56% (101 MB)

[#006] sha256:63324eab1795da6c734ce6e29b42e6151102aca0261a3e042a790372d3faab87 - 2.24% (3.95 MB)

[#007] sha256:5f096a07aaba00d0577f5b04830411f2100365ac3ef9aa1fec11615d02206b9c - 0.15% (264 KB)

[#008] sha256:1c27c2cbbc0ef78c3d33f438f30c296a40f5b17c96ff9fa14e5ddf8d241158d7 - 0.0% (190 Bytes)

[#009] sha256:88b6a602855804efd2baa28fb5ad487ba43d6a2394033579a077a1fc25c5b119 - 0.0% (98 Bytes)

[#010] sha256:b855d72e16f0b59f730a232eec7532a3af0ec80dc0f6c5bfe7c9c9ab1299ee0b - 6.07% (10.7 MB)

[#011] sha256:bfa16d53f1eaf2476282a45cb8ea0f5cafeb481011b7d81e2aa891537fe320ea - 19.16% (33.8 MB)

[#012] sha256:224ec07654f347691debc9d6073377ec03f8eeac6f164ef88084fa910ed6256e - 0.0% (647 Bytes)

[#013] sha256:3e2aa9360881ceef87b1e46e7b2b97e0e443281db7c6b36f7012fef95825b68a - 0.0% (3.13 KB)

[#014] sha256:4ad9ce7e47f6c94d95f18469f19a863ffbbde1a3dd52d2ee05a68de85d15280b - 0.0% (780 Bytes)

[#015] sha256:ae7a47e158869ac30b2a4e77c2cf00cde5fca5b1bcd829c9f19a851b6fa5e369 - 0.09% (162 KB)


History
2026-01-28 01:18:09 UTC (buildkit.dockerfile.v0)

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

2026-01-28 01:18:09 UTC (buildkit.dockerfile.v0)

CMD ["/bin/sh"]

2026-01-28 03:20:15 UTC (buildkit.dockerfile.v0)

ENV PATH=/usr/local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin

2026-01-28 03:20:15 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c set -eux; apk add --no-cache ca-certificates tzdata ; # buildkit

2026-01-28 03:20:15 UTC (buildkit.dockerfile.v0)

ENV PYTHON_VERSION=3.14.2

2026-01-28 03:20:15 UTC (buildkit.dockerfile.v0)

ENV PYTHON_SHA256=ce543ab854bc256b61b71e9b27f831ffd1bfd60a479d639f8be7f9757cf573e9

2026-01-28 03:26:12 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c set -eux; apk add --no-cache --virtual .build-deps bluez-dev bzip2-dev dpkg-dev dpkg findutils gcc gdbm-dev gnupg libc-dev libffi-dev libnsl-dev libtirpc-dev linux-headers make ncurses-dev openssl-dev pax-utils readline-dev sqlite-dev tar tcl-dev tk tk-dev util-linux-dev xz xz-dev zlib-dev zstd-dev ; wget -O python.tar.xz "https://www.python.org/ftp/python/${PYTHON_VERSION%%[a-z]*}/Python-$PYTHON_VERSION.tar.xz"; echo "$PYTHON_SHA256 *python.tar.xz" | sha256sum -c -; mkdir -p /usr/src/python; tar --extract --directory /usr/src/python --strip-components=1 --file python.tar.xz; rm python.tar.xz; cd /usr/src/python; gnuArch="$(dpkg-architecture --query DEB_BUILD_GNU_TYPE)"; ./configure --build="$gnuArch" --enable-loadable-sqlite-extensions --enable-option-checking=fatal --enable-shared $(test "${gnuArch%%-*}" != 'riscv64' && echo '--with-lto') --with-ensurepip ; nproc="$(nproc)"; EXTRA_CFLAGS="-DTHREAD_STACK_SIZE=0x100000"; LDFLAGS="${LDFLAGS:--Wl},--strip-all"; arch="$(apk --print-arch)"; case "$arch" in x86_64|aarch64) EXTRA_CFLAGS="${EXTRA_CFLAGS:-} -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer"; ;; x86) ;; *) EXTRA_CFLAGS="${EXTRA_CFLAGS:-} -fno-omit-frame-pointer"; ;; esac; make -j "$nproc" "EXTRA_CFLAGS=${EXTRA_CFLAGS:-}" "LDFLAGS=${LDFLAGS:-}" ; rm python; make -j "$nproc" "EXTRA_CFLAGS=${EXTRA_CFLAGS:-}" "LDFLAGS=${LDFLAGS:--Wl},-rpath='\$\$ORIGIN/../lib'" python ; make install; cd /; rm -rf /usr/src/python; find /usr/local -depth \( \( -type d -a \( -name test -o -name tests -o -name idle_test \) \) -o \( -type f -a \( -name '*.pyc' -o -name '*.pyo' -o -name 'libpython*.a' \) \) \) -exec rm -rf '{}' + ; find /usr/local -type f -executable -not \( -name '*tkinter*' \) -exec scanelf --needed --nobanner --format '%n#p' '{}' ';' | tr ',' '\n' | sort -u | awk 'system("[ -e /usr/local/lib/" $1 " ]") == 0 { next } { print "so:" $1 }' | xargs -rt apk add --no-network --virtual .python-rundeps ; apk del --no-network .build-deps; export PYTHONDONTWRITEBYTECODE=1; python3 --version; pip3 --version # buildkit

2026-01-28 03:26:12 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c set -eux; for src in idle3 pip3 pydoc3 python3 python3-config; do dst="$(echo "$src" | tr -d 3)"; [ -s "/usr/local/bin/$src" ]; [ ! -e "/usr/local/bin/$dst" ]; ln -svT "$src" "/usr/local/bin/$dst"; done # buildkit

2026-01-28 03:26:12 UTC (buildkit.dockerfile.v0)

CMD ["python3"]

2026-02-02 13:27:57 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c apk update && apk upgrade && apk add bash postfix krb5-libs libjpeg-turbo shadow sudo tzdata libedit libldap libcap && rm -rf /var/cache/apk/* # buildkit

2026-02-02 13:32:38 UTC (buildkit.dockerfile.v0)

COPY /venv /venv # buildkit

2026-02-02 13:32:38 UTC (buildkit.dockerfile.v0)

COPY /usr/local/pgsql /usr/local/ # buildkit

2026-02-02 13:32:38 UTC (buildkit.dockerfile.v0)

COPY /usr/local/lib/libpq.so.5.18 /usr/lib/liblz4.so.1.10.0 /usr/lib/ # buildkit

2026-02-02 13:32:38 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c ln -s libpq.so.5.18 /usr/lib/libpq.so.5 && ln -s libpq.so.5.18 /usr/lib/libpq.so && ln -s liblz4.so.1.10.0 /usr/lib/liblz4.so.1 # buildkit

2026-02-02 13:32:38 UTC (buildkit.dockerfile.v0)

WORKDIR /pgadmin4

2026-02-02 13:34:55 UTC (buildkit.dockerfile.v0)

ENV PYTHONPATH=/pgadmin4

2026-02-02 13:34:55 UTC (buildkit.dockerfile.v0)

COPY /pgadmin4/web /pgadmin4 # buildkit

2026-02-02 13:34:55 UTC (buildkit.dockerfile.v0)

COPY /pgadmin4/docs/en_US/_build/html/ /pgadmin4/docs # buildkit

2026-02-02 13:34:55 UTC (buildkit.dockerfile.v0)

COPY pkg/docker/run_pgadmin.py pkg/docker/gunicorn_config.py /pgadmin4/ # buildkit

2026-02-02 13:34:55 UTC (buildkit.dockerfile.v0)

COPY pkg/docker/entrypoint.sh /entrypoint.sh # buildkit

2026-02-02 13:34:55 UTC (buildkit.dockerfile.v0)

COPY LICENSE /pgadmin4/LICENSE # buildkit

2026-02-02 13:35:00 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c /venv/bin/python3 -m pip install --no-cache-dir gunicorn==23.0.0 && find / -type d -name '__pycache__' -exec rm -rf {} + && useradd -r -u 5050 -g root -s /sbin/nologin pgadmin && mkdir -p /run/pgadmin /var/lib/pgadmin && chown pgadmin:root /run/pgadmin /var/lib/pgadmin && chmod g=u /var/lib/pgadmin && touch /pgadmin4/config_distro.py && chown pgadmin:root /pgadmin4/config_distro.py && chmod g=u /pgadmin4/config_distro.py && chmod g=u /etc/passwd && setcap CAP_NET_BIND_SERVICE=+eip /usr/local/bin/python3.[0-9][0-9] && echo "pgadmin ALL = NOPASSWD: /usr/sbin/postfix start" > /etc/sudoers.d/postfix && echo "pgadminr ALL = NOPASSWD: /usr/sbin/postfix start" >> /etc/sudoers.d/postfix # buildkit

2026-02-02 13:35:00 UTC (buildkit.dockerfile.v0)

USER 5050

2026-02-02 13:35:00 UTC (buildkit.dockerfile.v0)

VOLUME [/var/lib/pgadmin]

2026-02-02 13:35:00 UTC (buildkit.dockerfile.v0)

EXPOSE map[443/tcp:{} 80/tcp:{}]

2026-02-02 13:35:00 UTC (buildkit.dockerfile.v0)

ENTRYPOINT ["/entrypoint.sh"]

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