Namespace
dpage
Image / Tag
pgadmin4:9.11
Content Digest
sha256:50700ac17936d0227f9e3e4bb086a91efb67064debc4b4737c35545bf1564088
Details
Created

2025-12-08 17:13:09 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

8dfa08b1959d9d15838a1c2dab77dc8d8ff4a553a1ed046dfacbc8095c6d42fc

PYTHON_VERSION

3.14.1


Layers

[#000] sha256:014e56e613968f73cce0858124ca5fbc601d7888099969a4eea69f31dcd71a53 - 2.09% (3.68 MB)

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

[#002] sha256:65c1fa3fdd46d8b101a69bd9cb489d9b5db0aea7ab6e3ff91ab2a4d71251cf53 - 7.24% (12.7 MB)

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

[#004] sha256:94937133806c4b9b117aa508b41a22dc27ff651992876d1d44282b5458ab06ee - 4.72% (8.31 MB)

[#005] sha256:7c802ae3d8151e84f86c5290ad69da43c98e9e65392050e2a63bd2460baff8ad - 58.1% (102 MB)

[#006] sha256:eb13c093764648dae849db8675adb75dba4a590ce5bae04c8f31513820b075bd - 2.3% (4.05 MB)

[#007] sha256:6a37ad29194baaec4217716f82c3c605f5dda43a2334ecf3d2fa2595038b5c2a - 0.14% (261 KB)

[#008] sha256:2e0b10cc268517c75fffb36b40d031eaa489bc6d690b381aff9bfa2493d0b5fd - 0.0% (191 Bytes)

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

[#010] sha256:15ab2d8956c2b3dbfd02e9d8dcdb9a0dac423e2f817875e851fd5333276ada14 - 6.05% (10.6 MB)

[#011] sha256:492d1b824f14621e1676a53867f00b981744e631d6ae307ef7155e842fefd10b - 19.03% (33.5 MB)

[#012] sha256:9de99ec4bb9f06fe8a299ff4c1b0c35b1983b05ec0c250d8ff8d2c68b2c11c2c - 0.0% (648 Bytes)

[#013] sha256:fe9d1d6c97263052163ff56f88f11ebc4b93111e6a41417a6f554af3d2bab9c7 - 0.0% (3.03 KB)

[#014] sha256:06949fa92b4cf013ea28913bdca7b712770a65665ea4fbbbdb3a359026eae70c - 0.0% (781 Bytes)

[#015] sha256:c6538f601d4e4bd7008e2ee57a611ce07c4ccd1c2515ea9ffea97b956f223b5b - 0.09% (155 KB)


History
2025-12-03 19:30:18 UTC (buildkit.dockerfile.v0)

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

2025-12-03 19:30:18 UTC (buildkit.dockerfile.v0)

CMD ["/bin/sh"]

2025-12-04 00:34:49 UTC (buildkit.dockerfile.v0)

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

2025-12-04 00:34:49 UTC (buildkit.dockerfile.v0)

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

2025-12-04 00:34:49 UTC (buildkit.dockerfile.v0)

ENV PYTHON_VERSION=3.14.1

2025-12-04 00:34:49 UTC (buildkit.dockerfile.v0)

ENV PYTHON_SHA256=8dfa08b1959d9d15838a1c2dab77dc8d8ff4a553a1ed046dfacbc8095c6d42fc

2025-12-04 00:37:29 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

2025-12-04 00:37:29 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

2025-12-04 00:37:29 UTC (buildkit.dockerfile.v0)

CMD ["python3"]

2025-12-08 17:01:47 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

2025-12-08 17:10:45 UTC (buildkit.dockerfile.v0)

COPY /venv /venv # buildkit

2025-12-08 17:10:45 UTC (buildkit.dockerfile.v0)

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

2025-12-08 17:10:45 UTC (buildkit.dockerfile.v0)

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

2025-12-08 17:10:45 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

2025-12-08 17:10:46 UTC (buildkit.dockerfile.v0)

WORKDIR /pgadmin4

2025-12-08 17:13:00 UTC (buildkit.dockerfile.v0)

ENV PYTHONPATH=/pgadmin4

2025-12-08 17:13:00 UTC (buildkit.dockerfile.v0)

COPY /pgadmin4/web /pgadmin4 # buildkit

2025-12-08 17:13:01 UTC (buildkit.dockerfile.v0)

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

2025-12-08 17:13:01 UTC (buildkit.dockerfile.v0)

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

2025-12-08 17:13:01 UTC (buildkit.dockerfile.v0)

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

2025-12-08 17:13:01 UTC (buildkit.dockerfile.v0)

COPY LICENSE /pgadmin4/LICENSE # buildkit

2025-12-08 17:13:09 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

2025-12-08 17:13:09 UTC (buildkit.dockerfile.v0)

USER 5050

2025-12-08 17:13:09 UTC (buildkit.dockerfile.v0)

VOLUME [/var/lib/pgadmin]

2025-12-08 17:13:09 UTC (buildkit.dockerfile.v0)

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

2025-12-08 17:13:09 UTC (buildkit.dockerfile.v0)

ENTRYPOINT ["/entrypoint.sh"]

Details
Created

2025-12-08 17:09:00 UTC

Size

175 MB

Content Digest
Environment
PATH

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

PYTHONPATH

/pgadmin4

PYTHON_SHA256

8dfa08b1959d9d15838a1c2dab77dc8d8ff4a553a1ed046dfacbc8095c6d42fc

PYTHON_VERSION

3.14.1


Layers

[#000] sha256:0bd713040ebbdef7247f70b0753f8fb2f410e8eb358e95af409a8412b9847d78 - 2.29% (4 MB)

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

[#002] sha256:b21c4b594d5a63629cffbc9f893cae52b9049733757822b0bfcc18340e3c5b9b - 7.33% (12.8 MB)

[#003] sha256:ad54cc30207c6b7557316eae47444bcff7a44a26f625dc84d30d0b9388685508 - 0.0% (248 Bytes)

[#004] sha256:e33af43f01d7879e51ab1e664c8b26a28bb813ccbdd8c09f5be1b5c37fd76bf4 - 4.86% (8.52 MB)

[#005] sha256:75d7ef232ccfbdfd04769af7787c434e47fffef95a1c45430195daaa50eee1b0 - 57.56% (101 MB)

[#006] sha256:9f00e79a8b3a39e98d17becc0a1eed6183e43a873ea690182f0d6c9f41ceeb8b - 2.26% (3.95 MB)

[#007] sha256:612db0a85fe4ed8498f7bf118658eba92b3eb3326de31f3e0f5de97d6598a1e1 - 0.15% (264 KB)

[#008] sha256:d078cc9bc14c223460d857a903cf02b745640a9471d9c7388e09e43a67bcf3fc - 0.0% (189 Bytes)

[#009] sha256:05f7ad94fa12a69066f9c205ade7c223213a7a2a7fe15fca25ae81cd0907c26f - 0.0% (98 Bytes)

[#010] sha256:d1f53508236c369db016b1e5ccf7357d82e3d3dfacd4a25ea4f92c82547d66ff - 6.08% (10.6 MB)

[#011] sha256:ae1d9dc240759ef93bf5609f480f258d18ec07d75bd8da3a67ef3e229f69e967 - 19.14% (33.5 MB)

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

[#013] sha256:fe9d1d6c97263052163ff56f88f11ebc4b93111e6a41417a6f554af3d2bab9c7 - 0.0% (3.03 KB)

[#014] sha256:2f34f33d4158cbd08384e85ec843c3756e752c220366733b8947a591b445af41 - 0.0% (781 Bytes)

[#015] sha256:cb66507b6342c0eaf333f2f3229aa3c9708b4bf941ba1a62ce2354b385e4e290 - 0.09% (155 KB)


History
2025-12-03 19:30:17 UTC (buildkit.dockerfile.v0)

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

2025-12-03 19:30:17 UTC (buildkit.dockerfile.v0)

CMD ["/bin/sh"]

2025-12-04 00:35:12 UTC (buildkit.dockerfile.v0)

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

2025-12-04 00:35:12 UTC (buildkit.dockerfile.v0)

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

2025-12-04 00:35:12 UTC (buildkit.dockerfile.v0)

ENV PYTHON_VERSION=3.14.1

2025-12-04 00:35:12 UTC (buildkit.dockerfile.v0)

ENV PYTHON_SHA256=8dfa08b1959d9d15838a1c2dab77dc8d8ff4a553a1ed046dfacbc8095c6d42fc

2025-12-04 00:37: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

2025-12-04 00:37: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

2025-12-04 00:37:46 UTC (buildkit.dockerfile.v0)

CMD ["python3"]

2025-12-08 17:01:43 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

2025-12-08 17:06:43 UTC (buildkit.dockerfile.v0)

COPY /venv /venv # buildkit

2025-12-08 17:06:44 UTC (buildkit.dockerfile.v0)

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

2025-12-08 17:06:44 UTC (buildkit.dockerfile.v0)

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

2025-12-08 17:06:44 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

2025-12-08 17:06:44 UTC (buildkit.dockerfile.v0)

WORKDIR /pgadmin4

2025-12-08 17:08:55 UTC (buildkit.dockerfile.v0)

ENV PYTHONPATH=/pgadmin4

2025-12-08 17:08:55 UTC (buildkit.dockerfile.v0)

COPY /pgadmin4/web /pgadmin4 # buildkit

2025-12-08 17:08:55 UTC (buildkit.dockerfile.v0)

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

2025-12-08 17:08:55 UTC (buildkit.dockerfile.v0)

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

2025-12-08 17:08:55 UTC (buildkit.dockerfile.v0)

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

2025-12-08 17:08:55 UTC (buildkit.dockerfile.v0)

COPY LICENSE /pgadmin4/LICENSE # buildkit

2025-12-08 17:09: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

2025-12-08 17:09:00 UTC (buildkit.dockerfile.v0)

USER 5050

2025-12-08 17:09:00 UTC (buildkit.dockerfile.v0)

VOLUME [/var/lib/pgadmin]

2025-12-08 17:09:00 UTC (buildkit.dockerfile.v0)

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

2025-12-08 17:09: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