Namespace
library
Image / Tag
phpmyadmin:5.2-fpm
Content Digest
sha256:7a17d7f7490ea45390c939639f58ff29beffa69728b2aa329af82ab458e62be5
Details
Created

2025-11-20 20:23:27 UTC

Size

184 MB

Content Digest
Labels
  • org.opencontainers.image.authors
    The phpMyAdmin Team <developers@phpmyadmin.net>
  • org.opencontainers.image.description
    Run phpMyAdmin with Alpine, Apache and PHP FPM.
  • org.opencontainers.image.documentation
    https://github.com/phpmyadmin/docker#readme
  • org.opencontainers.image.licenses
    GPL-2.0-only
  • org.opencontainers.image.source
    https://github.com/phpmyadmin/docker.git
  • org.opencontainers.image.title
    Official phpMyAdmin Docker image
  • org.opencontainers.image.url
    https://github.com/phpmyadmin/docker#readme
  • org.opencontainers.image.vendor
    phpMyAdmin
  • org.opencontainers.image.version
    5.2.3

Environment
GPG_KEYS

1198C0117593497A5EC5C199286AF1F9897469DC C28D937575603EB4ABB725861C0779DC5C0A9DE4 AFD8691FDAEDF03BDF6E460563F15A9B715376CA

MAX_EXECUTION_TIME

600

MEMORY_LIMIT

512M

PATH

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

PHPIZE_DEPS

autoconf dpkg-dev file g++ gcc libc-dev make pkg-config re2c

PHP_ASC_URL

https://www.php.net/distributions/php-8.3.28.tar.xz.asc

PHP_CFLAGS

-fstack-protector-strong -fpic -fpie -O2 -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64

PHP_CPPFLAGS

-fstack-protector-strong -fpic -fpie -O2 -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64

PHP_INI_DIR

/usr/local/etc/php

PHP_LDFLAGS

-Wl,-O1 -pie

PHP_SHA256

25e3860f30198a386242891c0bf9e2955931f7b666b96c3e3103d36a2a322326

PHP_URL

https://www.php.net/distributions/php-8.3.28.tar.xz

PHP_VERSION

8.3.28

PMA_SSL_DIR

/etc/phpmyadmin/ssl

SESSION_SAVE_PATH

/sessions

SHA256

57881348297c4412f86c410547cf76b4d8a236574dd2c6b7d6a2beebe7fc44e3

TZ

UTC

UPLOAD_LIMIT

2048K

UPLOAD_PROGRESS_EXT_URL

https://github.com/php/pecl-php-uploadprogress/archive/refs/tags/uploadprogress-2.0.2.tar.gz

UPLOAD_PROGRESS_SHA256

fe3f6cdfcedad563c970c4fd1cda31e422cfc0df5cc9a217d8c80ed3c8d137f5

URL

https://files.phpmyadmin.net/phpMyAdmin/5.2.3/phpMyAdmin-5.2.3-all-languages.tar.xz

VERSION

5.2.3


Layers

[#000] sha256:8fdd29f45eb19adab28e642f5b411c2aac45db9e7dfc1ab412acdcf1365af598 - 16.22% (29.8 MB)

[#001] sha256:f29b1e871294ed257f00913f03dde53520c4d901bda4ae587318fd83b86bcd25 - 0.0% (225 Bytes)

[#002] sha256:1eec3285e7ac800adb8bed751006a5d5d01d8c35d41e5c9b74ee75f40b383cc0 - 60.21% (111 MB)

[#003] sha256:ff692ae3944caeb0a92f929e2de47d04c1b8e8fc4f5447003ce92fddfacda427 - 0.0% (227 Bytes)

[#004] sha256:17eaae2587121480fab8242d4c660e986a8b511f187044f31c16d0cf5088b70e - 6.61% (12.2 MB)

[#005] sha256:24dc3efce988d1f79e015269e95d02b08d5a5df705bf2dffef02a34ae9a1a3f2 - 0.0% (489 Bytes)

[#006] sha256:71d68c11e538cba7c9540e49185c78f80923e9a4d0db7e8f46f581d1f1603a9d - 6.27% (11.5 MB)

[#007] sha256:0e6183f19fca3ad0a6afedefdb6da5f47fd01e724330f1e2361311d4b4da02e4 - 0.0% (2.4 KB)

[#008] sha256:374bced39d658e1dee298b69f318d5c74d568603bc1e574edaa871577ced3513 - 0.0% (251 Bytes)

[#009] sha256:8f2f50cb33ae145b9a937bb71c2a735f93ab40d40ecbaaee992c5ee65410c731 - 0.0% (246 Bytes)

[#010] sha256:4f4fb700ef54461cfa02571ae0db9a0dc1e0cdb5577484a6d75e68dc38e8acc1 - 0.0% (32 Bytes)

[#011] sha256:c84c2771839b1449022a3ab4ffeac81540eece8135d43db211af1518c2f507b6 - 0.0% (8.97 KB)

[#012] sha256:fbee726f9dd1265a3bdfd8fb6163ea7d4476997602691ba46f8f4c3f633f0abe - 3.37% (6.2 MB)

[#013] sha256:eb659ff81b97b5606a6e85d51e187f8c447fcbf3db8feb0b1107cde7c090105d - 0.0% (654 Bytes)

[#014] sha256:1038ff252c1feefb80708dc3f48aeebd5dbeffc31c8ed3e68e90433e8b1c113f - 7.3% (13.4 MB)

[#015] sha256:c8c671d8e4b293f29cde1e6cb9725bfa6ba03e63b4c2030fe8b3dfe0a2fac1a0 - 0.0% (2.09 KB)

[#016] sha256:dfed55c4513a55c52070ce8fc4105414a9572eec5e72151590ef0ad36978a59a - 0.0% (857 Bytes)

[#017] sha256:ab1c83261f86ecad8ee7b2ccf3f4469a2f8bedb36dbd977b6f1d5eaaa23ea70d - 0.0% (801 Bytes)


History
2025-11-17 00:00:00 UTC (debuerreotype 0.16)

# debian.sh --arch 'i386' out/ 'trixie' '@1763337600'

2025-11-20 20:01:17 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c set -eux; { echo 'Package: php*'; echo 'Pin: release *'; echo 'Pin-Priority: -1'; } > /etc/apt/preferences.d/no-debian-php # buildkit

2025-11-20 20:01:37 UTC (buildkit.dockerfile.v0)

ENV PHPIZE_DEPS=autoconf dpkg-dev file g++ gcc libc-dev make pkg-config re2c

2025-11-20 20:01:37 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c set -eux; apt-get update; apt-get install -y --no-install-recommends $PHPIZE_DEPS ca-certificates curl xz-utils ; apt-get dist-clean # buildkit

2025-11-20 20:01:37 UTC (buildkit.dockerfile.v0)

ENV PHP_INI_DIR=/usr/local/etc/php

2025-11-20 20:01:37 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c set -eux; mkdir -p "$PHP_INI_DIR/conf.d"; [ ! -d /var/www/html ]; mkdir -p /var/www/html; chown www-data:www-data /var/www/html; chmod 1777 /var/www/html # buildkit

2025-11-20 20:01:37 UTC (buildkit.dockerfile.v0)

ENV PHP_CFLAGS=-fstack-protector-strong -fpic -fpie -O2 -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64

2025-11-20 20:01:37 UTC (buildkit.dockerfile.v0)

ENV PHP_CPPFLAGS=-fstack-protector-strong -fpic -fpie -O2 -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64

2025-11-20 20:01:37 UTC (buildkit.dockerfile.v0)

ENV PHP_LDFLAGS=-Wl,-O1 -pie

2025-11-20 20:01:37 UTC (buildkit.dockerfile.v0)

ENV GPG_KEYS=1198C0117593497A5EC5C199286AF1F9897469DC C28D937575603EB4ABB725861C0779DC5C0A9DE4 AFD8691FDAEDF03BDF6E460563F15A9B715376CA

2025-11-20 20:01:37 UTC (buildkit.dockerfile.v0)

ENV PHP_VERSION=8.3.28

2025-11-20 20:01:37 UTC (buildkit.dockerfile.v0)

ENV PHP_URL=https://www.php.net/distributions/php-8.3.28.tar.xz PHP_ASC_URL=https://www.php.net/distributions/php-8.3.28.tar.xz.asc

2025-11-20 20:01:37 UTC (buildkit.dockerfile.v0)

ENV PHP_SHA256=25e3860f30198a386242891c0bf9e2955931f7b666b96c3e3103d36a2a322326

2025-11-20 20:01:48 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c set -eux; savedAptMark="$(apt-mark showmanual)"; apt-get update; apt-get install -y --no-install-recommends gnupg; apt-get dist-clean; mkdir -p /usr/src; cd /usr/src; curl -fsSL -o php.tar.xz "$PHP_URL"; if [ -n "$PHP_SHA256" ]; then echo "$PHP_SHA256 *php.tar.xz" | sha256sum -c -; fi; curl -fsSL -o php.tar.xz.asc "$PHP_ASC_URL"; export GNUPGHOME="$(mktemp -d)"; for key in $GPG_KEYS; do gpg --batch --keyserver keyserver.ubuntu.com --recv-keys "$key"; done; gpg --batch --verify php.tar.xz.asc php.tar.xz; gpgconf --kill all; rm -rf "$GNUPGHOME"; apt-mark auto '.*' > /dev/null; apt-mark manual $savedAptMark > /dev/null; apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false # buildkit

2025-11-20 20:01:48 UTC (buildkit.dockerfile.v0)

COPY docker-php-source /usr/local/bin/ # buildkit

2025-11-20 20:04:46 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c set -eux; savedAptMark="$(apt-mark showmanual)"; apt-get update; apt-get install -y --no-install-recommends libargon2-dev libcurl4-openssl-dev libonig-dev libreadline-dev libsodium-dev libsqlite3-dev libssl-dev libxml2-dev zlib1g-dev ; export CFLAGS="$PHP_CFLAGS" CPPFLAGS="$PHP_CPPFLAGS" LDFLAGS="$PHP_LDFLAGS" PHP_BUILD_PROVIDER='https://github.com/docker-library/php' PHP_UNAME='Linux - Docker' ; docker-php-source extract; cd /usr/src/php; gnuArch="$(dpkg-architecture --query DEB_BUILD_GNU_TYPE)"; debMultiarch="$(dpkg-architecture --query DEB_BUILD_MULTIARCH)"; if [ ! -d /usr/include/curl ]; then ln -sT "/usr/include/$debMultiarch/curl" /usr/local/include/curl; fi; ./configure --build="$gnuArch" --with-config-file-path="$PHP_INI_DIR" --with-config-file-scan-dir="$PHP_INI_DIR/conf.d" --enable-option-checking=fatal --with-mhash --with-pic --enable-mbstring --enable-mysqlnd --with-password-argon2 --with-sodium=shared --with-pdo-sqlite=/usr --with-sqlite3=/usr --with-curl --with-iconv --with-openssl --with-readline --with-zlib --disable-phpdbg --with-pear --with-libdir="lib/$debMultiarch" --disable-cgi --enable-fpm --with-fpm-user=www-data --with-fpm-group=www-data ; make -j "$(nproc)"; find -type f -name '*.a' -delete; make install; find /usr/local -type f -perm '/0111' -exec sh -euxc ' strip --strip-all "$@" || : ' -- '{}' + ; make clean; cp -v php.ini-* "$PHP_INI_DIR/"; cd /; docker-php-source delete; apt-mark auto '.*' > /dev/null; [ -z "$savedAptMark" ] || apt-mark manual $savedAptMark; find /usr/local -type f -executable -exec ldd '{}' ';' | awk '/=>/ { so = $(NF-1); if (index(so, "/usr/local/") == 1) { next }; gsub("^/(usr/)?", "", so); printf "*%s\n", so }' | sort -u | xargs -rt dpkg-query --search | awk 'sub(":$", "", $1) { print $1 }' | sort -u | xargs -r apt-mark manual ; apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false; apt-get dist-clean; pecl update-channels; rm -rf /tmp/pear ~/.pearrc; php --version # buildkit

2025-11-20 20:04:46 UTC (buildkit.dockerfile.v0)

COPY docker-php-ext-* docker-php-entrypoint /usr/local/bin/ # buildkit

2025-11-20 20:04:46 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c docker-php-ext-enable opcache # buildkit

2025-11-20 20:04:46 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c docker-php-ext-enable sodium # buildkit

2025-11-20 20:04:46 UTC (buildkit.dockerfile.v0)

ENTRYPOINT ["docker-php-entrypoint"]

2025-11-20 20:04:46 UTC (buildkit.dockerfile.v0)

WORKDIR /var/www/html

2025-11-20 20:04:46 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c set -eux; cd /usr/local/etc; if [ -d php-fpm.d ]; then sed 's!=NONE/!=!g' php-fpm.conf.default | tee php-fpm.conf > /dev/null; cp php-fpm.d/www.conf.default php-fpm.d/www.conf; else mkdir php-fpm.d; cp php-fpm.conf.default php-fpm.d/www.conf; { echo '[global]'; echo 'include=etc/php-fpm.d/*.conf'; } | tee php-fpm.conf; fi; { echo '[global]'; echo 'error_log = /proc/self/fd/2'; echo; echo '; https://github.com/docker-library/php/pull/725#issuecomment-443540114'; echo 'log_limit = 8192'; echo; echo '[www]'; echo '; php-fpm closes STDOUT on startup, so sending logs to /proc/self/fd/1 does not work.'; echo '; https://bugs.php.net/bug.php?id=73886'; echo 'access.log = /proc/self/fd/2'; echo; echo 'clear_env = no'; echo; echo '; Ensure worker stdout and stderr are sent to the main error log.'; echo 'catch_workers_output = yes'; echo 'decorate_workers_output = no'; } | tee php-fpm.d/docker.conf; { echo '[global]'; echo 'daemonize = no'; echo; echo '[www]'; echo 'listen = 9000'; } | tee php-fpm.d/zz-docker.conf; mkdir -p "$PHP_INI_DIR/conf.d"; { echo '; https://github.com/docker-library/php/issues/878#issuecomment-938595965'; echo 'fastcgi.logging = Off'; } > "$PHP_INI_DIR/conf.d/docker-fpm.ini" # buildkit

2025-11-20 20:04:46 UTC (buildkit.dockerfile.v0)

STOPSIGNAL SIGQUIT

2025-11-20 20:04:46 UTC (buildkit.dockerfile.v0)

EXPOSE map[9000/tcp:{}]

2025-11-20 20:04:46 UTC (buildkit.dockerfile.v0)

CMD ["php-fpm"]

2025-11-20 20:23:21 UTC (buildkit.dockerfile.v0)

ENV UPLOAD_PROGRESS_EXT_URL=https://github.com/php/pecl-php-uploadprogress/archive/refs/tags/uploadprogress-2.0.2.tar.gz

2025-11-20 20:23:21 UTC (buildkit.dockerfile.v0)

ENV UPLOAD_PROGRESS_SHA256=fe3f6cdfcedad563c970c4fd1cda31e422cfc0df5cc9a217d8c80ed3c8d137f5

2025-11-20 20:23:21 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c set -ex; apt-get update; apt-get install -y --no-install-recommends gnupg dirmngr ; savedAptMark="$(apt-mark showmanual)"; apt-get install -y --no-install-recommends libbz2-dev libfreetype6-dev libjpeg-dev libpng-dev libwebp-dev libxpm-dev libzip-dev ; mkdir -p /tmp/uploadprogress; curl -fsSL -o /tmp/uploadprogress/uploadprogress.tar.gz "$UPLOAD_PROGRESS_EXT_URL"; echo "$UPLOAD_PROGRESS_SHA256 /tmp/uploadprogress/uploadprogress.tar.gz" | sha256sum -c -; tar -xf /tmp/uploadprogress/uploadprogress.tar.gz -C /tmp/uploadprogress --strip-components=1; docker-php-ext-configure gd --with-freetype --with-jpeg --with-webp --with-xpm; docker-php-ext-install -j "$(nproc)" bz2 gd mysqli opcache zip bcmath /tmp/uploadprogress ; rm -r /tmp/uploadprogress; apt-mark auto '.*' > /dev/null; apt-mark manual $savedAptMark; extdir="$(php -r 'echo ini_get("extension_dir");')"; ldd "$extdir"/*.so | awk '/=>/ { so = $(NF-1); if (index(so, "/usr/local/") == 1) { next }; gsub("^/(usr/)?", "", so); print so }' | sort -u | xargs -r dpkg-query -S | cut -d: -f1 | sort -u | xargs -rt apt-mark manual; apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false; rm -rf /var/lib/apt/lists/*; ldd "$extdir"/*.so | grep -qzv "=> not found" || (echo "Sanity check failed: missing libraries:"; ldd "$extdir"/*.so | grep " => not found"; exit 1); ldd "$extdir"/*.so | grep -q "libzip.so.* => .*/libzip.so.*" || (echo "Sanity check failed: libzip.so is not referenced"; ldd "$extdir"/*.so; exit 1); err="$(php --version 3>&1 1>&2 2>&3)"; [ -z "$err" ] || (echo "Sanity check failed: php returned errors; $err"; exit 1;); # buildkit

2025-11-20 20:23:21 UTC (buildkit.dockerfile.v0)

ENV PMA_SSL_DIR=/etc/phpmyadmin/ssl

2025-11-20 20:23:21 UTC (buildkit.dockerfile.v0)

ENV MAX_EXECUTION_TIME=600

2025-11-20 20:23:21 UTC (buildkit.dockerfile.v0)

ENV MEMORY_LIMIT=512M

2025-11-20 20:23:21 UTC (buildkit.dockerfile.v0)

ENV UPLOAD_LIMIT=2048K

2025-11-20 20:23:21 UTC (buildkit.dockerfile.v0)

ENV TZ=UTC

2025-11-20 20:23:21 UTC (buildkit.dockerfile.v0)

ENV SESSION_SAVE_PATH=/sessions

2025-11-20 20:23:21 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c set -ex; mkdir $SESSION_SAVE_PATH; mkdir -p $PMA_SSL_DIR; chmod 1777 $SESSION_SAVE_PATH; chmod 755 $PMA_SSL_DIR; chown www-data:www-data /etc/phpmyadmin; chown www-data:www-data $PMA_SSL_DIR; chown www-data:www-data $SESSION_SAVE_PATH; { echo 'opcache.memory_consumption=128'; echo 'opcache.interned_strings_buffer=8'; echo 'opcache.max_accelerated_files=4000'; echo 'opcache.revalidate_freq=2'; echo 'opcache.fast_shutdown=1'; } > $PHP_INI_DIR/conf.d/opcache-recommended.ini; { echo 'session.cookie_httponly=1'; echo 'session.use_strict_mode=1'; } > $PHP_INI_DIR/conf.d/session-strict.ini; { echo 'allow_url_fopen=Off'; echo 'max_execution_time=${MAX_EXECUTION_TIME}'; echo 'max_input_vars=10000'; echo 'memory_limit=${MEMORY_LIMIT}'; echo 'post_max_size=${UPLOAD_LIMIT}'; echo 'upload_max_filesize=${UPLOAD_LIMIT}'; echo 'date.timezone=${TZ}'; echo 'session.save_path=${SESSION_SAVE_PATH}'; } > $PHP_INI_DIR/conf.d/phpmyadmin-misc.ini # buildkit

2025-11-20 20:23:21 UTC (buildkit.dockerfile.v0)

USER www-data:www-data

2025-11-20 20:23:21 UTC (buildkit.dockerfile.v0)

ENV VERSION=5.2.3

2025-11-20 20:23:21 UTC (buildkit.dockerfile.v0)

ENV SHA256=57881348297c4412f86c410547cf76b4d8a236574dd2c6b7d6a2beebe7fc44e3

2025-11-20 20:23:21 UTC (buildkit.dockerfile.v0)

ENV URL=https://files.phpmyadmin.net/phpMyAdmin/5.2.3/phpMyAdmin-5.2.3-all-languages.tar.xz

2025-11-20 20:23:21 UTC (buildkit.dockerfile.v0)

LABEL org.opencontainers.image.title=Official phpMyAdmin Docker image org.opencontainers.image.description=Run phpMyAdmin with Alpine, Apache and PHP FPM. org.opencontainers.image.authors=The phpMyAdmin Team <developers@phpmyadmin.net> org.opencontainers.image.vendor=phpMyAdmin org.opencontainers.image.documentation=https://github.com/phpmyadmin/docker#readme org.opencontainers.image.licenses=GPL-2.0-only org.opencontainers.image.version=5.2.3 org.opencontainers.image.url=https://github.com/phpmyadmin/docker#readme org.opencontainers.image.source=https://github.com/phpmyadmin/docker.git

2025-11-20 20:23:27 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c set -ex; export GNUPGHOME="$(mktemp -d)"; export GPGKEY="3D06A59ECE730EB71B511C17CE752F178259BD92"; curl -fsSL -o phpMyAdmin.tar.xz $URL; curl -fsSL -o phpMyAdmin.tar.xz.asc $URL.asc; echo "$SHA256 *phpMyAdmin.tar.xz" | sha256sum -c -; gpg --batch --keyserver keyserver.ubuntu.com --recv-keys "$GPGKEY" || gpg --batch --keyserver pgp.mit.edu --recv-keys "$GPGKEY" || gpg --batch --keyserver keyserver.pgp.com --recv-keys "$GPGKEY" || gpg --batch --keyserver keys.openpgp.org --recv-keys "$GPGKEY"; gpg --batch --verify phpMyAdmin.tar.xz.asc phpMyAdmin.tar.xz; tar -xf phpMyAdmin.tar.xz -C /var/www/html --strip-components=1; mkdir -p /var/www/html/tmp; gpgconf --kill all; rm -r "$GNUPGHOME" phpMyAdmin.tar.xz phpMyAdmin.tar.xz.asc; rm -r -v /var/www/html/setup/ /var/www/html/examples/ /var/www/html/js/src/ /var/www/html/babel.config.json /var/www/html/doc/html/_sources/ /var/www/html/RELEASE-DATE-$VERSION /var/www/html/CONTRIBUTING.md; grep -q -F "'configFile' => ROOT_PATH . 'config.inc.php'," /var/www/html/libraries/vendor_config.php; sed -i "s@'configFile' => .*@'configFile' => '/etc/phpmyadmin/config.inc.php',@" /var/www/html/libraries/vendor_config.php; grep -q -F "'configFile' => '/etc/phpmyadmin/config.inc.php'," /var/www/html/libraries/vendor_config.php; php -l /var/www/html/libraries/vendor_config.php; find /var/www/html -type d -exec chmod 555 {} \;; find /var/www/html -type f -exec chmod 444 {} \;; chmod 1777 /var/www/html/tmp; # buildkit

2025-11-20 20:23:27 UTC (buildkit.dockerfile.v0)

COPY --chown=www-data:www-data config.inc.php /etc/phpmyadmin/config.inc.php # buildkit

2025-11-20 20:23:27 UTC (buildkit.dockerfile.v0)

COPY --chown=www-data:www-data helpers.php /etc/phpmyadmin/helpers.php # buildkit

2025-11-20 20:23:27 UTC (buildkit.dockerfile.v0)

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

2025-11-20 20:23:27 UTC (buildkit.dockerfile.v0)

USER root

2025-11-20 20:23:27 UTC (buildkit.dockerfile.v0)

ENTRYPOINT ["/docker-entrypoint.sh"]

2025-11-20 20:23:27 UTC (buildkit.dockerfile.v0)

CMD ["php-fpm"]

Details
Created

2025-11-20 21:03:44 UTC

Size

184 MB

Content Digest
Labels
  • org.opencontainers.image.authors
    The phpMyAdmin Team <developers@phpmyadmin.net>
  • org.opencontainers.image.description
    Run phpMyAdmin with Alpine, Apache and PHP FPM.
  • org.opencontainers.image.documentation
    https://github.com/phpmyadmin/docker#readme
  • org.opencontainers.image.licenses
    GPL-2.0-only
  • org.opencontainers.image.source
    https://github.com/phpmyadmin/docker.git
  • org.opencontainers.image.title
    Official phpMyAdmin Docker image
  • org.opencontainers.image.url
    https://github.com/phpmyadmin/docker#readme
  • org.opencontainers.image.vendor
    phpMyAdmin
  • org.opencontainers.image.version
    5.2.3

Environment
GPG_KEYS

1198C0117593497A5EC5C199286AF1F9897469DC C28D937575603EB4ABB725861C0779DC5C0A9DE4 AFD8691FDAEDF03BDF6E460563F15A9B715376CA

MAX_EXECUTION_TIME

600

MEMORY_LIMIT

512M

PATH

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

PHPIZE_DEPS

autoconf dpkg-dev file g++ gcc libc-dev make pkg-config re2c

PHP_ASC_URL

https://www.php.net/distributions/php-8.3.28.tar.xz.asc

PHP_CFLAGS

-fstack-protector-strong -fpic -fpie -O2 -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64

PHP_CPPFLAGS

-fstack-protector-strong -fpic -fpie -O2 -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64

PHP_INI_DIR

/usr/local/etc/php

PHP_LDFLAGS

-Wl,-O1 -pie

PHP_SHA256

25e3860f30198a386242891c0bf9e2955931f7b666b96c3e3103d36a2a322326

PHP_URL

https://www.php.net/distributions/php-8.3.28.tar.xz

PHP_VERSION

8.3.28

PMA_SSL_DIR

/etc/phpmyadmin/ssl

SESSION_SAVE_PATH

/sessions

SHA256

57881348297c4412f86c410547cf76b4d8a236574dd2c6b7d6a2beebe7fc44e3

TZ

UTC

UPLOAD_LIMIT

2048K

UPLOAD_PROGRESS_EXT_URL

https://github.com/php/pecl-php-uploadprogress/archive/refs/tags/uploadprogress-2.0.2.tar.gz

UPLOAD_PROGRESS_SHA256

fe3f6cdfcedad563c970c4fd1cda31e422cfc0df5cc9a217d8c80ed3c8d137f5

URL

https://files.phpmyadmin.net/phpMyAdmin/5.2.3/phpMyAdmin-5.2.3-all-languages.tar.xz

VERSION

5.2.3


Layers

[#000] sha256:0e4bc2bd6656e6e004e3c749af70e5650bac2258243eb0949dea51cb8b7863db - 15.46% (28.4 MB)

[#001] sha256:47706e76e39c8c94dad95273f761f8e7071236bd46329fe692a30d0203c4d9a0 - 0.0% (225 Bytes)

[#002] sha256:366713611e0ffc22f9fff716950ee2628cf9b430b0d7775ac46e01956b689bc8 - 61.17% (112 MB)

[#003] sha256:5d16d1f0a0630cc712ab560cd505e909924a426dd4d0300cd80d426cd7d0a61b - 0.0% (225 Bytes)

[#004] sha256:e1c09bcb3777d8cc7b69550e2ce888619de2fb5c85c4dc845169c96adf4cae3e - 6.62% (12.2 MB)

[#005] sha256:e05e6fb0c35523d0c25bdd9baf7d5c14f0ec4d9be56cf68767ac0202e5f7589b - 0.0% (490 Bytes)

[#006] sha256:ad3c2c08cba475ab228ea58e07da8c9b77cc40f05e8de5bdd1f6e1ccf0dd3322 - 6.18% (11.3 MB)

[#007] sha256:c03026bb9f66e83f3b54a24a6be7c80b0ac943a515c69c0f3ac49e98a4810c9f - 0.0% (2.39 KB)

[#008] sha256:e4c1e6950820e677dfd9a8dd414f9eeff45b9bdd75ec03bfe0dc5e4ad8efb30c - 0.0% (250 Bytes)

[#009] sha256:e3bb5c4f59cc36a7d934179cc11f6949a94dd94b660517ca388462045bf0a140 - 0.0% (245 Bytes)

[#010] sha256:4f4fb700ef54461cfa02571ae0db9a0dc1e0cdb5577484a6d75e68dc38e8acc1 - 0.0% (32 Bytes)

[#011] sha256:eb7d5db169194f7e9d83cc0216578337242284a075a0b9d8811551f29263a4ed - 0.0% (8.97 KB)

[#012] sha256:18e9a79f5b58157e10800c75b16d903f5415e32f1ce5b54238d422e43abe5843 - 3.25% (5.98 MB)

[#013] sha256:d7818d4540d796f09224ccfb08dc76b4b5ffbfb1d7f5c4cdcb8018e9a3ba4566 - 0.0% (654 Bytes)

[#014] sha256:39d464f8bac5f524bf2ca49d96a76eb1a13cc6d0bc633fd0df187570b4aec4b3 - 7.31% (13.4 MB)

[#015] sha256:7c604fe31e1c794ba8edd7cb07d13ddcbded146f9d9b17184e55deae64cacdae - 0.0% (2.09 KB)

[#016] sha256:1bcbb10c82196f83ff851922268f3a2b774efe969824f51398a031890732a390 - 0.0% (857 Bytes)

[#017] sha256:2f041f3d05284bc6a11806d433af0a9a447d9785eb90c61e2d339f49b121dbad - 0.0% (798 Bytes)


History
2025-11-17 00:00:00 UTC (debuerreotype 0.16)

# debian.sh --arch 'amd64' out/ 'trixie' '@1763337600'

2025-11-20 20:00:14 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c set -eux; { echo 'Package: php*'; echo 'Pin: release *'; echo 'Pin-Priority: -1'; } > /etc/apt/preferences.d/no-debian-php # buildkit

2025-11-20 20:00:30 UTC (buildkit.dockerfile.v0)

ENV PHPIZE_DEPS=autoconf dpkg-dev file g++ gcc libc-dev make pkg-config re2c

2025-11-20 20:00:30 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c set -eux; apt-get update; apt-get install -y --no-install-recommends $PHPIZE_DEPS ca-certificates curl xz-utils ; apt-get dist-clean # buildkit

2025-11-20 20:00:30 UTC (buildkit.dockerfile.v0)

ENV PHP_INI_DIR=/usr/local/etc/php

2025-11-20 20:00:30 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c set -eux; mkdir -p "$PHP_INI_DIR/conf.d"; [ ! -d /var/www/html ]; mkdir -p /var/www/html; chown www-data:www-data /var/www/html; chmod 1777 /var/www/html # buildkit

2025-11-20 20:00:30 UTC (buildkit.dockerfile.v0)

ENV PHP_CFLAGS=-fstack-protector-strong -fpic -fpie -O2 -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64

2025-11-20 20:00:30 UTC (buildkit.dockerfile.v0)

ENV PHP_CPPFLAGS=-fstack-protector-strong -fpic -fpie -O2 -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64

2025-11-20 20:00:30 UTC (buildkit.dockerfile.v0)

ENV PHP_LDFLAGS=-Wl,-O1 -pie

2025-11-20 20:00:30 UTC (buildkit.dockerfile.v0)

ENV GPG_KEYS=1198C0117593497A5EC5C199286AF1F9897469DC C28D937575603EB4ABB725861C0779DC5C0A9DE4 AFD8691FDAEDF03BDF6E460563F15A9B715376CA

2025-11-20 20:00:30 UTC (buildkit.dockerfile.v0)

ENV PHP_VERSION=8.3.28

2025-11-20 20:00:30 UTC (buildkit.dockerfile.v0)

ENV PHP_URL=https://www.php.net/distributions/php-8.3.28.tar.xz PHP_ASC_URL=https://www.php.net/distributions/php-8.3.28.tar.xz.asc

2025-11-20 20:00:30 UTC (buildkit.dockerfile.v0)

ENV PHP_SHA256=25e3860f30198a386242891c0bf9e2955931f7b666b96c3e3103d36a2a322326

2025-11-20 20:00:39 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c set -eux; savedAptMark="$(apt-mark showmanual)"; apt-get update; apt-get install -y --no-install-recommends gnupg; apt-get dist-clean; mkdir -p /usr/src; cd /usr/src; curl -fsSL -o php.tar.xz "$PHP_URL"; if [ -n "$PHP_SHA256" ]; then echo "$PHP_SHA256 *php.tar.xz" | sha256sum -c -; fi; curl -fsSL -o php.tar.xz.asc "$PHP_ASC_URL"; export GNUPGHOME="$(mktemp -d)"; for key in $GPG_KEYS; do gpg --batch --keyserver keyserver.ubuntu.com --recv-keys "$key"; done; gpg --batch --verify php.tar.xz.asc php.tar.xz; gpgconf --kill all; rm -rf "$GNUPGHOME"; apt-mark auto '.*' > /dev/null; apt-mark manual $savedAptMark > /dev/null; apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false # buildkit

2025-11-20 20:00:39 UTC (buildkit.dockerfile.v0)

COPY docker-php-source /usr/local/bin/ # buildkit

2025-11-20 20:03:02 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c set -eux; savedAptMark="$(apt-mark showmanual)"; apt-get update; apt-get install -y --no-install-recommends libargon2-dev libcurl4-openssl-dev libonig-dev libreadline-dev libsodium-dev libsqlite3-dev libssl-dev libxml2-dev zlib1g-dev ; export CFLAGS="$PHP_CFLAGS" CPPFLAGS="$PHP_CPPFLAGS" LDFLAGS="$PHP_LDFLAGS" PHP_BUILD_PROVIDER='https://github.com/docker-library/php' PHP_UNAME='Linux - Docker' ; docker-php-source extract; cd /usr/src/php; gnuArch="$(dpkg-architecture --query DEB_BUILD_GNU_TYPE)"; debMultiarch="$(dpkg-architecture --query DEB_BUILD_MULTIARCH)"; if [ ! -d /usr/include/curl ]; then ln -sT "/usr/include/$debMultiarch/curl" /usr/local/include/curl; fi; ./configure --build="$gnuArch" --with-config-file-path="$PHP_INI_DIR" --with-config-file-scan-dir="$PHP_INI_DIR/conf.d" --enable-option-checking=fatal --with-mhash --with-pic --enable-mbstring --enable-mysqlnd --with-password-argon2 --with-sodium=shared --with-pdo-sqlite=/usr --with-sqlite3=/usr --with-curl --with-iconv --with-openssl --with-readline --with-zlib --disable-phpdbg --with-pear --with-libdir="lib/$debMultiarch" --disable-cgi --enable-fpm --with-fpm-user=www-data --with-fpm-group=www-data ; make -j "$(nproc)"; find -type f -name '*.a' -delete; make install; find /usr/local -type f -perm '/0111' -exec sh -euxc ' strip --strip-all "$@" || : ' -- '{}' + ; make clean; cp -v php.ini-* "$PHP_INI_DIR/"; cd /; docker-php-source delete; apt-mark auto '.*' > /dev/null; [ -z "$savedAptMark" ] || apt-mark manual $savedAptMark; find /usr/local -type f -executable -exec ldd '{}' ';' | awk '/=>/ { so = $(NF-1); if (index(so, "/usr/local/") == 1) { next }; gsub("^/(usr/)?", "", so); printf "*%s\n", so }' | sort -u | xargs -rt dpkg-query --search | awk 'sub(":$", "", $1) { print $1 }' | sort -u | xargs -r apt-mark manual ; apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false; apt-get dist-clean; pecl update-channels; rm -rf /tmp/pear ~/.pearrc; php --version # buildkit

2025-11-20 20:03:02 UTC (buildkit.dockerfile.v0)

COPY docker-php-ext-* docker-php-entrypoint /usr/local/bin/ # buildkit

2025-11-20 20:03:02 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c docker-php-ext-enable opcache # buildkit

2025-11-20 20:03:02 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c docker-php-ext-enable sodium # buildkit

2025-11-20 20:03:02 UTC (buildkit.dockerfile.v0)

ENTRYPOINT ["docker-php-entrypoint"]

2025-11-20 20:03:02 UTC (buildkit.dockerfile.v0)

WORKDIR /var/www/html

2025-11-20 20:03:02 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c set -eux; cd /usr/local/etc; if [ -d php-fpm.d ]; then sed 's!=NONE/!=!g' php-fpm.conf.default | tee php-fpm.conf > /dev/null; cp php-fpm.d/www.conf.default php-fpm.d/www.conf; else mkdir php-fpm.d; cp php-fpm.conf.default php-fpm.d/www.conf; { echo '[global]'; echo 'include=etc/php-fpm.d/*.conf'; } | tee php-fpm.conf; fi; { echo '[global]'; echo 'error_log = /proc/self/fd/2'; echo; echo '; https://github.com/docker-library/php/pull/725#issuecomment-443540114'; echo 'log_limit = 8192'; echo; echo '[www]'; echo '; php-fpm closes STDOUT on startup, so sending logs to /proc/self/fd/1 does not work.'; echo '; https://bugs.php.net/bug.php?id=73886'; echo 'access.log = /proc/self/fd/2'; echo; echo 'clear_env = no'; echo; echo '; Ensure worker stdout and stderr are sent to the main error log.'; echo 'catch_workers_output = yes'; echo 'decorate_workers_output = no'; } | tee php-fpm.d/docker.conf; { echo '[global]'; echo 'daemonize = no'; echo; echo '[www]'; echo 'listen = 9000'; } | tee php-fpm.d/zz-docker.conf; mkdir -p "$PHP_INI_DIR/conf.d"; { echo '; https://github.com/docker-library/php/issues/878#issuecomment-938595965'; echo 'fastcgi.logging = Off'; } > "$PHP_INI_DIR/conf.d/docker-fpm.ini" # buildkit

2025-11-20 20:03:02 UTC (buildkit.dockerfile.v0)

STOPSIGNAL SIGQUIT

2025-11-20 20:03:02 UTC (buildkit.dockerfile.v0)

EXPOSE map[9000/tcp:{}]

2025-11-20 20:03:02 UTC (buildkit.dockerfile.v0)

CMD ["php-fpm"]

2025-11-20 21:03:38 UTC (buildkit.dockerfile.v0)

ENV UPLOAD_PROGRESS_EXT_URL=https://github.com/php/pecl-php-uploadprogress/archive/refs/tags/uploadprogress-2.0.2.tar.gz

2025-11-20 21:03:38 UTC (buildkit.dockerfile.v0)

ENV UPLOAD_PROGRESS_SHA256=fe3f6cdfcedad563c970c4fd1cda31e422cfc0df5cc9a217d8c80ed3c8d137f5

2025-11-20 21:03:38 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c set -ex; apt-get update; apt-get install -y --no-install-recommends gnupg dirmngr ; savedAptMark="$(apt-mark showmanual)"; apt-get install -y --no-install-recommends libbz2-dev libfreetype6-dev libjpeg-dev libpng-dev libwebp-dev libxpm-dev libzip-dev ; mkdir -p /tmp/uploadprogress; curl -fsSL -o /tmp/uploadprogress/uploadprogress.tar.gz "$UPLOAD_PROGRESS_EXT_URL"; echo "$UPLOAD_PROGRESS_SHA256 /tmp/uploadprogress/uploadprogress.tar.gz" | sha256sum -c -; tar -xf /tmp/uploadprogress/uploadprogress.tar.gz -C /tmp/uploadprogress --strip-components=1; docker-php-ext-configure gd --with-freetype --with-jpeg --with-webp --with-xpm; docker-php-ext-install -j "$(nproc)" bz2 gd mysqli opcache zip bcmath /tmp/uploadprogress ; rm -r /tmp/uploadprogress; apt-mark auto '.*' > /dev/null; apt-mark manual $savedAptMark; extdir="$(php -r 'echo ini_get("extension_dir");')"; ldd "$extdir"/*.so | awk '/=>/ { so = $(NF-1); if (index(so, "/usr/local/") == 1) { next }; gsub("^/(usr/)?", "", so); print so }' | sort -u | xargs -r dpkg-query -S | cut -d: -f1 | sort -u | xargs -rt apt-mark manual; apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false; rm -rf /var/lib/apt/lists/*; ldd "$extdir"/*.so | grep -qzv "=> not found" || (echo "Sanity check failed: missing libraries:"; ldd "$extdir"/*.so | grep " => not found"; exit 1); ldd "$extdir"/*.so | grep -q "libzip.so.* => .*/libzip.so.*" || (echo "Sanity check failed: libzip.so is not referenced"; ldd "$extdir"/*.so; exit 1); err="$(php --version 3>&1 1>&2 2>&3)"; [ -z "$err" ] || (echo "Sanity check failed: php returned errors; $err"; exit 1;); # buildkit

2025-11-20 21:03:38 UTC (buildkit.dockerfile.v0)

ENV PMA_SSL_DIR=/etc/phpmyadmin/ssl

2025-11-20 21:03:38 UTC (buildkit.dockerfile.v0)

ENV MAX_EXECUTION_TIME=600

2025-11-20 21:03:38 UTC (buildkit.dockerfile.v0)

ENV MEMORY_LIMIT=512M

2025-11-20 21:03:38 UTC (buildkit.dockerfile.v0)

ENV UPLOAD_LIMIT=2048K

2025-11-20 21:03:38 UTC (buildkit.dockerfile.v0)

ENV TZ=UTC

2025-11-20 21:03:38 UTC (buildkit.dockerfile.v0)

ENV SESSION_SAVE_PATH=/sessions

2025-11-20 21:03:38 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c set -ex; mkdir $SESSION_SAVE_PATH; mkdir -p $PMA_SSL_DIR; chmod 1777 $SESSION_SAVE_PATH; chmod 755 $PMA_SSL_DIR; chown www-data:www-data /etc/phpmyadmin; chown www-data:www-data $PMA_SSL_DIR; chown www-data:www-data $SESSION_SAVE_PATH; { echo 'opcache.memory_consumption=128'; echo 'opcache.interned_strings_buffer=8'; echo 'opcache.max_accelerated_files=4000'; echo 'opcache.revalidate_freq=2'; echo 'opcache.fast_shutdown=1'; } > $PHP_INI_DIR/conf.d/opcache-recommended.ini; { echo 'session.cookie_httponly=1'; echo 'session.use_strict_mode=1'; } > $PHP_INI_DIR/conf.d/session-strict.ini; { echo 'allow_url_fopen=Off'; echo 'max_execution_time=${MAX_EXECUTION_TIME}'; echo 'max_input_vars=10000'; echo 'memory_limit=${MEMORY_LIMIT}'; echo 'post_max_size=${UPLOAD_LIMIT}'; echo 'upload_max_filesize=${UPLOAD_LIMIT}'; echo 'date.timezone=${TZ}'; echo 'session.save_path=${SESSION_SAVE_PATH}'; } > $PHP_INI_DIR/conf.d/phpmyadmin-misc.ini # buildkit

2025-11-20 21:03:38 UTC (buildkit.dockerfile.v0)

USER www-data:www-data

2025-11-20 21:03:38 UTC (buildkit.dockerfile.v0)

ENV VERSION=5.2.3

2025-11-20 21:03:38 UTC (buildkit.dockerfile.v0)

ENV SHA256=57881348297c4412f86c410547cf76b4d8a236574dd2c6b7d6a2beebe7fc44e3

2025-11-20 21:03:38 UTC (buildkit.dockerfile.v0)

ENV URL=https://files.phpmyadmin.net/phpMyAdmin/5.2.3/phpMyAdmin-5.2.3-all-languages.tar.xz

2025-11-20 21:03:38 UTC (buildkit.dockerfile.v0)

LABEL org.opencontainers.image.title=Official phpMyAdmin Docker image org.opencontainers.image.description=Run phpMyAdmin with Alpine, Apache and PHP FPM. org.opencontainers.image.authors=The phpMyAdmin Team <developers@phpmyadmin.net> org.opencontainers.image.vendor=phpMyAdmin org.opencontainers.image.documentation=https://github.com/phpmyadmin/docker#readme org.opencontainers.image.licenses=GPL-2.0-only org.opencontainers.image.version=5.2.3 org.opencontainers.image.url=https://github.com/phpmyadmin/docker#readme org.opencontainers.image.source=https://github.com/phpmyadmin/docker.git

2025-11-20 21:03:43 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c set -ex; export GNUPGHOME="$(mktemp -d)"; export GPGKEY="3D06A59ECE730EB71B511C17CE752F178259BD92"; curl -fsSL -o phpMyAdmin.tar.xz $URL; curl -fsSL -o phpMyAdmin.tar.xz.asc $URL.asc; echo "$SHA256 *phpMyAdmin.tar.xz" | sha256sum -c -; gpg --batch --keyserver keyserver.ubuntu.com --recv-keys "$GPGKEY" || gpg --batch --keyserver pgp.mit.edu --recv-keys "$GPGKEY" || gpg --batch --keyserver keyserver.pgp.com --recv-keys "$GPGKEY" || gpg --batch --keyserver keys.openpgp.org --recv-keys "$GPGKEY"; gpg --batch --verify phpMyAdmin.tar.xz.asc phpMyAdmin.tar.xz; tar -xf phpMyAdmin.tar.xz -C /var/www/html --strip-components=1; mkdir -p /var/www/html/tmp; gpgconf --kill all; rm -r "$GNUPGHOME" phpMyAdmin.tar.xz phpMyAdmin.tar.xz.asc; rm -r -v /var/www/html/setup/ /var/www/html/examples/ /var/www/html/js/src/ /var/www/html/babel.config.json /var/www/html/doc/html/_sources/ /var/www/html/RELEASE-DATE-$VERSION /var/www/html/CONTRIBUTING.md; grep -q -F "'configFile' => ROOT_PATH . 'config.inc.php'," /var/www/html/libraries/vendor_config.php; sed -i "s@'configFile' => .*@'configFile' => '/etc/phpmyadmin/config.inc.php',@" /var/www/html/libraries/vendor_config.php; grep -q -F "'configFile' => '/etc/phpmyadmin/config.inc.php'," /var/www/html/libraries/vendor_config.php; php -l /var/www/html/libraries/vendor_config.php; find /var/www/html -type d -exec chmod 555 {} \;; find /var/www/html -type f -exec chmod 444 {} \;; chmod 1777 /var/www/html/tmp; # buildkit

2025-11-20 21:03:43 UTC (buildkit.dockerfile.v0)

COPY --chown=www-data:www-data config.inc.php /etc/phpmyadmin/config.inc.php # buildkit

2025-11-20 21:03:43 UTC (buildkit.dockerfile.v0)

COPY --chown=www-data:www-data helpers.php /etc/phpmyadmin/helpers.php # buildkit

2025-11-20 21:03:44 UTC (buildkit.dockerfile.v0)

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

2025-11-20 21:03:44 UTC (buildkit.dockerfile.v0)

USER root

2025-11-20 21:03:44 UTC (buildkit.dockerfile.v0)

ENTRYPOINT ["/docker-entrypoint.sh"]

2025-11-20 21:03:44 UTC (buildkit.dockerfile.v0)

CMD ["php-fpm"]

Details
Created

2025-11-21 05:37:49 UTC

Size

158 MB

Content Digest
Labels
  • org.opencontainers.image.authors
    The phpMyAdmin Team <developers@phpmyadmin.net>
  • org.opencontainers.image.description
    Run phpMyAdmin with Alpine, Apache and PHP FPM.
  • org.opencontainers.image.documentation
    https://github.com/phpmyadmin/docker#readme
  • org.opencontainers.image.licenses
    GPL-2.0-only
  • org.opencontainers.image.source
    https://github.com/phpmyadmin/docker.git
  • org.opencontainers.image.title
    Official phpMyAdmin Docker image
  • org.opencontainers.image.url
    https://github.com/phpmyadmin/docker#readme
  • org.opencontainers.image.vendor
    phpMyAdmin
  • org.opencontainers.image.version
    5.2.3

Environment
GPG_KEYS

1198C0117593497A5EC5C199286AF1F9897469DC C28D937575603EB4ABB725861C0779DC5C0A9DE4 AFD8691FDAEDF03BDF6E460563F15A9B715376CA

MAX_EXECUTION_TIME

600

MEMORY_LIMIT

512M

PATH

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

PHPIZE_DEPS

autoconf dpkg-dev file g++ gcc libc-dev make pkg-config re2c

PHP_ASC_URL

https://www.php.net/distributions/php-8.3.28.tar.xz.asc

PHP_CFLAGS

-fstack-protector-strong -fpic -fpie -O2 -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64

PHP_CPPFLAGS

-fstack-protector-strong -fpic -fpie -O2 -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64

PHP_INI_DIR

/usr/local/etc/php

PHP_LDFLAGS

-Wl,-O1 -pie

PHP_SHA256

25e3860f30198a386242891c0bf9e2955931f7b666b96c3e3103d36a2a322326

PHP_URL

https://www.php.net/distributions/php-8.3.28.tar.xz

PHP_VERSION

8.3.28

PMA_SSL_DIR

/etc/phpmyadmin/ssl

SESSION_SAVE_PATH

/sessions

SHA256

57881348297c4412f86c410547cf76b4d8a236574dd2c6b7d6a2beebe7fc44e3

TZ

UTC

UPLOAD_LIMIT

2048K

UPLOAD_PROGRESS_EXT_URL

https://github.com/php/pecl-php-uploadprogress/archive/refs/tags/uploadprogress-2.0.2.tar.gz

UPLOAD_PROGRESS_SHA256

fe3f6cdfcedad563c970c4fd1cda31e422cfc0df5cc9a217d8c80ed3c8d137f5

URL

https://files.phpmyadmin.net/phpMyAdmin/5.2.3/phpMyAdmin-5.2.3-all-languages.tar.xz

VERSION

5.2.3


Layers

[#000] sha256:a1c0783a82710a65871102568a0ace23c3dd0f89dba1af72c3290089eac458f2 - 16.86% (26.6 MB)

[#001] sha256:4d1f5dfa04175c1a79dec887ba469bf5abccb55128786394f215864622002661 - 0.0% (226 Bytes)

[#002] sha256:696213cc4aa34828847dbe537e05c982c80e53783a26151abd9b6309a7a7e4c4 - 57.26% (90.5 MB)

[#003] sha256:89a055088953430a77e16c3c0d2fa58db0698987df6ad113dff27edee70550df - 0.0% (226 Bytes)

[#004] sha256:51dec0247cea8417f906c5077b3a8c219c425148115d9fd6ab82e24fbbf09dad - 7.69% (12.2 MB)

[#005] sha256:c021300848fd726358d2f75fc1bcf4b94dc2f3b886c2b42ab89872fb38466c4e - 0.0% (488 Bytes)

[#006] sha256:5b2e4fd948e47a29414aa3db0277d1560bd1b2f417b6b5a04e8a99610cd4f4f7 - 6.45% (10.2 MB)

[#007] sha256:b7e77b364d80b5536bfae32ac9209a7067acb5f677efec319cd1ebd5b5c20ffb - 0.0% (2.4 KB)

[#008] sha256:3b2dd371805ba8cffd3d2f57140ef5bee91eb5b6b91454b087b94dc8b374d310 - 0.0% (251 Bytes)

[#009] sha256:59bb4c7073e05f60f5311a0cc8552e93830c04bd5193bb484e5ed202ba3bb91b - 0.0% (245 Bytes)

[#010] sha256:4f4fb700ef54461cfa02571ae0db9a0dc1e0cdb5577484a6d75e68dc38e8acc1 - 0.0% (32 Bytes)

[#011] sha256:7dead7d8d5e9dbd2faf20e0d7240678e0a57cd85febf70920422cfc7305dc644 - 0.01% (8.96 KB)

[#012] sha256:65845164954aa5608fb3e9be65aca70f5c13b6583ea5e963e72d91e75b98140c - 3.22% (5.09 MB)

[#013] sha256:695a5008fd2422c8c9d90bad4952ca584dda4c8536ecc06b8545d7aa10175d00 - 0.0% (653 Bytes)

[#014] sha256:52d38139beebd5930305ae4531cf67d808244ad06265f6668d6b7a2e7bb14047 - 8.5% (13.4 MB)

[#015] sha256:26d0d3bb85e02507324bac9bcf704fcf70c5f47474f257f4639c3ac7ec489cf5 - 0.0% (2.09 KB)

[#016] sha256:41b50a475a235b069148e5e2c31f35d7489a780b68310a5622ca5e2cca9d29ff - 0.0% (855 Bytes)

[#017] sha256:ae91bb6fb9198519f7e93636f55b394e47a622864ee14b75ffec1caa2cf949cd - 0.0% (800 Bytes)


History
2025-11-17 00:00:00 UTC (debuerreotype 0.16)

# debian.sh --arch 'armel' out/ 'trixie' '@1763337600'

2025-11-20 19:45:11 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c set -eux; { echo 'Package: php*'; echo 'Pin: release *'; echo 'Pin-Priority: -1'; } > /etc/apt/preferences.d/no-debian-php # buildkit

2025-11-20 19:45:39 UTC (buildkit.dockerfile.v0)

ENV PHPIZE_DEPS=autoconf dpkg-dev file g++ gcc libc-dev make pkg-config re2c

2025-11-20 19:45:39 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c set -eux; apt-get update; apt-get install -y --no-install-recommends $PHPIZE_DEPS ca-certificates curl xz-utils ; apt-get dist-clean # buildkit

2025-11-20 19:45:39 UTC (buildkit.dockerfile.v0)

ENV PHP_INI_DIR=/usr/local/etc/php

2025-11-20 19:45:39 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c set -eux; mkdir -p "$PHP_INI_DIR/conf.d"; [ ! -d /var/www/html ]; mkdir -p /var/www/html; chown www-data:www-data /var/www/html; chmod 1777 /var/www/html # buildkit

2025-11-20 19:45:39 UTC (buildkit.dockerfile.v0)

ENV PHP_CFLAGS=-fstack-protector-strong -fpic -fpie -O2 -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64

2025-11-20 19:45:39 UTC (buildkit.dockerfile.v0)

ENV PHP_CPPFLAGS=-fstack-protector-strong -fpic -fpie -O2 -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64

2025-11-20 19:45:39 UTC (buildkit.dockerfile.v0)

ENV PHP_LDFLAGS=-Wl,-O1 -pie

2025-11-20 19:45:39 UTC (buildkit.dockerfile.v0)

ENV GPG_KEYS=1198C0117593497A5EC5C199286AF1F9897469DC C28D937575603EB4ABB725861C0779DC5C0A9DE4 AFD8691FDAEDF03BDF6E460563F15A9B715376CA

2025-11-20 19:45:39 UTC (buildkit.dockerfile.v0)

ENV PHP_VERSION=8.3.28

2025-11-20 19:45:39 UTC (buildkit.dockerfile.v0)

ENV PHP_URL=https://www.php.net/distributions/php-8.3.28.tar.xz PHP_ASC_URL=https://www.php.net/distributions/php-8.3.28.tar.xz.asc

2025-11-20 19:45:39 UTC (buildkit.dockerfile.v0)

ENV PHP_SHA256=25e3860f30198a386242891c0bf9e2955931f7b666b96c3e3103d36a2a322326

2025-11-20 20:03:00 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c set -eux; savedAptMark="$(apt-mark showmanual)"; apt-get update; apt-get install -y --no-install-recommends gnupg; apt-get dist-clean; mkdir -p /usr/src; cd /usr/src; curl -fsSL -o php.tar.xz "$PHP_URL"; if [ -n "$PHP_SHA256" ]; then echo "$PHP_SHA256 *php.tar.xz" | sha256sum -c -; fi; curl -fsSL -o php.tar.xz.asc "$PHP_ASC_URL"; export GNUPGHOME="$(mktemp -d)"; for key in $GPG_KEYS; do gpg --batch --keyserver keyserver.ubuntu.com --recv-keys "$key"; done; gpg --batch --verify php.tar.xz.asc php.tar.xz; gpgconf --kill all; rm -rf "$GNUPGHOME"; apt-mark auto '.*' > /dev/null; apt-mark manual $savedAptMark > /dev/null; apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false # buildkit

2025-11-20 20:03:00 UTC (buildkit.dockerfile.v0)

COPY docker-php-source /usr/local/bin/ # buildkit

2025-11-20 20:05:53 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c set -eux; savedAptMark="$(apt-mark showmanual)"; apt-get update; apt-get install -y --no-install-recommends libargon2-dev libcurl4-openssl-dev libonig-dev libreadline-dev libsodium-dev libsqlite3-dev libssl-dev libxml2-dev zlib1g-dev ; export CFLAGS="$PHP_CFLAGS" CPPFLAGS="$PHP_CPPFLAGS" LDFLAGS="$PHP_LDFLAGS" PHP_BUILD_PROVIDER='https://github.com/docker-library/php' PHP_UNAME='Linux - Docker' ; docker-php-source extract; cd /usr/src/php; gnuArch="$(dpkg-architecture --query DEB_BUILD_GNU_TYPE)"; debMultiarch="$(dpkg-architecture --query DEB_BUILD_MULTIARCH)"; if [ ! -d /usr/include/curl ]; then ln -sT "/usr/include/$debMultiarch/curl" /usr/local/include/curl; fi; ./configure --build="$gnuArch" --with-config-file-path="$PHP_INI_DIR" --with-config-file-scan-dir="$PHP_INI_DIR/conf.d" --enable-option-checking=fatal --with-mhash --with-pic --enable-mbstring --enable-mysqlnd --with-password-argon2 --with-sodium=shared --with-pdo-sqlite=/usr --with-sqlite3=/usr --with-curl --with-iconv --with-openssl --with-readline --with-zlib --disable-phpdbg --with-pear --with-libdir="lib/$debMultiarch" --disable-cgi --enable-fpm --with-fpm-user=www-data --with-fpm-group=www-data ; make -j "$(nproc)"; find -type f -name '*.a' -delete; make install; find /usr/local -type f -perm '/0111' -exec sh -euxc ' strip --strip-all "$@" || : ' -- '{}' + ; make clean; cp -v php.ini-* "$PHP_INI_DIR/"; cd /; docker-php-source delete; apt-mark auto '.*' > /dev/null; [ -z "$savedAptMark" ] || apt-mark manual $savedAptMark; find /usr/local -type f -executable -exec ldd '{}' ';' | awk '/=>/ { so = $(NF-1); if (index(so, "/usr/local/") == 1) { next }; gsub("^/(usr/)?", "", so); printf "*%s\n", so }' | sort -u | xargs -rt dpkg-query --search | awk 'sub(":$", "", $1) { print $1 }' | sort -u | xargs -r apt-mark manual ; apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false; apt-get dist-clean; pecl update-channels; rm -rf /tmp/pear ~/.pearrc; php --version # buildkit

2025-11-20 20:05:53 UTC (buildkit.dockerfile.v0)

COPY docker-php-ext-* docker-php-entrypoint /usr/local/bin/ # buildkit

2025-11-20 20:05:53 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c docker-php-ext-enable opcache # buildkit

2025-11-20 20:05:54 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c docker-php-ext-enable sodium # buildkit

2025-11-20 20:05:54 UTC (buildkit.dockerfile.v0)

ENTRYPOINT ["docker-php-entrypoint"]

2025-11-20 20:05:54 UTC (buildkit.dockerfile.v0)

WORKDIR /var/www/html

2025-11-20 20:05:54 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c set -eux; cd /usr/local/etc; if [ -d php-fpm.d ]; then sed 's!=NONE/!=!g' php-fpm.conf.default | tee php-fpm.conf > /dev/null; cp php-fpm.d/www.conf.default php-fpm.d/www.conf; else mkdir php-fpm.d; cp php-fpm.conf.default php-fpm.d/www.conf; { echo '[global]'; echo 'include=etc/php-fpm.d/*.conf'; } | tee php-fpm.conf; fi; { echo '[global]'; echo 'error_log = /proc/self/fd/2'; echo; echo '; https://github.com/docker-library/php/pull/725#issuecomment-443540114'; echo 'log_limit = 8192'; echo; echo '[www]'; echo '; php-fpm closes STDOUT on startup, so sending logs to /proc/self/fd/1 does not work.'; echo '; https://bugs.php.net/bug.php?id=73886'; echo 'access.log = /proc/self/fd/2'; echo; echo 'clear_env = no'; echo; echo '; Ensure worker stdout and stderr are sent to the main error log.'; echo 'catch_workers_output = yes'; echo 'decorate_workers_output = no'; } | tee php-fpm.d/docker.conf; { echo '[global]'; echo 'daemonize = no'; echo; echo '[www]'; echo 'listen = 9000'; } | tee php-fpm.d/zz-docker.conf; mkdir -p "$PHP_INI_DIR/conf.d"; { echo '; https://github.com/docker-library/php/issues/878#issuecomment-938595965'; echo 'fastcgi.logging = Off'; } > "$PHP_INI_DIR/conf.d/docker-fpm.ini" # buildkit

2025-11-20 20:05:54 UTC (buildkit.dockerfile.v0)

STOPSIGNAL SIGQUIT

2025-11-20 20:05:54 UTC (buildkit.dockerfile.v0)

EXPOSE map[9000/tcp:{}]

2025-11-20 20:05:54 UTC (buildkit.dockerfile.v0)

CMD ["php-fpm"]

2025-11-21 05:37:44 UTC (buildkit.dockerfile.v0)

ENV UPLOAD_PROGRESS_EXT_URL=https://github.com/php/pecl-php-uploadprogress/archive/refs/tags/uploadprogress-2.0.2.tar.gz

2025-11-21 05:37:44 UTC (buildkit.dockerfile.v0)

ENV UPLOAD_PROGRESS_SHA256=fe3f6cdfcedad563c970c4fd1cda31e422cfc0df5cc9a217d8c80ed3c8d137f5

2025-11-21 05:37:44 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c set -ex; apt-get update; apt-get install -y --no-install-recommends gnupg dirmngr ; savedAptMark="$(apt-mark showmanual)"; apt-get install -y --no-install-recommends libbz2-dev libfreetype6-dev libjpeg-dev libpng-dev libwebp-dev libxpm-dev libzip-dev ; mkdir -p /tmp/uploadprogress; curl -fsSL -o /tmp/uploadprogress/uploadprogress.tar.gz "$UPLOAD_PROGRESS_EXT_URL"; echo "$UPLOAD_PROGRESS_SHA256 /tmp/uploadprogress/uploadprogress.tar.gz" | sha256sum -c -; tar -xf /tmp/uploadprogress/uploadprogress.tar.gz -C /tmp/uploadprogress --strip-components=1; docker-php-ext-configure gd --with-freetype --with-jpeg --with-webp --with-xpm; docker-php-ext-install -j "$(nproc)" bz2 gd mysqli opcache zip bcmath /tmp/uploadprogress ; rm -r /tmp/uploadprogress; apt-mark auto '.*' > /dev/null; apt-mark manual $savedAptMark; extdir="$(php -r 'echo ini_get("extension_dir");')"; ldd "$extdir"/*.so | awk '/=>/ { so = $(NF-1); if (index(so, "/usr/local/") == 1) { next }; gsub("^/(usr/)?", "", so); print so }' | sort -u | xargs -r dpkg-query -S | cut -d: -f1 | sort -u | xargs -rt apt-mark manual; apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false; rm -rf /var/lib/apt/lists/*; ldd "$extdir"/*.so | grep -qzv "=> not found" || (echo "Sanity check failed: missing libraries:"; ldd "$extdir"/*.so | grep " => not found"; exit 1); ldd "$extdir"/*.so | grep -q "libzip.so.* => .*/libzip.so.*" || (echo "Sanity check failed: libzip.so is not referenced"; ldd "$extdir"/*.so; exit 1); err="$(php --version 3>&1 1>&2 2>&3)"; [ -z "$err" ] || (echo "Sanity check failed: php returned errors; $err"; exit 1;); # buildkit

2025-11-21 05:37:44 UTC (buildkit.dockerfile.v0)

ENV PMA_SSL_DIR=/etc/phpmyadmin/ssl

2025-11-21 05:37:44 UTC (buildkit.dockerfile.v0)

ENV MAX_EXECUTION_TIME=600

2025-11-21 05:37:44 UTC (buildkit.dockerfile.v0)

ENV MEMORY_LIMIT=512M

2025-11-21 05:37:44 UTC (buildkit.dockerfile.v0)

ENV UPLOAD_LIMIT=2048K

2025-11-21 05:37:44 UTC (buildkit.dockerfile.v0)

ENV TZ=UTC

2025-11-21 05:37:44 UTC (buildkit.dockerfile.v0)

ENV SESSION_SAVE_PATH=/sessions

2025-11-21 05:37:44 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c set -ex; mkdir $SESSION_SAVE_PATH; mkdir -p $PMA_SSL_DIR; chmod 1777 $SESSION_SAVE_PATH; chmod 755 $PMA_SSL_DIR; chown www-data:www-data /etc/phpmyadmin; chown www-data:www-data $PMA_SSL_DIR; chown www-data:www-data $SESSION_SAVE_PATH; { echo 'opcache.memory_consumption=128'; echo 'opcache.interned_strings_buffer=8'; echo 'opcache.max_accelerated_files=4000'; echo 'opcache.revalidate_freq=2'; echo 'opcache.fast_shutdown=1'; } > $PHP_INI_DIR/conf.d/opcache-recommended.ini; { echo 'session.cookie_httponly=1'; echo 'session.use_strict_mode=1'; } > $PHP_INI_DIR/conf.d/session-strict.ini; { echo 'allow_url_fopen=Off'; echo 'max_execution_time=${MAX_EXECUTION_TIME}'; echo 'max_input_vars=10000'; echo 'memory_limit=${MEMORY_LIMIT}'; echo 'post_max_size=${UPLOAD_LIMIT}'; echo 'upload_max_filesize=${UPLOAD_LIMIT}'; echo 'date.timezone=${TZ}'; echo 'session.save_path=${SESSION_SAVE_PATH}'; } > $PHP_INI_DIR/conf.d/phpmyadmin-misc.ini # buildkit

2025-11-21 05:37:44 UTC (buildkit.dockerfile.v0)

USER www-data:www-data

2025-11-21 05:37:44 UTC (buildkit.dockerfile.v0)

ENV VERSION=5.2.3

2025-11-21 05:37:44 UTC (buildkit.dockerfile.v0)

ENV SHA256=57881348297c4412f86c410547cf76b4d8a236574dd2c6b7d6a2beebe7fc44e3

2025-11-21 05:37:44 UTC (buildkit.dockerfile.v0)

ENV URL=https://files.phpmyadmin.net/phpMyAdmin/5.2.3/phpMyAdmin-5.2.3-all-languages.tar.xz

2025-11-21 05:37:44 UTC (buildkit.dockerfile.v0)

LABEL org.opencontainers.image.title=Official phpMyAdmin Docker image org.opencontainers.image.description=Run phpMyAdmin with Alpine, Apache and PHP FPM. org.opencontainers.image.authors=The phpMyAdmin Team <developers@phpmyadmin.net> org.opencontainers.image.vendor=phpMyAdmin org.opencontainers.image.documentation=https://github.com/phpmyadmin/docker#readme org.opencontainers.image.licenses=GPL-2.0-only org.opencontainers.image.version=5.2.3 org.opencontainers.image.url=https://github.com/phpmyadmin/docker#readme org.opencontainers.image.source=https://github.com/phpmyadmin/docker.git

2025-11-21 05:37:49 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c set -ex; export GNUPGHOME="$(mktemp -d)"; export GPGKEY="3D06A59ECE730EB71B511C17CE752F178259BD92"; curl -fsSL -o phpMyAdmin.tar.xz $URL; curl -fsSL -o phpMyAdmin.tar.xz.asc $URL.asc; echo "$SHA256 *phpMyAdmin.tar.xz" | sha256sum -c -; gpg --batch --keyserver keyserver.ubuntu.com --recv-keys "$GPGKEY" || gpg --batch --keyserver pgp.mit.edu --recv-keys "$GPGKEY" || gpg --batch --keyserver keyserver.pgp.com --recv-keys "$GPGKEY" || gpg --batch --keyserver keys.openpgp.org --recv-keys "$GPGKEY"; gpg --batch --verify phpMyAdmin.tar.xz.asc phpMyAdmin.tar.xz; tar -xf phpMyAdmin.tar.xz -C /var/www/html --strip-components=1; mkdir -p /var/www/html/tmp; gpgconf --kill all; rm -r "$GNUPGHOME" phpMyAdmin.tar.xz phpMyAdmin.tar.xz.asc; rm -r -v /var/www/html/setup/ /var/www/html/examples/ /var/www/html/js/src/ /var/www/html/babel.config.json /var/www/html/doc/html/_sources/ /var/www/html/RELEASE-DATE-$VERSION /var/www/html/CONTRIBUTING.md; grep -q -F "'configFile' => ROOT_PATH . 'config.inc.php'," /var/www/html/libraries/vendor_config.php; sed -i "s@'configFile' => .*@'configFile' => '/etc/phpmyadmin/config.inc.php',@" /var/www/html/libraries/vendor_config.php; grep -q -F "'configFile' => '/etc/phpmyadmin/config.inc.php'," /var/www/html/libraries/vendor_config.php; php -l /var/www/html/libraries/vendor_config.php; find /var/www/html -type d -exec chmod 555 {} \;; find /var/www/html -type f -exec chmod 444 {} \;; chmod 1777 /var/www/html/tmp; # buildkit

2025-11-21 05:37:49 UTC (buildkit.dockerfile.v0)

COPY --chown=www-data:www-data config.inc.php /etc/phpmyadmin/config.inc.php # buildkit

2025-11-21 05:37:49 UTC (buildkit.dockerfile.v0)

COPY --chown=www-data:www-data helpers.php /etc/phpmyadmin/helpers.php # buildkit

2025-11-21 05:37:49 UTC (buildkit.dockerfile.v0)

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

2025-11-21 05:37:49 UTC (buildkit.dockerfile.v0)

USER root

2025-11-21 05:37:49 UTC (buildkit.dockerfile.v0)

ENTRYPOINT ["/docker-entrypoint.sh"]

2025-11-21 05:37:49 UTC (buildkit.dockerfile.v0)

CMD ["php-fpm"]

Details
Created

2025-11-20 21:19:10 UTC

Size

147 MB

Content Digest
Labels
  • org.opencontainers.image.authors
    The phpMyAdmin Team <developers@phpmyadmin.net>
  • org.opencontainers.image.description
    Run phpMyAdmin with Alpine, Apache and PHP FPM.
  • org.opencontainers.image.documentation
    https://github.com/phpmyadmin/docker#readme
  • org.opencontainers.image.licenses
    GPL-2.0-only
  • org.opencontainers.image.source
    https://github.com/phpmyadmin/docker.git
  • org.opencontainers.image.title
    Official phpMyAdmin Docker image
  • org.opencontainers.image.url
    https://github.com/phpmyadmin/docker#readme
  • org.opencontainers.image.vendor
    phpMyAdmin
  • org.opencontainers.image.version
    5.2.3

Environment
GPG_KEYS

1198C0117593497A5EC5C199286AF1F9897469DC C28D937575603EB4ABB725861C0779DC5C0A9DE4 AFD8691FDAEDF03BDF6E460563F15A9B715376CA

MAX_EXECUTION_TIME

600

MEMORY_LIMIT

512M

PATH

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

PHPIZE_DEPS

autoconf dpkg-dev file g++ gcc libc-dev make pkg-config re2c

PHP_ASC_URL

https://www.php.net/distributions/php-8.3.28.tar.xz.asc

PHP_CFLAGS

-fstack-protector-strong -fpic -fpie -O2 -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64

PHP_CPPFLAGS

-fstack-protector-strong -fpic -fpie -O2 -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64

PHP_INI_DIR

/usr/local/etc/php

PHP_LDFLAGS

-Wl,-O1 -pie

PHP_SHA256

25e3860f30198a386242891c0bf9e2955931f7b666b96c3e3103d36a2a322326

PHP_URL

https://www.php.net/distributions/php-8.3.28.tar.xz

PHP_VERSION

8.3.28

PMA_SSL_DIR

/etc/phpmyadmin/ssl

SESSION_SAVE_PATH

/sessions

SHA256

57881348297c4412f86c410547cf76b4d8a236574dd2c6b7d6a2beebe7fc44e3

TZ

UTC

UPLOAD_LIMIT

2048K

UPLOAD_PROGRESS_EXT_URL

https://github.com/php/pecl-php-uploadprogress/archive/refs/tags/uploadprogress-2.0.2.tar.gz

UPLOAD_PROGRESS_SHA256

fe3f6cdfcedad563c970c4fd1cda31e422cfc0df5cc9a217d8c80ed3c8d137f5

URL

https://files.phpmyadmin.net/phpMyAdmin/5.2.3/phpMyAdmin-5.2.3-all-languages.tar.xz

VERSION

5.2.3


Layers

[#000] sha256:8202667160e65087c34b2510837039e29b29936f1b75fc737a33219ae9c06ec0 - 16.99% (25 MB)

[#001] sha256:702d318691b1d05f56643ac48f4b0c5f136eea86c7b3d6079c0f08effff316c0 - 0.0% (226 Bytes)

[#002] sha256:561e96aac34ee91dfa768455ceb63945b16277c87eab48665dd55a2dffbfdda5 - 55.89% (82.3 MB)

[#003] sha256:ce531f0d9809e2129eb61d0376214fb381014e6f6741f2eab74eab4fe455fbca - 0.0% (224 Bytes)

[#004] sha256:24331573eb3a0656e9abac2acd9b56bfb3b5ece70d0802bc9f8bbe62afc28e22 - 8.26% (12.2 MB)

[#005] sha256:f9e59f773e7a43cb7999f549096e38ac13b0bfbf0056f278c6ec70c043c0e207 - 0.0% (489 Bytes)

[#006] sha256:2a1fbda1e379fa854a7ada51439c6a5559635ecf441d698e1c1fdc12a436a0b7 - 6.53% (9.61 MB)

[#007] sha256:47917dec28cc08e0270738d6bad158ff5839909c7fc8e9b1fa8d52601d65bd86 - 0.0% (2.4 KB)

[#008] sha256:966e6f1c46f43a9b455e5f8df16f6d7e70f62b12e90bd48ee13271f621960399 - 0.0% (253 Bytes)

[#009] sha256:9f337e462bdca88a356fdc1ef75fb6753a35f79fb31cb9c8d5601a4f437616f4 - 0.0% (248 Bytes)

[#010] sha256:4f4fb700ef54461cfa02571ae0db9a0dc1e0cdb5577484a6d75e68dc38e8acc1 - 0.0% (32 Bytes)

[#011] sha256:39e3fa26df6766db67b64d5949b762576498b789fbd9d56f973ce7295bd512ea - 0.01% (8.97 KB)

[#012] sha256:7ae7b73cd916081c8dea6e2c12dcdc88ca32eef7ea75410cc9b48b9570f032a9 - 3.19% (4.69 MB)

[#013] sha256:623f186c4220e26ae60f7d8d1ccd57d8ed03b413874764f5a2ffbdaecb7133da - 0.0% (657 Bytes)

[#014] sha256:ada0a36dfdfd396b972281cb8ff24a85af0910c86e6b12a7bfe843d111c4cdef - 9.13% (13.4 MB)

[#015] sha256:40c04eae4fef768f1edcca86651d9c4e6ac64aa31961e0d976dbea9fcff40f89 - 0.0% (2.09 KB)

[#016] sha256:b91e2ef6cf818b7d2ec0831fad0c4937f85b6cb66ec36c33e7970987c336e191 - 0.0% (857 Bytes)

[#017] sha256:394e7582967747cbd413e566a852cdd918912c571f1a1e91f245120de9d44335 - 0.0% (800 Bytes)


History
2025-11-17 00:00:00 UTC (debuerreotype 0.16)

# debian.sh --arch 'armhf' out/ 'trixie' '@1763337600'

2025-11-20 20:14:35 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c set -eux; { echo 'Package: php*'; echo 'Pin: release *'; echo 'Pin-Priority: -1'; } > /etc/apt/preferences.d/no-debian-php # buildkit

2025-11-20 20:14:52 UTC (buildkit.dockerfile.v0)

ENV PHPIZE_DEPS=autoconf dpkg-dev file g++ gcc libc-dev make pkg-config re2c

2025-11-20 20:14:52 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c set -eux; apt-get update; apt-get install -y --no-install-recommends $PHPIZE_DEPS ca-certificates curl xz-utils ; apt-get dist-clean # buildkit

2025-11-20 20:14:52 UTC (buildkit.dockerfile.v0)

ENV PHP_INI_DIR=/usr/local/etc/php

2025-11-20 20:14:52 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c set -eux; mkdir -p "$PHP_INI_DIR/conf.d"; [ ! -d /var/www/html ]; mkdir -p /var/www/html; chown www-data:www-data /var/www/html; chmod 1777 /var/www/html # buildkit

2025-11-20 20:14:52 UTC (buildkit.dockerfile.v0)

ENV PHP_CFLAGS=-fstack-protector-strong -fpic -fpie -O2 -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64

2025-11-20 20:14:52 UTC (buildkit.dockerfile.v0)

ENV PHP_CPPFLAGS=-fstack-protector-strong -fpic -fpie -O2 -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64

2025-11-20 20:14:52 UTC (buildkit.dockerfile.v0)

ENV PHP_LDFLAGS=-Wl,-O1 -pie

2025-11-20 20:14:52 UTC (buildkit.dockerfile.v0)

ENV GPG_KEYS=1198C0117593497A5EC5C199286AF1F9897469DC C28D937575603EB4ABB725861C0779DC5C0A9DE4 AFD8691FDAEDF03BDF6E460563F15A9B715376CA

2025-11-20 20:14:52 UTC (buildkit.dockerfile.v0)

ENV PHP_VERSION=8.3.28

2025-11-20 20:14:52 UTC (buildkit.dockerfile.v0)

ENV PHP_URL=https://www.php.net/distributions/php-8.3.28.tar.xz PHP_ASC_URL=https://www.php.net/distributions/php-8.3.28.tar.xz.asc

2025-11-20 20:14:52 UTC (buildkit.dockerfile.v0)

ENV PHP_SHA256=25e3860f30198a386242891c0bf9e2955931f7b666b96c3e3103d36a2a322326

2025-11-20 20:15:03 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c set -eux; savedAptMark="$(apt-mark showmanual)"; apt-get update; apt-get install -y --no-install-recommends gnupg; apt-get dist-clean; mkdir -p /usr/src; cd /usr/src; curl -fsSL -o php.tar.xz "$PHP_URL"; if [ -n "$PHP_SHA256" ]; then echo "$PHP_SHA256 *php.tar.xz" | sha256sum -c -; fi; curl -fsSL -o php.tar.xz.asc "$PHP_ASC_URL"; export GNUPGHOME="$(mktemp -d)"; for key in $GPG_KEYS; do gpg --batch --keyserver keyserver.ubuntu.com --recv-keys "$key"; done; gpg --batch --verify php.tar.xz.asc php.tar.xz; gpgconf --kill all; rm -rf "$GNUPGHOME"; apt-mark auto '.*' > /dev/null; apt-mark manual $savedAptMark > /dev/null; apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false # buildkit

2025-11-20 20:15:03 UTC (buildkit.dockerfile.v0)

COPY docker-php-source /usr/local/bin/ # buildkit

2025-11-20 20:17:38 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c set -eux; savedAptMark="$(apt-mark showmanual)"; apt-get update; apt-get install -y --no-install-recommends libargon2-dev libcurl4-openssl-dev libonig-dev libreadline-dev libsodium-dev libsqlite3-dev libssl-dev libxml2-dev zlib1g-dev ; export CFLAGS="$PHP_CFLAGS" CPPFLAGS="$PHP_CPPFLAGS" LDFLAGS="$PHP_LDFLAGS" PHP_BUILD_PROVIDER='https://github.com/docker-library/php' PHP_UNAME='Linux - Docker' ; docker-php-source extract; cd /usr/src/php; gnuArch="$(dpkg-architecture --query DEB_BUILD_GNU_TYPE)"; debMultiarch="$(dpkg-architecture --query DEB_BUILD_MULTIARCH)"; if [ ! -d /usr/include/curl ]; then ln -sT "/usr/include/$debMultiarch/curl" /usr/local/include/curl; fi; ./configure --build="$gnuArch" --with-config-file-path="$PHP_INI_DIR" --with-config-file-scan-dir="$PHP_INI_DIR/conf.d" --enable-option-checking=fatal --with-mhash --with-pic --enable-mbstring --enable-mysqlnd --with-password-argon2 --with-sodium=shared --with-pdo-sqlite=/usr --with-sqlite3=/usr --with-curl --with-iconv --with-openssl --with-readline --with-zlib --disable-phpdbg --with-pear --with-libdir="lib/$debMultiarch" --disable-cgi --enable-fpm --with-fpm-user=www-data --with-fpm-group=www-data ; make -j "$(nproc)"; find -type f -name '*.a' -delete; make install; find /usr/local -type f -perm '/0111' -exec sh -euxc ' strip --strip-all "$@" || : ' -- '{}' + ; make clean; cp -v php.ini-* "$PHP_INI_DIR/"; cd /; docker-php-source delete; apt-mark auto '.*' > /dev/null; [ -z "$savedAptMark" ] || apt-mark manual $savedAptMark; find /usr/local -type f -executable -exec ldd '{}' ';' | awk '/=>/ { so = $(NF-1); if (index(so, "/usr/local/") == 1) { next }; gsub("^/(usr/)?", "", so); printf "*%s\n", so }' | sort -u | xargs -rt dpkg-query --search | awk 'sub(":$", "", $1) { print $1 }' | sort -u | xargs -r apt-mark manual ; apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false; apt-get dist-clean; pecl update-channels; rm -rf /tmp/pear ~/.pearrc; php --version # buildkit

2025-11-20 20:17:38 UTC (buildkit.dockerfile.v0)

COPY docker-php-ext-* docker-php-entrypoint /usr/local/bin/ # buildkit

2025-11-20 20:17:38 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c docker-php-ext-enable opcache # buildkit

2025-11-20 20:17:38 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c docker-php-ext-enable sodium # buildkit

2025-11-20 20:17:38 UTC (buildkit.dockerfile.v0)

ENTRYPOINT ["docker-php-entrypoint"]

2025-11-20 20:17:38 UTC (buildkit.dockerfile.v0)

WORKDIR /var/www/html

2025-11-20 20:17:38 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c set -eux; cd /usr/local/etc; if [ -d php-fpm.d ]; then sed 's!=NONE/!=!g' php-fpm.conf.default | tee php-fpm.conf > /dev/null; cp php-fpm.d/www.conf.default php-fpm.d/www.conf; else mkdir php-fpm.d; cp php-fpm.conf.default php-fpm.d/www.conf; { echo '[global]'; echo 'include=etc/php-fpm.d/*.conf'; } | tee php-fpm.conf; fi; { echo '[global]'; echo 'error_log = /proc/self/fd/2'; echo; echo '; https://github.com/docker-library/php/pull/725#issuecomment-443540114'; echo 'log_limit = 8192'; echo; echo '[www]'; echo '; php-fpm closes STDOUT on startup, so sending logs to /proc/self/fd/1 does not work.'; echo '; https://bugs.php.net/bug.php?id=73886'; echo 'access.log = /proc/self/fd/2'; echo; echo 'clear_env = no'; echo; echo '; Ensure worker stdout and stderr are sent to the main error log.'; echo 'catch_workers_output = yes'; echo 'decorate_workers_output = no'; } | tee php-fpm.d/docker.conf; { echo '[global]'; echo 'daemonize = no'; echo; echo '[www]'; echo 'listen = 9000'; } | tee php-fpm.d/zz-docker.conf; mkdir -p "$PHP_INI_DIR/conf.d"; { echo '; https://github.com/docker-library/php/issues/878#issuecomment-938595965'; echo 'fastcgi.logging = Off'; } > "$PHP_INI_DIR/conf.d/docker-fpm.ini" # buildkit

2025-11-20 20:17:38 UTC (buildkit.dockerfile.v0)

STOPSIGNAL SIGQUIT

2025-11-20 20:17:38 UTC (buildkit.dockerfile.v0)

EXPOSE map[9000/tcp:{}]

2025-11-20 20:17:38 UTC (buildkit.dockerfile.v0)

CMD ["php-fpm"]

2025-11-20 21:19:05 UTC (buildkit.dockerfile.v0)

ENV UPLOAD_PROGRESS_EXT_URL=https://github.com/php/pecl-php-uploadprogress/archive/refs/tags/uploadprogress-2.0.2.tar.gz

2025-11-20 21:19:05 UTC (buildkit.dockerfile.v0)

ENV UPLOAD_PROGRESS_SHA256=fe3f6cdfcedad563c970c4fd1cda31e422cfc0df5cc9a217d8c80ed3c8d137f5

2025-11-20 21:19:05 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c set -ex; apt-get update; apt-get install -y --no-install-recommends gnupg dirmngr ; savedAptMark="$(apt-mark showmanual)"; apt-get install -y --no-install-recommends libbz2-dev libfreetype6-dev libjpeg-dev libpng-dev libwebp-dev libxpm-dev libzip-dev ; mkdir -p /tmp/uploadprogress; curl -fsSL -o /tmp/uploadprogress/uploadprogress.tar.gz "$UPLOAD_PROGRESS_EXT_URL"; echo "$UPLOAD_PROGRESS_SHA256 /tmp/uploadprogress/uploadprogress.tar.gz" | sha256sum -c -; tar -xf /tmp/uploadprogress/uploadprogress.tar.gz -C /tmp/uploadprogress --strip-components=1; docker-php-ext-configure gd --with-freetype --with-jpeg --with-webp --with-xpm; docker-php-ext-install -j "$(nproc)" bz2 gd mysqli opcache zip bcmath /tmp/uploadprogress ; rm -r /tmp/uploadprogress; apt-mark auto '.*' > /dev/null; apt-mark manual $savedAptMark; extdir="$(php -r 'echo ini_get("extension_dir");')"; ldd "$extdir"/*.so | awk '/=>/ { so = $(NF-1); if (index(so, "/usr/local/") == 1) { next }; gsub("^/(usr/)?", "", so); print so }' | sort -u | xargs -r dpkg-query -S | cut -d: -f1 | sort -u | xargs -rt apt-mark manual; apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false; rm -rf /var/lib/apt/lists/*; ldd "$extdir"/*.so | grep -qzv "=> not found" || (echo "Sanity check failed: missing libraries:"; ldd "$extdir"/*.so | grep " => not found"; exit 1); ldd "$extdir"/*.so | grep -q "libzip.so.* => .*/libzip.so.*" || (echo "Sanity check failed: libzip.so is not referenced"; ldd "$extdir"/*.so; exit 1); err="$(php --version 3>&1 1>&2 2>&3)"; [ -z "$err" ] || (echo "Sanity check failed: php returned errors; $err"; exit 1;); # buildkit

2025-11-20 21:19:05 UTC (buildkit.dockerfile.v0)

ENV PMA_SSL_DIR=/etc/phpmyadmin/ssl

2025-11-20 21:19:05 UTC (buildkit.dockerfile.v0)

ENV MAX_EXECUTION_TIME=600

2025-11-20 21:19:05 UTC (buildkit.dockerfile.v0)

ENV MEMORY_LIMIT=512M

2025-11-20 21:19:05 UTC (buildkit.dockerfile.v0)

ENV UPLOAD_LIMIT=2048K

2025-11-20 21:19:05 UTC (buildkit.dockerfile.v0)

ENV TZ=UTC

2025-11-20 21:19:05 UTC (buildkit.dockerfile.v0)

ENV SESSION_SAVE_PATH=/sessions

2025-11-20 21:19:05 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c set -ex; mkdir $SESSION_SAVE_PATH; mkdir -p $PMA_SSL_DIR; chmod 1777 $SESSION_SAVE_PATH; chmod 755 $PMA_SSL_DIR; chown www-data:www-data /etc/phpmyadmin; chown www-data:www-data $PMA_SSL_DIR; chown www-data:www-data $SESSION_SAVE_PATH; { echo 'opcache.memory_consumption=128'; echo 'opcache.interned_strings_buffer=8'; echo 'opcache.max_accelerated_files=4000'; echo 'opcache.revalidate_freq=2'; echo 'opcache.fast_shutdown=1'; } > $PHP_INI_DIR/conf.d/opcache-recommended.ini; { echo 'session.cookie_httponly=1'; echo 'session.use_strict_mode=1'; } > $PHP_INI_DIR/conf.d/session-strict.ini; { echo 'allow_url_fopen=Off'; echo 'max_execution_time=${MAX_EXECUTION_TIME}'; echo 'max_input_vars=10000'; echo 'memory_limit=${MEMORY_LIMIT}'; echo 'post_max_size=${UPLOAD_LIMIT}'; echo 'upload_max_filesize=${UPLOAD_LIMIT}'; echo 'date.timezone=${TZ}'; echo 'session.save_path=${SESSION_SAVE_PATH}'; } > $PHP_INI_DIR/conf.d/phpmyadmin-misc.ini # buildkit

2025-11-20 21:19:05 UTC (buildkit.dockerfile.v0)

USER www-data:www-data

2025-11-20 21:19:05 UTC (buildkit.dockerfile.v0)

ENV VERSION=5.2.3

2025-11-20 21:19:05 UTC (buildkit.dockerfile.v0)

ENV SHA256=57881348297c4412f86c410547cf76b4d8a236574dd2c6b7d6a2beebe7fc44e3

2025-11-20 21:19:05 UTC (buildkit.dockerfile.v0)

ENV URL=https://files.phpmyadmin.net/phpMyAdmin/5.2.3/phpMyAdmin-5.2.3-all-languages.tar.xz

2025-11-20 21:19:05 UTC (buildkit.dockerfile.v0)

LABEL org.opencontainers.image.title=Official phpMyAdmin Docker image org.opencontainers.image.description=Run phpMyAdmin with Alpine, Apache and PHP FPM. org.opencontainers.image.authors=The phpMyAdmin Team <developers@phpmyadmin.net> org.opencontainers.image.vendor=phpMyAdmin org.opencontainers.image.documentation=https://github.com/phpmyadmin/docker#readme org.opencontainers.image.licenses=GPL-2.0-only org.opencontainers.image.version=5.2.3 org.opencontainers.image.url=https://github.com/phpmyadmin/docker#readme org.opencontainers.image.source=https://github.com/phpmyadmin/docker.git

2025-11-20 21:19:10 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c set -ex; export GNUPGHOME="$(mktemp -d)"; export GPGKEY="3D06A59ECE730EB71B511C17CE752F178259BD92"; curl -fsSL -o phpMyAdmin.tar.xz $URL; curl -fsSL -o phpMyAdmin.tar.xz.asc $URL.asc; echo "$SHA256 *phpMyAdmin.tar.xz" | sha256sum -c -; gpg --batch --keyserver keyserver.ubuntu.com --recv-keys "$GPGKEY" || gpg --batch --keyserver pgp.mit.edu --recv-keys "$GPGKEY" || gpg --batch --keyserver keyserver.pgp.com --recv-keys "$GPGKEY" || gpg --batch --keyserver keys.openpgp.org --recv-keys "$GPGKEY"; gpg --batch --verify phpMyAdmin.tar.xz.asc phpMyAdmin.tar.xz; tar -xf phpMyAdmin.tar.xz -C /var/www/html --strip-components=1; mkdir -p /var/www/html/tmp; gpgconf --kill all; rm -r "$GNUPGHOME" phpMyAdmin.tar.xz phpMyAdmin.tar.xz.asc; rm -r -v /var/www/html/setup/ /var/www/html/examples/ /var/www/html/js/src/ /var/www/html/babel.config.json /var/www/html/doc/html/_sources/ /var/www/html/RELEASE-DATE-$VERSION /var/www/html/CONTRIBUTING.md; grep -q -F "'configFile' => ROOT_PATH . 'config.inc.php'," /var/www/html/libraries/vendor_config.php; sed -i "s@'configFile' => .*@'configFile' => '/etc/phpmyadmin/config.inc.php',@" /var/www/html/libraries/vendor_config.php; grep -q -F "'configFile' => '/etc/phpmyadmin/config.inc.php'," /var/www/html/libraries/vendor_config.php; php -l /var/www/html/libraries/vendor_config.php; find /var/www/html -type d -exec chmod 555 {} \;; find /var/www/html -type f -exec chmod 444 {} \;; chmod 1777 /var/www/html/tmp; # buildkit

2025-11-20 21:19:10 UTC (buildkit.dockerfile.v0)

COPY --chown=www-data:www-data config.inc.php /etc/phpmyadmin/config.inc.php # buildkit

2025-11-20 21:19:10 UTC (buildkit.dockerfile.v0)

COPY --chown=www-data:www-data helpers.php /etc/phpmyadmin/helpers.php # buildkit

2025-11-20 21:19:10 UTC (buildkit.dockerfile.v0)

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

2025-11-20 21:19:10 UTC (buildkit.dockerfile.v0)

USER root

2025-11-20 21:19:10 UTC (buildkit.dockerfile.v0)

ENTRYPOINT ["/docker-entrypoint.sh"]

2025-11-20 21:19:10 UTC (buildkit.dockerfile.v0)

CMD ["php-fpm"]

Details
Created

2025-11-20 20:34:27 UTC

Size

177 MB

Content Digest
Labels
  • org.opencontainers.image.authors
    The phpMyAdmin Team <developers@phpmyadmin.net>
  • org.opencontainers.image.description
    Run phpMyAdmin with Alpine, Apache and PHP FPM.
  • org.opencontainers.image.documentation
    https://github.com/phpmyadmin/docker#readme
  • org.opencontainers.image.licenses
    GPL-2.0-only
  • org.opencontainers.image.source
    https://github.com/phpmyadmin/docker.git
  • org.opencontainers.image.title
    Official phpMyAdmin Docker image
  • org.opencontainers.image.url
    https://github.com/phpmyadmin/docker#readme
  • org.opencontainers.image.vendor
    phpMyAdmin
  • org.opencontainers.image.version
    5.2.3

Environment
GPG_KEYS

1198C0117593497A5EC5C199286AF1F9897469DC C28D937575603EB4ABB725861C0779DC5C0A9DE4 AFD8691FDAEDF03BDF6E460563F15A9B715376CA

MAX_EXECUTION_TIME

600

MEMORY_LIMIT

512M

PATH

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

PHPIZE_DEPS

autoconf dpkg-dev file g++ gcc libc-dev make pkg-config re2c

PHP_ASC_URL

https://www.php.net/distributions/php-8.3.28.tar.xz.asc

PHP_CFLAGS

-fstack-protector-strong -fpic -fpie -O2 -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64

PHP_CPPFLAGS

-fstack-protector-strong -fpic -fpie -O2 -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64

PHP_INI_DIR

/usr/local/etc/php

PHP_LDFLAGS

-Wl,-O1 -pie

PHP_SHA256

25e3860f30198a386242891c0bf9e2955931f7b666b96c3e3103d36a2a322326

PHP_URL

https://www.php.net/distributions/php-8.3.28.tar.xz

PHP_VERSION

8.3.28

PMA_SSL_DIR

/etc/phpmyadmin/ssl

SESSION_SAVE_PATH

/sessions

SHA256

57881348297c4412f86c410547cf76b4d8a236574dd2c6b7d6a2beebe7fc44e3

TZ

UTC

UPLOAD_LIMIT

2048K

UPLOAD_PROGRESS_EXT_URL

https://github.com/php/pecl-php-uploadprogress/archive/refs/tags/uploadprogress-2.0.2.tar.gz

UPLOAD_PROGRESS_SHA256

fe3f6cdfcedad563c970c4fd1cda31e422cfc0df5cc9a217d8c80ed3c8d137f5

URL

https://files.phpmyadmin.net/phpMyAdmin/5.2.3/phpMyAdmin-5.2.3-all-languages.tar.xz

VERSION

5.2.3


Layers

[#000] sha256:b89cf3ec7a3ed3a58015edd6724125187f0d284147e09b5739b511c74222b2a4 - 16.25% (28.7 MB)

[#001] sha256:279c2e494d0787f4a07908c69a4b0d5cd55aeb21e871c7d8ce8e6b3c95a7792e - 0.0% (224 Bytes)

[#002] sha256:e9f99b049188af0856e3fdd615d6baa11ce6a43a25e9c90d0d66897db48fb52d - 59.4% (105 MB)

[#003] sha256:a9dfc8d4e0fa40cc6f6345efdfc264891f2f2cf22ea58895000f38d2e4d11933 - 0.0% (223 Bytes)

[#004] sha256:5bbc9328a72fad8cafd9b352281572771f70c4ed8b8fd80310ee9a9e72b2f421 - 6.88% (12.2 MB)

[#005] sha256:13ba0b8f0ea909ba04396ab24a5094086fda99f4131337a884b3926d1bde7c97 - 0.0% (489 Bytes)

[#006] sha256:b453e9254ee2dfeb62a93483ceac83e9e885d6bcf40cde24612f396c5a251443 - 6.43% (11.4 MB)

[#007] sha256:e39d84361bf29b64900c7f1fe7b070f1f432e11a7a999f9939709ff7d51f2cf0 - 0.0% (2.39 KB)

[#008] sha256:4518fcc6404b4d72b04b6a6ff1c043ef4ec0881a6146cb60cb0aac2d5e7ca61e - 0.0% (252 Bytes)

[#009] sha256:af01690ec3197795b43cf1a4cd849615272652de975630d1866409b7248a101d - 0.0% (247 Bytes)

[#010] sha256:4f4fb700ef54461cfa02571ae0db9a0dc1e0cdb5577484a6d75e68dc38e8acc1 - 0.0% (32 Bytes)

[#011] sha256:9b210b28da12e7264defd2f24846ed06145cf48493f28727991246344b1c8611 - 0.0% (8.97 KB)

[#012] sha256:4f17ce040f46e32ea4f143a20d1616ad04efc7a613b089e5f67292ee0d376ce8 - 3.44% (6.08 MB)

[#013] sha256:2d831d0a7aeee3707cd0d16c665303289bae10a4acfabc7eb3867c25259cfd3c - 0.0% (653 Bytes)

[#014] sha256:66ab2ff98060ba3ff8e99c93bcbe0d65573e9b1c5eee43e0098d4561bd39e825 - 7.6% (13.4 MB)

[#015] sha256:e25b00651ee751feac3c3293d414146a23f219d794ba94edddc1161fa3e8fa02 - 0.0% (2.09 KB)

[#016] sha256:6c2ca97ad1a954bfe33ca9acf2c76534c6d1662652c75efad73d2fc8645fe016 - 0.0% (859 Bytes)

[#017] sha256:a3705a894f170f19c00a69fd4beaf140cbada6ca4140042512f55f62d39935e1 - 0.0% (800 Bytes)


History
2025-11-17 00:00:00 UTC (debuerreotype 0.16)

# debian.sh --arch 'arm64' out/ 'trixie' '@1763337600'

2025-11-20 19:47:11 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c set -eux; { echo 'Package: php*'; echo 'Pin: release *'; echo 'Pin-Priority: -1'; } > /etc/apt/preferences.d/no-debian-php # buildkit

2025-11-20 19:47:29 UTC (buildkit.dockerfile.v0)

ENV PHPIZE_DEPS=autoconf dpkg-dev file g++ gcc libc-dev make pkg-config re2c

2025-11-20 19:47:29 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c set -eux; apt-get update; apt-get install -y --no-install-recommends $PHPIZE_DEPS ca-certificates curl xz-utils ; apt-get dist-clean # buildkit

2025-11-20 19:47:29 UTC (buildkit.dockerfile.v0)

ENV PHP_INI_DIR=/usr/local/etc/php

2025-11-20 19:47:29 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c set -eux; mkdir -p "$PHP_INI_DIR/conf.d"; [ ! -d /var/www/html ]; mkdir -p /var/www/html; chown www-data:www-data /var/www/html; chmod 1777 /var/www/html # buildkit

2025-11-20 19:47:29 UTC (buildkit.dockerfile.v0)

ENV PHP_CFLAGS=-fstack-protector-strong -fpic -fpie -O2 -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64

2025-11-20 19:47:29 UTC (buildkit.dockerfile.v0)

ENV PHP_CPPFLAGS=-fstack-protector-strong -fpic -fpie -O2 -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64

2025-11-20 19:47:29 UTC (buildkit.dockerfile.v0)

ENV PHP_LDFLAGS=-Wl,-O1 -pie

2025-11-20 19:47:29 UTC (buildkit.dockerfile.v0)

ENV GPG_KEYS=1198C0117593497A5EC5C199286AF1F9897469DC C28D937575603EB4ABB725861C0779DC5C0A9DE4 AFD8691FDAEDF03BDF6E460563F15A9B715376CA

2025-11-20 19:47:29 UTC (buildkit.dockerfile.v0)

ENV PHP_VERSION=8.3.28

2025-11-20 19:47:29 UTC (buildkit.dockerfile.v0)

ENV PHP_URL=https://www.php.net/distributions/php-8.3.28.tar.xz PHP_ASC_URL=https://www.php.net/distributions/php-8.3.28.tar.xz.asc

2025-11-20 19:47:29 UTC (buildkit.dockerfile.v0)

ENV PHP_SHA256=25e3860f30198a386242891c0bf9e2955931f7b666b96c3e3103d36a2a322326

2025-11-20 20:02:38 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c set -eux; savedAptMark="$(apt-mark showmanual)"; apt-get update; apt-get install -y --no-install-recommends gnupg; apt-get dist-clean; mkdir -p /usr/src; cd /usr/src; curl -fsSL -o php.tar.xz "$PHP_URL"; if [ -n "$PHP_SHA256" ]; then echo "$PHP_SHA256 *php.tar.xz" | sha256sum -c -; fi; curl -fsSL -o php.tar.xz.asc "$PHP_ASC_URL"; export GNUPGHOME="$(mktemp -d)"; for key in $GPG_KEYS; do gpg --batch --keyserver keyserver.ubuntu.com --recv-keys "$key"; done; gpg --batch --verify php.tar.xz.asc php.tar.xz; gpgconf --kill all; rm -rf "$GNUPGHOME"; apt-mark auto '.*' > /dev/null; apt-mark manual $savedAptMark > /dev/null; apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false # buildkit

2025-11-20 20:02:38 UTC (buildkit.dockerfile.v0)

COPY docker-php-source /usr/local/bin/ # buildkit

2025-11-20 20:06:41 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c set -eux; savedAptMark="$(apt-mark showmanual)"; apt-get update; apt-get install -y --no-install-recommends libargon2-dev libcurl4-openssl-dev libonig-dev libreadline-dev libsodium-dev libsqlite3-dev libssl-dev libxml2-dev zlib1g-dev ; export CFLAGS="$PHP_CFLAGS" CPPFLAGS="$PHP_CPPFLAGS" LDFLAGS="$PHP_LDFLAGS" PHP_BUILD_PROVIDER='https://github.com/docker-library/php' PHP_UNAME='Linux - Docker' ; docker-php-source extract; cd /usr/src/php; gnuArch="$(dpkg-architecture --query DEB_BUILD_GNU_TYPE)"; debMultiarch="$(dpkg-architecture --query DEB_BUILD_MULTIARCH)"; if [ ! -d /usr/include/curl ]; then ln -sT "/usr/include/$debMultiarch/curl" /usr/local/include/curl; fi; ./configure --build="$gnuArch" --with-config-file-path="$PHP_INI_DIR" --with-config-file-scan-dir="$PHP_INI_DIR/conf.d" --enable-option-checking=fatal --with-mhash --with-pic --enable-mbstring --enable-mysqlnd --with-password-argon2 --with-sodium=shared --with-pdo-sqlite=/usr --with-sqlite3=/usr --with-curl --with-iconv --with-openssl --with-readline --with-zlib --disable-phpdbg --with-pear --with-libdir="lib/$debMultiarch" --disable-cgi --enable-fpm --with-fpm-user=www-data --with-fpm-group=www-data ; make -j "$(nproc)"; find -type f -name '*.a' -delete; make install; find /usr/local -type f -perm '/0111' -exec sh -euxc ' strip --strip-all "$@" || : ' -- '{}' + ; make clean; cp -v php.ini-* "$PHP_INI_DIR/"; cd /; docker-php-source delete; apt-mark auto '.*' > /dev/null; [ -z "$savedAptMark" ] || apt-mark manual $savedAptMark; find /usr/local -type f -executable -exec ldd '{}' ';' | awk '/=>/ { so = $(NF-1); if (index(so, "/usr/local/") == 1) { next }; gsub("^/(usr/)?", "", so); printf "*%s\n", so }' | sort -u | xargs -rt dpkg-query --search | awk 'sub(":$", "", $1) { print $1 }' | sort -u | xargs -r apt-mark manual ; apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false; apt-get dist-clean; pecl update-channels; rm -rf /tmp/pear ~/.pearrc; php --version # buildkit

2025-11-20 20:06:41 UTC (buildkit.dockerfile.v0)

COPY docker-php-ext-* docker-php-entrypoint /usr/local/bin/ # buildkit

2025-11-20 20:06:41 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c docker-php-ext-enable opcache # buildkit

2025-11-20 20:06:42 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c docker-php-ext-enable sodium # buildkit

2025-11-20 20:06:42 UTC (buildkit.dockerfile.v0)

ENTRYPOINT ["docker-php-entrypoint"]

2025-11-20 20:06:42 UTC (buildkit.dockerfile.v0)

WORKDIR /var/www/html

2025-11-20 20:06:42 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c set -eux; cd /usr/local/etc; if [ -d php-fpm.d ]; then sed 's!=NONE/!=!g' php-fpm.conf.default | tee php-fpm.conf > /dev/null; cp php-fpm.d/www.conf.default php-fpm.d/www.conf; else mkdir php-fpm.d; cp php-fpm.conf.default php-fpm.d/www.conf; { echo '[global]'; echo 'include=etc/php-fpm.d/*.conf'; } | tee php-fpm.conf; fi; { echo '[global]'; echo 'error_log = /proc/self/fd/2'; echo; echo '; https://github.com/docker-library/php/pull/725#issuecomment-443540114'; echo 'log_limit = 8192'; echo; echo '[www]'; echo '; php-fpm closes STDOUT on startup, so sending logs to /proc/self/fd/1 does not work.'; echo '; https://bugs.php.net/bug.php?id=73886'; echo 'access.log = /proc/self/fd/2'; echo; echo 'clear_env = no'; echo; echo '; Ensure worker stdout and stderr are sent to the main error log.'; echo 'catch_workers_output = yes'; echo 'decorate_workers_output = no'; } | tee php-fpm.d/docker.conf; { echo '[global]'; echo 'daemonize = no'; echo; echo '[www]'; echo 'listen = 9000'; } | tee php-fpm.d/zz-docker.conf; mkdir -p "$PHP_INI_DIR/conf.d"; { echo '; https://github.com/docker-library/php/issues/878#issuecomment-938595965'; echo 'fastcgi.logging = Off'; } > "$PHP_INI_DIR/conf.d/docker-fpm.ini" # buildkit

2025-11-20 20:06:42 UTC (buildkit.dockerfile.v0)

STOPSIGNAL SIGQUIT

2025-11-20 20:06:42 UTC (buildkit.dockerfile.v0)

EXPOSE map[9000/tcp:{}]

2025-11-20 20:06:42 UTC (buildkit.dockerfile.v0)

CMD ["php-fpm"]

2025-11-20 20:34:22 UTC (buildkit.dockerfile.v0)

ENV UPLOAD_PROGRESS_EXT_URL=https://github.com/php/pecl-php-uploadprogress/archive/refs/tags/uploadprogress-2.0.2.tar.gz

2025-11-20 20:34:22 UTC (buildkit.dockerfile.v0)

ENV UPLOAD_PROGRESS_SHA256=fe3f6cdfcedad563c970c4fd1cda31e422cfc0df5cc9a217d8c80ed3c8d137f5

2025-11-20 20:34:22 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c set -ex; apt-get update; apt-get install -y --no-install-recommends gnupg dirmngr ; savedAptMark="$(apt-mark showmanual)"; apt-get install -y --no-install-recommends libbz2-dev libfreetype6-dev libjpeg-dev libpng-dev libwebp-dev libxpm-dev libzip-dev ; mkdir -p /tmp/uploadprogress; curl -fsSL -o /tmp/uploadprogress/uploadprogress.tar.gz "$UPLOAD_PROGRESS_EXT_URL"; echo "$UPLOAD_PROGRESS_SHA256 /tmp/uploadprogress/uploadprogress.tar.gz" | sha256sum -c -; tar -xf /tmp/uploadprogress/uploadprogress.tar.gz -C /tmp/uploadprogress --strip-components=1; docker-php-ext-configure gd --with-freetype --with-jpeg --with-webp --with-xpm; docker-php-ext-install -j "$(nproc)" bz2 gd mysqli opcache zip bcmath /tmp/uploadprogress ; rm -r /tmp/uploadprogress; apt-mark auto '.*' > /dev/null; apt-mark manual $savedAptMark; extdir="$(php -r 'echo ini_get("extension_dir");')"; ldd "$extdir"/*.so | awk '/=>/ { so = $(NF-1); if (index(so, "/usr/local/") == 1) { next }; gsub("^/(usr/)?", "", so); print so }' | sort -u | xargs -r dpkg-query -S | cut -d: -f1 | sort -u | xargs -rt apt-mark manual; apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false; rm -rf /var/lib/apt/lists/*; ldd "$extdir"/*.so | grep -qzv "=> not found" || (echo "Sanity check failed: missing libraries:"; ldd "$extdir"/*.so | grep " => not found"; exit 1); ldd "$extdir"/*.so | grep -q "libzip.so.* => .*/libzip.so.*" || (echo "Sanity check failed: libzip.so is not referenced"; ldd "$extdir"/*.so; exit 1); err="$(php --version 3>&1 1>&2 2>&3)"; [ -z "$err" ] || (echo "Sanity check failed: php returned errors; $err"; exit 1;); # buildkit

2025-11-20 20:34:22 UTC (buildkit.dockerfile.v0)

ENV PMA_SSL_DIR=/etc/phpmyadmin/ssl

2025-11-20 20:34:22 UTC (buildkit.dockerfile.v0)

ENV MAX_EXECUTION_TIME=600

2025-11-20 20:34:22 UTC (buildkit.dockerfile.v0)

ENV MEMORY_LIMIT=512M

2025-11-20 20:34:22 UTC (buildkit.dockerfile.v0)

ENV UPLOAD_LIMIT=2048K

2025-11-20 20:34:22 UTC (buildkit.dockerfile.v0)

ENV TZ=UTC

2025-11-20 20:34:22 UTC (buildkit.dockerfile.v0)

ENV SESSION_SAVE_PATH=/sessions

2025-11-20 20:34:22 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c set -ex; mkdir $SESSION_SAVE_PATH; mkdir -p $PMA_SSL_DIR; chmod 1777 $SESSION_SAVE_PATH; chmod 755 $PMA_SSL_DIR; chown www-data:www-data /etc/phpmyadmin; chown www-data:www-data $PMA_SSL_DIR; chown www-data:www-data $SESSION_SAVE_PATH; { echo 'opcache.memory_consumption=128'; echo 'opcache.interned_strings_buffer=8'; echo 'opcache.max_accelerated_files=4000'; echo 'opcache.revalidate_freq=2'; echo 'opcache.fast_shutdown=1'; } > $PHP_INI_DIR/conf.d/opcache-recommended.ini; { echo 'session.cookie_httponly=1'; echo 'session.use_strict_mode=1'; } > $PHP_INI_DIR/conf.d/session-strict.ini; { echo 'allow_url_fopen=Off'; echo 'max_execution_time=${MAX_EXECUTION_TIME}'; echo 'max_input_vars=10000'; echo 'memory_limit=${MEMORY_LIMIT}'; echo 'post_max_size=${UPLOAD_LIMIT}'; echo 'upload_max_filesize=${UPLOAD_LIMIT}'; echo 'date.timezone=${TZ}'; echo 'session.save_path=${SESSION_SAVE_PATH}'; } > $PHP_INI_DIR/conf.d/phpmyadmin-misc.ini # buildkit

2025-11-20 20:34:22 UTC (buildkit.dockerfile.v0)

USER www-data:www-data

2025-11-20 20:34:22 UTC (buildkit.dockerfile.v0)

ENV VERSION=5.2.3

2025-11-20 20:34:22 UTC (buildkit.dockerfile.v0)

ENV SHA256=57881348297c4412f86c410547cf76b4d8a236574dd2c6b7d6a2beebe7fc44e3

2025-11-20 20:34:22 UTC (buildkit.dockerfile.v0)

ENV URL=https://files.phpmyadmin.net/phpMyAdmin/5.2.3/phpMyAdmin-5.2.3-all-languages.tar.xz

2025-11-20 20:34:22 UTC (buildkit.dockerfile.v0)

LABEL org.opencontainers.image.title=Official phpMyAdmin Docker image org.opencontainers.image.description=Run phpMyAdmin with Alpine, Apache and PHP FPM. org.opencontainers.image.authors=The phpMyAdmin Team <developers@phpmyadmin.net> org.opencontainers.image.vendor=phpMyAdmin org.opencontainers.image.documentation=https://github.com/phpmyadmin/docker#readme org.opencontainers.image.licenses=GPL-2.0-only org.opencontainers.image.version=5.2.3 org.opencontainers.image.url=https://github.com/phpmyadmin/docker#readme org.opencontainers.image.source=https://github.com/phpmyadmin/docker.git

2025-11-20 20:34:27 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c set -ex; export GNUPGHOME="$(mktemp -d)"; export GPGKEY="3D06A59ECE730EB71B511C17CE752F178259BD92"; curl -fsSL -o phpMyAdmin.tar.xz $URL; curl -fsSL -o phpMyAdmin.tar.xz.asc $URL.asc; echo "$SHA256 *phpMyAdmin.tar.xz" | sha256sum -c -; gpg --batch --keyserver keyserver.ubuntu.com --recv-keys "$GPGKEY" || gpg --batch --keyserver pgp.mit.edu --recv-keys "$GPGKEY" || gpg --batch --keyserver keyserver.pgp.com --recv-keys "$GPGKEY" || gpg --batch --keyserver keys.openpgp.org --recv-keys "$GPGKEY"; gpg --batch --verify phpMyAdmin.tar.xz.asc phpMyAdmin.tar.xz; tar -xf phpMyAdmin.tar.xz -C /var/www/html --strip-components=1; mkdir -p /var/www/html/tmp; gpgconf --kill all; rm -r "$GNUPGHOME" phpMyAdmin.tar.xz phpMyAdmin.tar.xz.asc; rm -r -v /var/www/html/setup/ /var/www/html/examples/ /var/www/html/js/src/ /var/www/html/babel.config.json /var/www/html/doc/html/_sources/ /var/www/html/RELEASE-DATE-$VERSION /var/www/html/CONTRIBUTING.md; grep -q -F "'configFile' => ROOT_PATH . 'config.inc.php'," /var/www/html/libraries/vendor_config.php; sed -i "s@'configFile' => .*@'configFile' => '/etc/phpmyadmin/config.inc.php',@" /var/www/html/libraries/vendor_config.php; grep -q -F "'configFile' => '/etc/phpmyadmin/config.inc.php'," /var/www/html/libraries/vendor_config.php; php -l /var/www/html/libraries/vendor_config.php; find /var/www/html -type d -exec chmod 555 {} \;; find /var/www/html -type f -exec chmod 444 {} \;; chmod 1777 /var/www/html/tmp; # buildkit

2025-11-20 20:34:27 UTC (buildkit.dockerfile.v0)

COPY --chown=www-data:www-data config.inc.php /etc/phpmyadmin/config.inc.php # buildkit

2025-11-20 20:34:27 UTC (buildkit.dockerfile.v0)

COPY --chown=www-data:www-data helpers.php /etc/phpmyadmin/helpers.php # buildkit

2025-11-20 20:34:27 UTC (buildkit.dockerfile.v0)

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

2025-11-20 20:34:27 UTC (buildkit.dockerfile.v0)

USER root

2025-11-20 20:34:27 UTC (buildkit.dockerfile.v0)

ENTRYPOINT ["/docker-entrypoint.sh"]

2025-11-20 20:34:27 UTC (buildkit.dockerfile.v0)

CMD ["php-fpm"]

Details
Created

2025-11-20 22:13:44 UTC

Size

180 MB

Content Digest
Labels
  • org.opencontainers.image.authors
    The phpMyAdmin Team <developers@phpmyadmin.net>
  • org.opencontainers.image.description
    Run phpMyAdmin with Alpine, Apache and PHP FPM.
  • org.opencontainers.image.documentation
    https://github.com/phpmyadmin/docker#readme
  • org.opencontainers.image.licenses
    GPL-2.0-only
  • org.opencontainers.image.source
    https://github.com/phpmyadmin/docker.git
  • org.opencontainers.image.title
    Official phpMyAdmin Docker image
  • org.opencontainers.image.url
    https://github.com/phpmyadmin/docker#readme
  • org.opencontainers.image.vendor
    phpMyAdmin
  • org.opencontainers.image.version
    5.2.3

Environment
GPG_KEYS

1198C0117593497A5EC5C199286AF1F9897469DC C28D937575603EB4ABB725861C0779DC5C0A9DE4 AFD8691FDAEDF03BDF6E460563F15A9B715376CA

MAX_EXECUTION_TIME

600

MEMORY_LIMIT

512M

PATH

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

PHPIZE_DEPS

autoconf dpkg-dev file g++ gcc libc-dev make pkg-config re2c

PHP_ASC_URL

https://www.php.net/distributions/php-8.3.28.tar.xz.asc

PHP_CFLAGS

-fstack-protector-strong -fpic -fpie -O2 -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64

PHP_CPPFLAGS

-fstack-protector-strong -fpic -fpie -O2 -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64

PHP_INI_DIR

/usr/local/etc/php

PHP_LDFLAGS

-Wl,-O1 -pie

PHP_SHA256

25e3860f30198a386242891c0bf9e2955931f7b666b96c3e3103d36a2a322326

PHP_URL

https://www.php.net/distributions/php-8.3.28.tar.xz

PHP_VERSION

8.3.28

PMA_SSL_DIR

/etc/phpmyadmin/ssl

SESSION_SAVE_PATH

/sessions

SHA256

57881348297c4412f86c410547cf76b4d8a236574dd2c6b7d6a2beebe7fc44e3

TZ

UTC

UPLOAD_LIMIT

2048K

UPLOAD_PROGRESS_EXT_URL

https://github.com/php/pecl-php-uploadprogress/archive/refs/tags/uploadprogress-2.0.2.tar.gz

UPLOAD_PROGRESS_SHA256

fe3f6cdfcedad563c970c4fd1cda31e422cfc0df5cc9a217d8c80ed3c8d137f5

URL

https://files.phpmyadmin.net/phpMyAdmin/5.2.3/phpMyAdmin-5.2.3-all-languages.tar.xz

VERSION

5.2.3


Layers

[#000] sha256:38a4f720a0e1dc899707e3aaab397e56da721bf9b35e36e797b59d51b46ec989 - 17.76% (32 MB)

[#001] sha256:ab9e04671b94afff15878831353dc9695acc91045301a0652cef0382a81d75fd - 0.0% (227 Bytes)

[#002] sha256:17026cdcbef078ba67f3cbcb24a4b69327f5a425c86e81bf862ab9d483f4365f - 57.93% (105 MB)

[#003] sha256:c32e8907601f12fe60881d750db9392082c0a039f5a1cfb258a690d4f129201d - 0.0% (224 Bytes)

[#004] sha256:9bffa7aeb0be5831c1e409e7a8a0b7d1a72286b0cdedaf80fd2c47a86d0704ed - 6.75% (12.2 MB)

[#005] sha256:83dcfacbece33f4e6dd31bbdee7c4981dde78d7cbfe2db944469c29f48266412 - 0.0% (488 Bytes)

[#006] sha256:ac11d181e513510288377dc61d6c3739e01f18c3e9a65083c8794010d371a1f2 - 6.57% (11.9 MB)

[#007] sha256:00d343b8330de512b7b446bb9f22d6433416e1285c888e3bd4f3ea94cab5e834 - 0.0% (2.39 KB)

[#008] sha256:10432a44da8d4221c0f547a6a2c96decf46879c225f37b88edfa25df3a468244 - 0.0% (250 Bytes)

[#009] sha256:72799e306496d0cbcbafab36fe5810d6d628ff9b65268715f598dcece08f1cdd - 0.0% (246 Bytes)

[#010] sha256:4f4fb700ef54461cfa02571ae0db9a0dc1e0cdb5577484a6d75e68dc38e8acc1 - 0.0% (32 Bytes)

[#011] sha256:c2bd774a574db7fc9c06312057c05c99065a3e8f39b4c1b2b78242f35e816778 - 0.0% (8.97 KB)

[#012] sha256:31b0644b466405aac6e26b58c054cecab55bc534e48668daf281751b23595994 - 3.53% (6.37 MB)

[#013] sha256:2eb78ec72eb5c2465a13960d9fd483cec00766c7084162f6405f4c3959f89566 - 0.0% (655 Bytes)

[#014] sha256:7ac2bb7c0622ee9d1bd400fa9052bf974049fc1a33e18f53ee8b6e43a423cff1 - 7.45% (13.4 MB)

[#015] sha256:f824aa466ae23ca7dab03386be5bb7a1306d65417c6406aac41027e8f5ab80c6 - 0.0% (2.09 KB)

[#016] sha256:0a2a6ab8807d92690ca29153f50745c3c79fd3e266255c33fb67455b2a957c91 - 0.0% (856 Bytes)

[#017] sha256:ccc7a4117c9e9d6bb544048e6c0e2fc212977677ef8953101896aa236f16538b - 0.0% (800 Bytes)


History
2025-11-17 00:00:00 UTC (debuerreotype 0.16)

# debian.sh --arch 'ppc64el' out/ 'trixie' '@1763337600'

2025-11-18 15:13:17 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c set -eux; { echo 'Package: php*'; echo 'Pin: release *'; echo 'Pin-Priority: -1'; } > /etc/apt/preferences.d/no-debian-php # buildkit

2025-11-18 15:14:03 UTC (buildkit.dockerfile.v0)

ENV PHPIZE_DEPS=autoconf dpkg-dev file g++ gcc libc-dev make pkg-config re2c

2025-11-18 15:14:03 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c set -eux; apt-get update; apt-get install -y --no-install-recommends $PHPIZE_DEPS ca-certificates curl xz-utils ; apt-get dist-clean # buildkit

2025-11-18 15:14:03 UTC (buildkit.dockerfile.v0)

ENV PHP_INI_DIR=/usr/local/etc/php

2025-11-18 15:14:04 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c set -eux; mkdir -p "$PHP_INI_DIR/conf.d"; [ ! -d /var/www/html ]; mkdir -p /var/www/html; chown www-data:www-data /var/www/html; chmod 1777 /var/www/html # buildkit

2025-11-18 15:14:04 UTC (buildkit.dockerfile.v0)

ENV PHP_CFLAGS=-fstack-protector-strong -fpic -fpie -O2 -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64

2025-11-18 15:14:04 UTC (buildkit.dockerfile.v0)

ENV PHP_CPPFLAGS=-fstack-protector-strong -fpic -fpie -O2 -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64

2025-11-18 15:14:04 UTC (buildkit.dockerfile.v0)

ENV PHP_LDFLAGS=-Wl,-O1 -pie

2025-11-18 15:14:04 UTC (buildkit.dockerfile.v0)

ENV GPG_KEYS=1198C0117593497A5EC5C199286AF1F9897469DC C28D937575603EB4ABB725861C0779DC5C0A9DE4 AFD8691FDAEDF03BDF6E460563F15A9B715376CA

2025-11-18 15:14:04 UTC (buildkit.dockerfile.v0)

ENV PHP_VERSION=8.3.28

2025-11-18 15:14:04 UTC (buildkit.dockerfile.v0)

ENV PHP_URL=https://www.php.net/distributions/php-8.3.28.tar.xz PHP_ASC_URL=https://www.php.net/distributions/php-8.3.28.tar.xz.asc

2025-11-18 15:14:04 UTC (buildkit.dockerfile.v0)

ENV PHP_SHA256=25e3860f30198a386242891c0bf9e2955931f7b666b96c3e3103d36a2a322326

2025-11-20 21:01:17 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c set -eux; savedAptMark="$(apt-mark showmanual)"; apt-get update; apt-get install -y --no-install-recommends gnupg; apt-get dist-clean; mkdir -p /usr/src; cd /usr/src; curl -fsSL -o php.tar.xz "$PHP_URL"; if [ -n "$PHP_SHA256" ]; then echo "$PHP_SHA256 *php.tar.xz" | sha256sum -c -; fi; curl -fsSL -o php.tar.xz.asc "$PHP_ASC_URL"; export GNUPGHOME="$(mktemp -d)"; for key in $GPG_KEYS; do gpg --batch --keyserver keyserver.ubuntu.com --recv-keys "$key"; done; gpg --batch --verify php.tar.xz.asc php.tar.xz; gpgconf --kill all; rm -rf "$GNUPGHOME"; apt-mark auto '.*' > /dev/null; apt-mark manual $savedAptMark > /dev/null; apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false # buildkit

2025-11-20 21:01:18 UTC (buildkit.dockerfile.v0)

COPY docker-php-source /usr/local/bin/ # buildkit

2025-11-20 21:09:15 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c set -eux; savedAptMark="$(apt-mark showmanual)"; apt-get update; apt-get install -y --no-install-recommends libargon2-dev libcurl4-openssl-dev libonig-dev libreadline-dev libsodium-dev libsqlite3-dev libssl-dev libxml2-dev zlib1g-dev ; export CFLAGS="$PHP_CFLAGS" CPPFLAGS="$PHP_CPPFLAGS" LDFLAGS="$PHP_LDFLAGS" PHP_BUILD_PROVIDER='https://github.com/docker-library/php' PHP_UNAME='Linux - Docker' ; docker-php-source extract; cd /usr/src/php; gnuArch="$(dpkg-architecture --query DEB_BUILD_GNU_TYPE)"; debMultiarch="$(dpkg-architecture --query DEB_BUILD_MULTIARCH)"; if [ ! -d /usr/include/curl ]; then ln -sT "/usr/include/$debMultiarch/curl" /usr/local/include/curl; fi; ./configure --build="$gnuArch" --with-config-file-path="$PHP_INI_DIR" --with-config-file-scan-dir="$PHP_INI_DIR/conf.d" --enable-option-checking=fatal --with-mhash --with-pic --enable-mbstring --enable-mysqlnd --with-password-argon2 --with-sodium=shared --with-pdo-sqlite=/usr --with-sqlite3=/usr --with-curl --with-iconv --with-openssl --with-readline --with-zlib --disable-phpdbg --with-pear --with-libdir="lib/$debMultiarch" --disable-cgi --enable-fpm --with-fpm-user=www-data --with-fpm-group=www-data ; make -j "$(nproc)"; find -type f -name '*.a' -delete; make install; find /usr/local -type f -perm '/0111' -exec sh -euxc ' strip --strip-all "$@" || : ' -- '{}' + ; make clean; cp -v php.ini-* "$PHP_INI_DIR/"; cd /; docker-php-source delete; apt-mark auto '.*' > /dev/null; [ -z "$savedAptMark" ] || apt-mark manual $savedAptMark; find /usr/local -type f -executable -exec ldd '{}' ';' | awk '/=>/ { so = $(NF-1); if (index(so, "/usr/local/") == 1) { next }; gsub("^/(usr/)?", "", so); printf "*%s\n", so }' | sort -u | xargs -rt dpkg-query --search | awk 'sub(":$", "", $1) { print $1 }' | sort -u | xargs -r apt-mark manual ; apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false; apt-get dist-clean; pecl update-channels; rm -rf /tmp/pear ~/.pearrc; php --version # buildkit

2025-11-20 21:09:15 UTC (buildkit.dockerfile.v0)

COPY docker-php-ext-* docker-php-entrypoint /usr/local/bin/ # buildkit

2025-11-20 21:09:16 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c docker-php-ext-enable opcache # buildkit

2025-11-20 21:09:17 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c docker-php-ext-enable sodium # buildkit

2025-11-20 21:09:17 UTC (buildkit.dockerfile.v0)

ENTRYPOINT ["docker-php-entrypoint"]

2025-11-20 21:09:17 UTC (buildkit.dockerfile.v0)

WORKDIR /var/www/html

2025-11-20 21:09:18 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c set -eux; cd /usr/local/etc; if [ -d php-fpm.d ]; then sed 's!=NONE/!=!g' php-fpm.conf.default | tee php-fpm.conf > /dev/null; cp php-fpm.d/www.conf.default php-fpm.d/www.conf; else mkdir php-fpm.d; cp php-fpm.conf.default php-fpm.d/www.conf; { echo '[global]'; echo 'include=etc/php-fpm.d/*.conf'; } | tee php-fpm.conf; fi; { echo '[global]'; echo 'error_log = /proc/self/fd/2'; echo; echo '; https://github.com/docker-library/php/pull/725#issuecomment-443540114'; echo 'log_limit = 8192'; echo; echo '[www]'; echo '; php-fpm closes STDOUT on startup, so sending logs to /proc/self/fd/1 does not work.'; echo '; https://bugs.php.net/bug.php?id=73886'; echo 'access.log = /proc/self/fd/2'; echo; echo 'clear_env = no'; echo; echo '; Ensure worker stdout and stderr are sent to the main error log.'; echo 'catch_workers_output = yes'; echo 'decorate_workers_output = no'; } | tee php-fpm.d/docker.conf; { echo '[global]'; echo 'daemonize = no'; echo; echo '[www]'; echo 'listen = 9000'; } | tee php-fpm.d/zz-docker.conf; mkdir -p "$PHP_INI_DIR/conf.d"; { echo '; https://github.com/docker-library/php/issues/878#issuecomment-938595965'; echo 'fastcgi.logging = Off'; } > "$PHP_INI_DIR/conf.d/docker-fpm.ini" # buildkit

2025-11-20 21:09:18 UTC (buildkit.dockerfile.v0)

STOPSIGNAL SIGQUIT

2025-11-20 21:09:18 UTC (buildkit.dockerfile.v0)

EXPOSE map[9000/tcp:{}]

2025-11-20 21:09:18 UTC (buildkit.dockerfile.v0)

CMD ["php-fpm"]

2025-11-20 22:13:33 UTC (buildkit.dockerfile.v0)

ENV UPLOAD_PROGRESS_EXT_URL=https://github.com/php/pecl-php-uploadprogress/archive/refs/tags/uploadprogress-2.0.2.tar.gz

2025-11-20 22:13:33 UTC (buildkit.dockerfile.v0)

ENV UPLOAD_PROGRESS_SHA256=fe3f6cdfcedad563c970c4fd1cda31e422cfc0df5cc9a217d8c80ed3c8d137f5

2025-11-20 22:13:33 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c set -ex; apt-get update; apt-get install -y --no-install-recommends gnupg dirmngr ; savedAptMark="$(apt-mark showmanual)"; apt-get install -y --no-install-recommends libbz2-dev libfreetype6-dev libjpeg-dev libpng-dev libwebp-dev libxpm-dev libzip-dev ; mkdir -p /tmp/uploadprogress; curl -fsSL -o /tmp/uploadprogress/uploadprogress.tar.gz "$UPLOAD_PROGRESS_EXT_URL"; echo "$UPLOAD_PROGRESS_SHA256 /tmp/uploadprogress/uploadprogress.tar.gz" | sha256sum -c -; tar -xf /tmp/uploadprogress/uploadprogress.tar.gz -C /tmp/uploadprogress --strip-components=1; docker-php-ext-configure gd --with-freetype --with-jpeg --with-webp --with-xpm; docker-php-ext-install -j "$(nproc)" bz2 gd mysqli opcache zip bcmath /tmp/uploadprogress ; rm -r /tmp/uploadprogress; apt-mark auto '.*' > /dev/null; apt-mark manual $savedAptMark; extdir="$(php -r 'echo ini_get("extension_dir");')"; ldd "$extdir"/*.so | awk '/=>/ { so = $(NF-1); if (index(so, "/usr/local/") == 1) { next }; gsub("^/(usr/)?", "", so); print so }' | sort -u | xargs -r dpkg-query -S | cut -d: -f1 | sort -u | xargs -rt apt-mark manual; apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false; rm -rf /var/lib/apt/lists/*; ldd "$extdir"/*.so | grep -qzv "=> not found" || (echo "Sanity check failed: missing libraries:"; ldd "$extdir"/*.so | grep " => not found"; exit 1); ldd "$extdir"/*.so | grep -q "libzip.so.* => .*/libzip.so.*" || (echo "Sanity check failed: libzip.so is not referenced"; ldd "$extdir"/*.so; exit 1); err="$(php --version 3>&1 1>&2 2>&3)"; [ -z "$err" ] || (echo "Sanity check failed: php returned errors; $err"; exit 1;); # buildkit

2025-11-20 22:13:33 UTC (buildkit.dockerfile.v0)

ENV PMA_SSL_DIR=/etc/phpmyadmin/ssl

2025-11-20 22:13:33 UTC (buildkit.dockerfile.v0)

ENV MAX_EXECUTION_TIME=600

2025-11-20 22:13:33 UTC (buildkit.dockerfile.v0)

ENV MEMORY_LIMIT=512M

2025-11-20 22:13:33 UTC (buildkit.dockerfile.v0)

ENV UPLOAD_LIMIT=2048K

2025-11-20 22:13:33 UTC (buildkit.dockerfile.v0)

ENV TZ=UTC

2025-11-20 22:13:33 UTC (buildkit.dockerfile.v0)

ENV SESSION_SAVE_PATH=/sessions

2025-11-20 22:13:34 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c set -ex; mkdir $SESSION_SAVE_PATH; mkdir -p $PMA_SSL_DIR; chmod 1777 $SESSION_SAVE_PATH; chmod 755 $PMA_SSL_DIR; chown www-data:www-data /etc/phpmyadmin; chown www-data:www-data $PMA_SSL_DIR; chown www-data:www-data $SESSION_SAVE_PATH; { echo 'opcache.memory_consumption=128'; echo 'opcache.interned_strings_buffer=8'; echo 'opcache.max_accelerated_files=4000'; echo 'opcache.revalidate_freq=2'; echo 'opcache.fast_shutdown=1'; } > $PHP_INI_DIR/conf.d/opcache-recommended.ini; { echo 'session.cookie_httponly=1'; echo 'session.use_strict_mode=1'; } > $PHP_INI_DIR/conf.d/session-strict.ini; { echo 'allow_url_fopen=Off'; echo 'max_execution_time=${MAX_EXECUTION_TIME}'; echo 'max_input_vars=10000'; echo 'memory_limit=${MEMORY_LIMIT}'; echo 'post_max_size=${UPLOAD_LIMIT}'; echo 'upload_max_filesize=${UPLOAD_LIMIT}'; echo 'date.timezone=${TZ}'; echo 'session.save_path=${SESSION_SAVE_PATH}'; } > $PHP_INI_DIR/conf.d/phpmyadmin-misc.ini # buildkit

2025-11-20 22:13:34 UTC (buildkit.dockerfile.v0)

USER www-data:www-data

2025-11-20 22:13:34 UTC (buildkit.dockerfile.v0)

ENV VERSION=5.2.3

2025-11-20 22:13:34 UTC (buildkit.dockerfile.v0)

ENV SHA256=57881348297c4412f86c410547cf76b4d8a236574dd2c6b7d6a2beebe7fc44e3

2025-11-20 22:13:34 UTC (buildkit.dockerfile.v0)

ENV URL=https://files.phpmyadmin.net/phpMyAdmin/5.2.3/phpMyAdmin-5.2.3-all-languages.tar.xz

2025-11-20 22:13:34 UTC (buildkit.dockerfile.v0)

LABEL org.opencontainers.image.title=Official phpMyAdmin Docker image org.opencontainers.image.description=Run phpMyAdmin with Alpine, Apache and PHP FPM. org.opencontainers.image.authors=The phpMyAdmin Team <developers@phpmyadmin.net> org.opencontainers.image.vendor=phpMyAdmin org.opencontainers.image.documentation=https://github.com/phpmyadmin/docker#readme org.opencontainers.image.licenses=GPL-2.0-only org.opencontainers.image.version=5.2.3 org.opencontainers.image.url=https://github.com/phpmyadmin/docker#readme org.opencontainers.image.source=https://github.com/phpmyadmin/docker.git

2025-11-20 22:13:41 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c set -ex; export GNUPGHOME="$(mktemp -d)"; export GPGKEY="3D06A59ECE730EB71B511C17CE752F178259BD92"; curl -fsSL -o phpMyAdmin.tar.xz $URL; curl -fsSL -o phpMyAdmin.tar.xz.asc $URL.asc; echo "$SHA256 *phpMyAdmin.tar.xz" | sha256sum -c -; gpg --batch --keyserver keyserver.ubuntu.com --recv-keys "$GPGKEY" || gpg --batch --keyserver pgp.mit.edu --recv-keys "$GPGKEY" || gpg --batch --keyserver keyserver.pgp.com --recv-keys "$GPGKEY" || gpg --batch --keyserver keys.openpgp.org --recv-keys "$GPGKEY"; gpg --batch --verify phpMyAdmin.tar.xz.asc phpMyAdmin.tar.xz; tar -xf phpMyAdmin.tar.xz -C /var/www/html --strip-components=1; mkdir -p /var/www/html/tmp; gpgconf --kill all; rm -r "$GNUPGHOME" phpMyAdmin.tar.xz phpMyAdmin.tar.xz.asc; rm -r -v /var/www/html/setup/ /var/www/html/examples/ /var/www/html/js/src/ /var/www/html/babel.config.json /var/www/html/doc/html/_sources/ /var/www/html/RELEASE-DATE-$VERSION /var/www/html/CONTRIBUTING.md; grep -q -F "'configFile' => ROOT_PATH . 'config.inc.php'," /var/www/html/libraries/vendor_config.php; sed -i "s@'configFile' => .*@'configFile' => '/etc/phpmyadmin/config.inc.php',@" /var/www/html/libraries/vendor_config.php; grep -q -F "'configFile' => '/etc/phpmyadmin/config.inc.php'," /var/www/html/libraries/vendor_config.php; php -l /var/www/html/libraries/vendor_config.php; find /var/www/html -type d -exec chmod 555 {} \;; find /var/www/html -type f -exec chmod 444 {} \;; chmod 1777 /var/www/html/tmp; # buildkit

2025-11-20 22:13:42 UTC (buildkit.dockerfile.v0)

COPY --chown=www-data:www-data config.inc.php /etc/phpmyadmin/config.inc.php # buildkit

2025-11-20 22:13:42 UTC (buildkit.dockerfile.v0)

COPY --chown=www-data:www-data helpers.php /etc/phpmyadmin/helpers.php # buildkit

2025-11-20 22:13:44 UTC (buildkit.dockerfile.v0)

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

2025-11-20 22:13:44 UTC (buildkit.dockerfile.v0)

USER root

2025-11-20 22:13:44 UTC (buildkit.dockerfile.v0)

ENTRYPOINT ["/docker-entrypoint.sh"]

2025-11-20 22:13:44 UTC (buildkit.dockerfile.v0)

CMD ["php-fpm"]

Details
Created

2025-11-23 00:43:07 UTC

Size

209 MB

Content Digest
Labels
  • org.opencontainers.image.authors
    The phpMyAdmin Team <developers@phpmyadmin.net>
  • org.opencontainers.image.description
    Run phpMyAdmin with Alpine, Apache and PHP FPM.
  • org.opencontainers.image.documentation
    https://github.com/phpmyadmin/docker#readme
  • org.opencontainers.image.licenses
    GPL-2.0-only
  • org.opencontainers.image.source
    https://github.com/phpmyadmin/docker.git
  • org.opencontainers.image.title
    Official phpMyAdmin Docker image
  • org.opencontainers.image.url
    https://github.com/phpmyadmin/docker#readme
  • org.opencontainers.image.vendor
    phpMyAdmin
  • org.opencontainers.image.version
    5.2.3

Environment
GPG_KEYS

1198C0117593497A5EC5C199286AF1F9897469DC C28D937575603EB4ABB725861C0779DC5C0A9DE4 AFD8691FDAEDF03BDF6E460563F15A9B715376CA

MAX_EXECUTION_TIME

600

MEMORY_LIMIT

512M

PATH

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

PHPIZE_DEPS

autoconf dpkg-dev file g++ gcc libc-dev make pkg-config re2c

PHP_ASC_URL

https://www.php.net/distributions/php-8.3.28.tar.xz.asc

PHP_CFLAGS

-fstack-protector-strong -fpic -fpie -O2 -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64

PHP_CPPFLAGS

-fstack-protector-strong -fpic -fpie -O2 -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64

PHP_INI_DIR

/usr/local/etc/php

PHP_LDFLAGS

-Wl,-O1 -pie

PHP_SHA256

25e3860f30198a386242891c0bf9e2955931f7b666b96c3e3103d36a2a322326

PHP_URL

https://www.php.net/distributions/php-8.3.28.tar.xz

PHP_VERSION

8.3.28

PMA_SSL_DIR

/etc/phpmyadmin/ssl

SESSION_SAVE_PATH

/sessions

SHA256

57881348297c4412f86c410547cf76b4d8a236574dd2c6b7d6a2beebe7fc44e3

TZ

UTC

UPLOAD_LIMIT

2048K

UPLOAD_PROGRESS_EXT_URL

https://github.com/php/pecl-php-uploadprogress/archive/refs/tags/uploadprogress-2.0.2.tar.gz

UPLOAD_PROGRESS_SHA256

fe3f6cdfcedad563c970c4fd1cda31e422cfc0df5cc9a217d8c80ed3c8d137f5

URL

https://files.phpmyadmin.net/phpMyAdmin/5.2.3/phpMyAdmin-5.2.3-all-languages.tar.xz

VERSION

5.2.3


Layers

[#000] sha256:4522bc4acaa9a6a70c3e44b2e1942464457bbf2cb6f2df1cd45c06cf9b8b92c3 - 12.92% (27 MB)

[#001] sha256:8158ca8e7142e2a2e752aa54f9f38b113c4da18a1203f8a016c20021e2c7f958 - 0.0% (226 Bytes)

[#002] sha256:fcff319280e8296116d4860bcff3a58b87a62fddefafde0f28fe3ef23903b406 - 66.96% (140 MB)

[#003] sha256:f7b4e03a4bf5c5637137f3accd87df858f6838f0f9d69f831ab3812abd3ce599 - 0.0% (224 Bytes)

[#004] sha256:566748a9adf902857f78326070c9c6d39ee49fc4eecc53dbae2eebe7331a047a - 5.83% (12.2 MB)

[#005] sha256:debe44efe65356222c6feaa3cd169de7b16808d5dcf1568c5bbbcbd2e51bc238 - 0.0% (491 Bytes)

[#006] sha256:25634631ef1f574e9824bfaa8729432d199f6d7a59e3f33dcc291adf12332efa - 5.24% (10.9 MB)

[#007] sha256:adb7357d061a0ee1d6337afc9b36ea4e31152a9559194368e3250dcf6e8f9e0a - 0.0% (2.4 KB)

[#008] sha256:62adeaad1bb807fd58cf4607ba14390e3acc44ed53a191ba8774f4660dd66e07 - 0.0% (254 Bytes)

[#009] sha256:85e2a641acf7984dd080defd3c5b44b2d994452d5d89860bd3e086e87e8312ff - 0.0% (247 Bytes)

[#010] sha256:4f4fb700ef54461cfa02571ae0db9a0dc1e0cdb5577484a6d75e68dc38e8acc1 - 0.0% (32 Bytes)

[#011] sha256:e42ece06f3c4b03fbc8c72fd290c55c9b14f7e6b32f4ff3be73c0dbee090a453 - 0.0% (8.97 KB)

[#012] sha256:cdc6482d5fed4ed8dcfd50eb0f1b56308f012a3a845eb58bbffb6244d17fb8c7 - 2.61% (5.45 MB)

[#013] sha256:d3c57c7bdef2f1f628d5f45a687e00b018c713749f0c74699c9764244ec22d22 - 0.0% (655 Bytes)

[#014] sha256:26132e6a3fe852e692941315bd3fdd844adc07ec5271815f9dc353206085a2c7 - 6.44% (13.4 MB)

[#015] sha256:34d28a4bc3861ad5b57a9011f73d9f19d06b4c1a394e7188e5f7377e331b6776 - 0.0% (2.09 KB)

[#016] sha256:2248c920951f8db56e977cb16d1ef1c3793e58ddc94098df6163e2e68dcc7857 - 0.0% (860 Bytes)

[#017] sha256:1494d969f6bde6656138d65ecb3ba983c7afe51a4460d614c4c1af297a23ee3c - 0.0% (800 Bytes)


History
2025-11-17 00:00:00 UTC (debuerreotype 0.16)

# debian.sh --arch 'riscv64' out/ 'trixie' '@1763337600'

2025-11-18 15:15:57 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c set -eux; { echo 'Package: php*'; echo 'Pin: release *'; echo 'Pin-Priority: -1'; } > /etc/apt/preferences.d/no-debian-php # buildkit

2025-11-18 15:17:59 UTC (buildkit.dockerfile.v0)

ENV PHPIZE_DEPS=autoconf dpkg-dev file g++ gcc libc-dev make pkg-config re2c

2025-11-18 15:17:59 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c set -eux; apt-get update; apt-get install -y --no-install-recommends $PHPIZE_DEPS ca-certificates curl xz-utils ; apt-get dist-clean # buildkit

2025-11-18 15:17:59 UTC (buildkit.dockerfile.v0)

ENV PHP_INI_DIR=/usr/local/etc/php

2025-11-18 15:18:00 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c set -eux; mkdir -p "$PHP_INI_DIR/conf.d"; [ ! -d /var/www/html ]; mkdir -p /var/www/html; chown www-data:www-data /var/www/html; chmod 1777 /var/www/html # buildkit

2025-11-18 15:18:00 UTC (buildkit.dockerfile.v0)

ENV PHP_CFLAGS=-fstack-protector-strong -fpic -fpie -O2 -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64

2025-11-18 15:18:00 UTC (buildkit.dockerfile.v0)

ENV PHP_CPPFLAGS=-fstack-protector-strong -fpic -fpie -O2 -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64

2025-11-18 15:18:00 UTC (buildkit.dockerfile.v0)

ENV PHP_LDFLAGS=-Wl,-O1 -pie

2025-11-18 15:18:00 UTC (buildkit.dockerfile.v0)

ENV GPG_KEYS=1198C0117593497A5EC5C199286AF1F9897469DC C28D937575603EB4ABB725861C0779DC5C0A9DE4 AFD8691FDAEDF03BDF6E460563F15A9B715376CA

2025-11-18 15:18:00 UTC (buildkit.dockerfile.v0)

ENV PHP_VERSION=8.3.28

2025-11-18 15:18:00 UTC (buildkit.dockerfile.v0)

ENV PHP_URL=https://www.php.net/distributions/php-8.3.28.tar.xz PHP_ASC_URL=https://www.php.net/distributions/php-8.3.28.tar.xz.asc

2025-11-18 15:18:00 UTC (buildkit.dockerfile.v0)

ENV PHP_SHA256=25e3860f30198a386242891c0bf9e2955931f7b666b96c3e3103d36a2a322326

2025-11-22 12:03:49 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c set -eux; savedAptMark="$(apt-mark showmanual)"; apt-get update; apt-get install -y --no-install-recommends gnupg; apt-get dist-clean; mkdir -p /usr/src; cd /usr/src; curl -fsSL -o php.tar.xz "$PHP_URL"; if [ -n "$PHP_SHA256" ]; then echo "$PHP_SHA256 *php.tar.xz" | sha256sum -c -; fi; curl -fsSL -o php.tar.xz.asc "$PHP_ASC_URL"; export GNUPGHOME="$(mktemp -d)"; for key in $GPG_KEYS; do gpg --batch --keyserver keyserver.ubuntu.com --recv-keys "$key"; done; gpg --batch --verify php.tar.xz.asc php.tar.xz; gpgconf --kill all; rm -rf "$GNUPGHOME"; apt-mark auto '.*' > /dev/null; apt-mark manual $savedAptMark > /dev/null; apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false # buildkit

2025-11-22 12:03:49 UTC (buildkit.dockerfile.v0)

COPY docker-php-source /usr/local/bin/ # buildkit

2025-11-22 14:41:19 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c set -eux; savedAptMark="$(apt-mark showmanual)"; apt-get update; apt-get install -y --no-install-recommends libargon2-dev libcurl4-openssl-dev libonig-dev libreadline-dev libsodium-dev libsqlite3-dev libssl-dev libxml2-dev zlib1g-dev ; export CFLAGS="$PHP_CFLAGS" CPPFLAGS="$PHP_CPPFLAGS" LDFLAGS="$PHP_LDFLAGS" PHP_BUILD_PROVIDER='https://github.com/docker-library/php' PHP_UNAME='Linux - Docker' ; docker-php-source extract; cd /usr/src/php; gnuArch="$(dpkg-architecture --query DEB_BUILD_GNU_TYPE)"; debMultiarch="$(dpkg-architecture --query DEB_BUILD_MULTIARCH)"; if [ ! -d /usr/include/curl ]; then ln -sT "/usr/include/$debMultiarch/curl" /usr/local/include/curl; fi; ./configure --build="$gnuArch" --with-config-file-path="$PHP_INI_DIR" --with-config-file-scan-dir="$PHP_INI_DIR/conf.d" --enable-option-checking=fatal --with-mhash --with-pic --enable-mbstring --enable-mysqlnd --with-password-argon2 --with-sodium=shared --with-pdo-sqlite=/usr --with-sqlite3=/usr --with-curl --with-iconv --with-openssl --with-readline --with-zlib --disable-phpdbg --with-pear --with-libdir="lib/$debMultiarch" --disable-cgi --enable-fpm --with-fpm-user=www-data --with-fpm-group=www-data ; make -j "$(nproc)"; find -type f -name '*.a' -delete; make install; find /usr/local -type f -perm '/0111' -exec sh -euxc ' strip --strip-all "$@" || : ' -- '{}' + ; make clean; cp -v php.ini-* "$PHP_INI_DIR/"; cd /; docker-php-source delete; apt-mark auto '.*' > /dev/null; [ -z "$savedAptMark" ] || apt-mark manual $savedAptMark; find /usr/local -type f -executable -exec ldd '{}' ';' | awk '/=>/ { so = $(NF-1); if (index(so, "/usr/local/") == 1) { next }; gsub("^/(usr/)?", "", so); printf "*%s\n", so }' | sort -u | xargs -rt dpkg-query --search | awk 'sub(":$", "", $1) { print $1 }' | sort -u | xargs -r apt-mark manual ; apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false; apt-get dist-clean; pecl update-channels; rm -rf /tmp/pear ~/.pearrc; php --version # buildkit

2025-11-22 14:41:19 UTC (buildkit.dockerfile.v0)

COPY docker-php-ext-* docker-php-entrypoint /usr/local/bin/ # buildkit

2025-11-22 14:41:20 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c docker-php-ext-enable opcache # buildkit

2025-11-22 14:41:21 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c docker-php-ext-enable sodium # buildkit

2025-11-22 14:41:21 UTC (buildkit.dockerfile.v0)

ENTRYPOINT ["docker-php-entrypoint"]

2025-11-22 14:41:21 UTC (buildkit.dockerfile.v0)

WORKDIR /var/www/html

2025-11-22 14:41:21 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c set -eux; cd /usr/local/etc; if [ -d php-fpm.d ]; then sed 's!=NONE/!=!g' php-fpm.conf.default | tee php-fpm.conf > /dev/null; cp php-fpm.d/www.conf.default php-fpm.d/www.conf; else mkdir php-fpm.d; cp php-fpm.conf.default php-fpm.d/www.conf; { echo '[global]'; echo 'include=etc/php-fpm.d/*.conf'; } | tee php-fpm.conf; fi; { echo '[global]'; echo 'error_log = /proc/self/fd/2'; echo; echo '; https://github.com/docker-library/php/pull/725#issuecomment-443540114'; echo 'log_limit = 8192'; echo; echo '[www]'; echo '; php-fpm closes STDOUT on startup, so sending logs to /proc/self/fd/1 does not work.'; echo '; https://bugs.php.net/bug.php?id=73886'; echo 'access.log = /proc/self/fd/2'; echo; echo 'clear_env = no'; echo; echo '; Ensure worker stdout and stderr are sent to the main error log.'; echo 'catch_workers_output = yes'; echo 'decorate_workers_output = no'; } | tee php-fpm.d/docker.conf; { echo '[global]'; echo 'daemonize = no'; echo; echo '[www]'; echo 'listen = 9000'; } | tee php-fpm.d/zz-docker.conf; mkdir -p "$PHP_INI_DIR/conf.d"; { echo '; https://github.com/docker-library/php/issues/878#issuecomment-938595965'; echo 'fastcgi.logging = Off'; } > "$PHP_INI_DIR/conf.d/docker-fpm.ini" # buildkit

2025-11-22 14:41:21 UTC (buildkit.dockerfile.v0)

STOPSIGNAL SIGQUIT

2025-11-22 14:41:21 UTC (buildkit.dockerfile.v0)

EXPOSE map[9000/tcp:{}]

2025-11-22 14:41:21 UTC (buildkit.dockerfile.v0)

CMD ["php-fpm"]

2025-11-23 00:42:38 UTC (buildkit.dockerfile.v0)

ENV UPLOAD_PROGRESS_EXT_URL=https://github.com/php/pecl-php-uploadprogress/archive/refs/tags/uploadprogress-2.0.2.tar.gz

2025-11-23 00:42:38 UTC (buildkit.dockerfile.v0)

ENV UPLOAD_PROGRESS_SHA256=fe3f6cdfcedad563c970c4fd1cda31e422cfc0df5cc9a217d8c80ed3c8d137f5

2025-11-23 00:42:38 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c set -ex; apt-get update; apt-get install -y --no-install-recommends gnupg dirmngr ; savedAptMark="$(apt-mark showmanual)"; apt-get install -y --no-install-recommends libbz2-dev libfreetype6-dev libjpeg-dev libpng-dev libwebp-dev libxpm-dev libzip-dev ; mkdir -p /tmp/uploadprogress; curl -fsSL -o /tmp/uploadprogress/uploadprogress.tar.gz "$UPLOAD_PROGRESS_EXT_URL"; echo "$UPLOAD_PROGRESS_SHA256 /tmp/uploadprogress/uploadprogress.tar.gz" | sha256sum -c -; tar -xf /tmp/uploadprogress/uploadprogress.tar.gz -C /tmp/uploadprogress --strip-components=1; docker-php-ext-configure gd --with-freetype --with-jpeg --with-webp --with-xpm; docker-php-ext-install -j "$(nproc)" bz2 gd mysqli opcache zip bcmath /tmp/uploadprogress ; rm -r /tmp/uploadprogress; apt-mark auto '.*' > /dev/null; apt-mark manual $savedAptMark; extdir="$(php -r 'echo ini_get("extension_dir");')"; ldd "$extdir"/*.so | awk '/=>/ { so = $(NF-1); if (index(so, "/usr/local/") == 1) { next }; gsub("^/(usr/)?", "", so); print so }' | sort -u | xargs -r dpkg-query -S | cut -d: -f1 | sort -u | xargs -rt apt-mark manual; apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false; rm -rf /var/lib/apt/lists/*; ldd "$extdir"/*.so | grep -qzv "=> not found" || (echo "Sanity check failed: missing libraries:"; ldd "$extdir"/*.so | grep " => not found"; exit 1); ldd "$extdir"/*.so | grep -q "libzip.so.* => .*/libzip.so.*" || (echo "Sanity check failed: libzip.so is not referenced"; ldd "$extdir"/*.so; exit 1); err="$(php --version 3>&1 1>&2 2>&3)"; [ -z "$err" ] || (echo "Sanity check failed: php returned errors; $err"; exit 1;); # buildkit

2025-11-23 00:42:38 UTC (buildkit.dockerfile.v0)

ENV PMA_SSL_DIR=/etc/phpmyadmin/ssl

2025-11-23 00:42:38 UTC (buildkit.dockerfile.v0)

ENV MAX_EXECUTION_TIME=600

2025-11-23 00:42:38 UTC (buildkit.dockerfile.v0)

ENV MEMORY_LIMIT=512M

2025-11-23 00:42:38 UTC (buildkit.dockerfile.v0)

ENV UPLOAD_LIMIT=2048K

2025-11-23 00:42:38 UTC (buildkit.dockerfile.v0)

ENV TZ=UTC

2025-11-23 00:42:38 UTC (buildkit.dockerfile.v0)

ENV SESSION_SAVE_PATH=/sessions

2025-11-23 00:42:39 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c set -ex; mkdir $SESSION_SAVE_PATH; mkdir -p $PMA_SSL_DIR; chmod 1777 $SESSION_SAVE_PATH; chmod 755 $PMA_SSL_DIR; chown www-data:www-data /etc/phpmyadmin; chown www-data:www-data $PMA_SSL_DIR; chown www-data:www-data $SESSION_SAVE_PATH; { echo 'opcache.memory_consumption=128'; echo 'opcache.interned_strings_buffer=8'; echo 'opcache.max_accelerated_files=4000'; echo 'opcache.revalidate_freq=2'; echo 'opcache.fast_shutdown=1'; } > $PHP_INI_DIR/conf.d/opcache-recommended.ini; { echo 'session.cookie_httponly=1'; echo 'session.use_strict_mode=1'; } > $PHP_INI_DIR/conf.d/session-strict.ini; { echo 'allow_url_fopen=Off'; echo 'max_execution_time=${MAX_EXECUTION_TIME}'; echo 'max_input_vars=10000'; echo 'memory_limit=${MEMORY_LIMIT}'; echo 'post_max_size=${UPLOAD_LIMIT}'; echo 'upload_max_filesize=${UPLOAD_LIMIT}'; echo 'date.timezone=${TZ}'; echo 'session.save_path=${SESSION_SAVE_PATH}'; } > $PHP_INI_DIR/conf.d/phpmyadmin-misc.ini # buildkit

2025-11-23 00:42:39 UTC (buildkit.dockerfile.v0)

USER www-data:www-data

2025-11-23 00:42:39 UTC (buildkit.dockerfile.v0)

ENV VERSION=5.2.3

2025-11-23 00:42:39 UTC (buildkit.dockerfile.v0)

ENV SHA256=57881348297c4412f86c410547cf76b4d8a236574dd2c6b7d6a2beebe7fc44e3

2025-11-23 00:42:39 UTC (buildkit.dockerfile.v0)

ENV URL=https://files.phpmyadmin.net/phpMyAdmin/5.2.3/phpMyAdmin-5.2.3-all-languages.tar.xz

2025-11-23 00:42:39 UTC (buildkit.dockerfile.v0)

LABEL org.opencontainers.image.title=Official phpMyAdmin Docker image org.opencontainers.image.description=Run phpMyAdmin with Alpine, Apache and PHP FPM. org.opencontainers.image.authors=The phpMyAdmin Team <developers@phpmyadmin.net> org.opencontainers.image.vendor=phpMyAdmin org.opencontainers.image.documentation=https://github.com/phpmyadmin/docker#readme org.opencontainers.image.licenses=GPL-2.0-only org.opencontainers.image.version=5.2.3 org.opencontainers.image.url=https://github.com/phpmyadmin/docker#readme org.opencontainers.image.source=https://github.com/phpmyadmin/docker.git

2025-11-23 00:43:06 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c set -ex; export GNUPGHOME="$(mktemp -d)"; export GPGKEY="3D06A59ECE730EB71B511C17CE752F178259BD92"; curl -fsSL -o phpMyAdmin.tar.xz $URL; curl -fsSL -o phpMyAdmin.tar.xz.asc $URL.asc; echo "$SHA256 *phpMyAdmin.tar.xz" | sha256sum -c -; gpg --batch --keyserver keyserver.ubuntu.com --recv-keys "$GPGKEY" || gpg --batch --keyserver pgp.mit.edu --recv-keys "$GPGKEY" || gpg --batch --keyserver keyserver.pgp.com --recv-keys "$GPGKEY" || gpg --batch --keyserver keys.openpgp.org --recv-keys "$GPGKEY"; gpg --batch --verify phpMyAdmin.tar.xz.asc phpMyAdmin.tar.xz; tar -xf phpMyAdmin.tar.xz -C /var/www/html --strip-components=1; mkdir -p /var/www/html/tmp; gpgconf --kill all; rm -r "$GNUPGHOME" phpMyAdmin.tar.xz phpMyAdmin.tar.xz.asc; rm -r -v /var/www/html/setup/ /var/www/html/examples/ /var/www/html/js/src/ /var/www/html/babel.config.json /var/www/html/doc/html/_sources/ /var/www/html/RELEASE-DATE-$VERSION /var/www/html/CONTRIBUTING.md; grep -q -F "'configFile' => ROOT_PATH . 'config.inc.php'," /var/www/html/libraries/vendor_config.php; sed -i "s@'configFile' => .*@'configFile' => '/etc/phpmyadmin/config.inc.php',@" /var/www/html/libraries/vendor_config.php; grep -q -F "'configFile' => '/etc/phpmyadmin/config.inc.php'," /var/www/html/libraries/vendor_config.php; php -l /var/www/html/libraries/vendor_config.php; find /var/www/html -type d -exec chmod 555 {} \;; find /var/www/html -type f -exec chmod 444 {} \;; chmod 1777 /var/www/html/tmp; # buildkit

2025-11-23 00:43:07 UTC (buildkit.dockerfile.v0)

COPY --chown=www-data:www-data config.inc.php /etc/phpmyadmin/config.inc.php # buildkit

2025-11-23 00:43:07 UTC (buildkit.dockerfile.v0)

COPY --chown=www-data:www-data helpers.php /etc/phpmyadmin/helpers.php # buildkit

2025-11-23 00:43:07 UTC (buildkit.dockerfile.v0)

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

2025-11-23 00:43:07 UTC (buildkit.dockerfile.v0)

USER root

2025-11-23 00:43:07 UTC (buildkit.dockerfile.v0)

ENTRYPOINT ["/docker-entrypoint.sh"]

2025-11-23 00:43:07 UTC (buildkit.dockerfile.v0)

CMD ["php-fpm"]

Details
Created

2025-11-20 21:14:17 UTC

Size

159 MB

Content Digest
Labels
  • org.opencontainers.image.authors
    The phpMyAdmin Team <developers@phpmyadmin.net>
  • org.opencontainers.image.description
    Run phpMyAdmin with Alpine, Apache and PHP FPM.
  • org.opencontainers.image.documentation
    https://github.com/phpmyadmin/docker#readme
  • org.opencontainers.image.licenses
    GPL-2.0-only
  • org.opencontainers.image.source
    https://github.com/phpmyadmin/docker.git
  • org.opencontainers.image.title
    Official phpMyAdmin Docker image
  • org.opencontainers.image.url
    https://github.com/phpmyadmin/docker#readme
  • org.opencontainers.image.vendor
    phpMyAdmin
  • org.opencontainers.image.version
    5.2.3

Environment
GPG_KEYS

1198C0117593497A5EC5C199286AF1F9897469DC C28D937575603EB4ABB725861C0779DC5C0A9DE4 AFD8691FDAEDF03BDF6E460563F15A9B715376CA

MAX_EXECUTION_TIME

600

MEMORY_LIMIT

512M

PATH

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

PHPIZE_DEPS

autoconf dpkg-dev file g++ gcc libc-dev make pkg-config re2c

PHP_ASC_URL

https://www.php.net/distributions/php-8.3.28.tar.xz.asc

PHP_CFLAGS

-fstack-protector-strong -fpic -fpie -O2 -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64

PHP_CPPFLAGS

-fstack-protector-strong -fpic -fpie -O2 -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64

PHP_INI_DIR

/usr/local/etc/php

PHP_LDFLAGS

-Wl,-O1 -pie

PHP_SHA256

25e3860f30198a386242891c0bf9e2955931f7b666b96c3e3103d36a2a322326

PHP_URL

https://www.php.net/distributions/php-8.3.28.tar.xz

PHP_VERSION

8.3.28

PMA_SSL_DIR

/etc/phpmyadmin/ssl

SESSION_SAVE_PATH

/sessions

SHA256

57881348297c4412f86c410547cf76b4d8a236574dd2c6b7d6a2beebe7fc44e3

TZ

UTC

UPLOAD_LIMIT

2048K

UPLOAD_PROGRESS_EXT_URL

https://github.com/php/pecl-php-uploadprogress/archive/refs/tags/uploadprogress-2.0.2.tar.gz

UPLOAD_PROGRESS_SHA256

fe3f6cdfcedad563c970c4fd1cda31e422cfc0df5cc9a217d8c80ed3c8d137f5

URL

https://files.phpmyadmin.net/phpMyAdmin/5.2.3/phpMyAdmin-5.2.3-all-languages.tar.xz

VERSION

5.2.3


Layers

[#000] sha256:3063905a9d3db554a6c1d839c1212baff57798d644d5b0d198eef84afd107192 - 17.87% (28.5 MB)

[#001] sha256:b66e4e1100750d37d51576e9f96c662efe85d0c945298503b63850bef5a73306 - 0.0% (225 Bytes)

[#002] sha256:df6727ba4e95e920cfe933c200ce327062199769af34f6af659cfd5dea36e56f - 55.46% (88.3 MB)

[#003] sha256:19b97f365a6a835b1f5a4cd1af7cb1b7706f5f6e5dba7c725b99b0dc640d3359 - 0.0% (226 Bytes)

[#004] sha256:03f7e965e4b3fd6f08b0fe0d2ec99eee1cb94683340350ba8b7b76c75f5e5a3f - 7.65% (12.2 MB)

[#005] sha256:4d2bfe72e2fda908f985fd8f4a3a9532071d3f422e7146787ece524b791c2563 - 0.0% (489 Bytes)

[#006] sha256:94c77cf0f921bfb3195deafd4e49413510e9cd63a0f6c9d6916741550c4da6e9 - 7.05% (11.2 MB)

[#007] sha256:f16346710f9605796651db307285fab952ab5e6c1cc7410c487bae4b63c095d2 - 0.0% (2.4 KB)

[#008] sha256:34d323aaf85805d09a4085afa25fdbd0f046ab12f0eaba52cedfa752cea398b3 - 0.0% (249 Bytes)

[#009] sha256:f147caafd3a3fab7b29544750bcb60af2ec8c639bee7a12b738543ca4cc38455 - 0.0% (245 Bytes)

[#010] sha256:4f4fb700ef54461cfa02571ae0db9a0dc1e0cdb5577484a6d75e68dc38e8acc1 - 0.0% (32 Bytes)

[#011] sha256:aea6b47a1367911b506c7555926c25e91dd30b4a925b0e2a37389beb71e1dd3b - 0.01% (8.97 KB)

[#012] sha256:8cbbcf59cdacea4a0e598cc978b4db7ac57507b24eadc752a07e04d0fbbbe417 - 3.52% (5.6 MB)

[#013] sha256:8ab1b4ef2bf8c5901b519a603f06be8f9391f0f9995ab2f933584c3e0e062bf0 - 0.0% (657 Bytes)

[#014] sha256:1bda5731d0a6bf37e8fbd2701567f50fa5a9ca40beea5bea21cc676ce61e7216 - 8.44% (13.4 MB)

[#015] sha256:7faf3720edd06ed003dfaa3baee279cbafbeb8e6df9b0e14eee41027ae2f4f4d - 0.0% (2.09 KB)

[#016] sha256:2f1b3a6918ee6f5b5e98eb62691c869245b1ff89f1deb73a64c6a176ba98980b - 0.0% (858 Bytes)

[#017] sha256:173d497845179c942ce7b781cde84582c40cbe03c3ec86984e21736a45fe1618 - 0.0% (800 Bytes)


History
2025-11-17 00:00:00 UTC (debuerreotype 0.16)

# debian.sh --arch 's390x' out/ 'trixie' '@1763337600'

2025-11-18 02:19:35 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c set -eux; { echo 'Package: php*'; echo 'Pin: release *'; echo 'Pin-Priority: -1'; } > /etc/apt/preferences.d/no-debian-php # buildkit

2025-11-18 02:19:49 UTC (buildkit.dockerfile.v0)

ENV PHPIZE_DEPS=autoconf dpkg-dev file g++ gcc libc-dev make pkg-config re2c

2025-11-18 02:19:49 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c set -eux; apt-get update; apt-get install -y --no-install-recommends $PHPIZE_DEPS ca-certificates curl xz-utils ; apt-get dist-clean # buildkit

2025-11-18 02:19:49 UTC (buildkit.dockerfile.v0)

ENV PHP_INI_DIR=/usr/local/etc/php

2025-11-18 02:19:49 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c set -eux; mkdir -p "$PHP_INI_DIR/conf.d"; [ ! -d /var/www/html ]; mkdir -p /var/www/html; chown www-data:www-data /var/www/html; chmod 1777 /var/www/html # buildkit

2025-11-18 02:19:49 UTC (buildkit.dockerfile.v0)

ENV PHP_CFLAGS=-fstack-protector-strong -fpic -fpie -O2 -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64

2025-11-18 02:19:49 UTC (buildkit.dockerfile.v0)

ENV PHP_CPPFLAGS=-fstack-protector-strong -fpic -fpie -O2 -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64

2025-11-18 02:19:49 UTC (buildkit.dockerfile.v0)

ENV PHP_LDFLAGS=-Wl,-O1 -pie

2025-11-18 02:19:49 UTC (buildkit.dockerfile.v0)

ENV GPG_KEYS=1198C0117593497A5EC5C199286AF1F9897469DC C28D937575603EB4ABB725861C0779DC5C0A9DE4 AFD8691FDAEDF03BDF6E460563F15A9B715376CA

2025-11-18 02:19:49 UTC (buildkit.dockerfile.v0)

ENV PHP_VERSION=8.3.28

2025-11-18 02:19:49 UTC (buildkit.dockerfile.v0)

ENV PHP_URL=https://www.php.net/distributions/php-8.3.28.tar.xz PHP_ASC_URL=https://www.php.net/distributions/php-8.3.28.tar.xz.asc

2025-11-18 02:19:49 UTC (buildkit.dockerfile.v0)

ENV PHP_SHA256=25e3860f30198a386242891c0bf9e2955931f7b666b96c3e3103d36a2a322326

2025-11-20 20:37:05 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c set -eux; savedAptMark="$(apt-mark showmanual)"; apt-get update; apt-get install -y --no-install-recommends gnupg; apt-get dist-clean; mkdir -p /usr/src; cd /usr/src; curl -fsSL -o php.tar.xz "$PHP_URL"; if [ -n "$PHP_SHA256" ]; then echo "$PHP_SHA256 *php.tar.xz" | sha256sum -c -; fi; curl -fsSL -o php.tar.xz.asc "$PHP_ASC_URL"; export GNUPGHOME="$(mktemp -d)"; for key in $GPG_KEYS; do gpg --batch --keyserver keyserver.ubuntu.com --recv-keys "$key"; done; gpg --batch --verify php.tar.xz.asc php.tar.xz; gpgconf --kill all; rm -rf "$GNUPGHOME"; apt-mark auto '.*' > /dev/null; apt-mark manual $savedAptMark > /dev/null; apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false # buildkit

2025-11-20 20:37:05 UTC (buildkit.dockerfile.v0)

COPY docker-php-source /usr/local/bin/ # buildkit

2025-11-20 20:43:19 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c set -eux; savedAptMark="$(apt-mark showmanual)"; apt-get update; apt-get install -y --no-install-recommends libargon2-dev libcurl4-openssl-dev libonig-dev libreadline-dev libsodium-dev libsqlite3-dev libssl-dev libxml2-dev zlib1g-dev ; export CFLAGS="$PHP_CFLAGS" CPPFLAGS="$PHP_CPPFLAGS" LDFLAGS="$PHP_LDFLAGS" PHP_BUILD_PROVIDER='https://github.com/docker-library/php' PHP_UNAME='Linux - Docker' ; docker-php-source extract; cd /usr/src/php; gnuArch="$(dpkg-architecture --query DEB_BUILD_GNU_TYPE)"; debMultiarch="$(dpkg-architecture --query DEB_BUILD_MULTIARCH)"; if [ ! -d /usr/include/curl ]; then ln -sT "/usr/include/$debMultiarch/curl" /usr/local/include/curl; fi; ./configure --build="$gnuArch" --with-config-file-path="$PHP_INI_DIR" --with-config-file-scan-dir="$PHP_INI_DIR/conf.d" --enable-option-checking=fatal --with-mhash --with-pic --enable-mbstring --enable-mysqlnd --with-password-argon2 --with-sodium=shared --with-pdo-sqlite=/usr --with-sqlite3=/usr --with-curl --with-iconv --with-openssl --with-readline --with-zlib --disable-phpdbg --with-pear --with-libdir="lib/$debMultiarch" --disable-cgi --enable-fpm --with-fpm-user=www-data --with-fpm-group=www-data ; make -j "$(nproc)"; find -type f -name '*.a' -delete; make install; find /usr/local -type f -perm '/0111' -exec sh -euxc ' strip --strip-all "$@" || : ' -- '{}' + ; make clean; cp -v php.ini-* "$PHP_INI_DIR/"; cd /; docker-php-source delete; apt-mark auto '.*' > /dev/null; [ -z "$savedAptMark" ] || apt-mark manual $savedAptMark; find /usr/local -type f -executable -exec ldd '{}' ';' | awk '/=>/ { so = $(NF-1); if (index(so, "/usr/local/") == 1) { next }; gsub("^/(usr/)?", "", so); printf "*%s\n", so }' | sort -u | xargs -rt dpkg-query --search | awk 'sub(":$", "", $1) { print $1 }' | sort -u | xargs -r apt-mark manual ; apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false; apt-get dist-clean; pecl update-channels; rm -rf /tmp/pear ~/.pearrc; php --version # buildkit

2025-11-20 20:43:19 UTC (buildkit.dockerfile.v0)

COPY docker-php-ext-* docker-php-entrypoint /usr/local/bin/ # buildkit

2025-11-20 20:43:19 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c docker-php-ext-enable opcache # buildkit

2025-11-20 20:43:19 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c docker-php-ext-enable sodium # buildkit

2025-11-20 20:43:19 UTC (buildkit.dockerfile.v0)

ENTRYPOINT ["docker-php-entrypoint"]

2025-11-20 20:43:19 UTC (buildkit.dockerfile.v0)

WORKDIR /var/www/html

2025-11-20 20:43:19 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c set -eux; cd /usr/local/etc; if [ -d php-fpm.d ]; then sed 's!=NONE/!=!g' php-fpm.conf.default | tee php-fpm.conf > /dev/null; cp php-fpm.d/www.conf.default php-fpm.d/www.conf; else mkdir php-fpm.d; cp php-fpm.conf.default php-fpm.d/www.conf; { echo '[global]'; echo 'include=etc/php-fpm.d/*.conf'; } | tee php-fpm.conf; fi; { echo '[global]'; echo 'error_log = /proc/self/fd/2'; echo; echo '; https://github.com/docker-library/php/pull/725#issuecomment-443540114'; echo 'log_limit = 8192'; echo; echo '[www]'; echo '; php-fpm closes STDOUT on startup, so sending logs to /proc/self/fd/1 does not work.'; echo '; https://bugs.php.net/bug.php?id=73886'; echo 'access.log = /proc/self/fd/2'; echo; echo 'clear_env = no'; echo; echo '; Ensure worker stdout and stderr are sent to the main error log.'; echo 'catch_workers_output = yes'; echo 'decorate_workers_output = no'; } | tee php-fpm.d/docker.conf; { echo '[global]'; echo 'daemonize = no'; echo; echo '[www]'; echo 'listen = 9000'; } | tee php-fpm.d/zz-docker.conf; mkdir -p "$PHP_INI_DIR/conf.d"; { echo '; https://github.com/docker-library/php/issues/878#issuecomment-938595965'; echo 'fastcgi.logging = Off'; } > "$PHP_INI_DIR/conf.d/docker-fpm.ini" # buildkit

2025-11-20 20:43:19 UTC (buildkit.dockerfile.v0)

STOPSIGNAL SIGQUIT

2025-11-20 20:43:19 UTC (buildkit.dockerfile.v0)

EXPOSE map[9000/tcp:{}]

2025-11-20 20:43:19 UTC (buildkit.dockerfile.v0)

CMD ["php-fpm"]

2025-11-20 21:14:12 UTC (buildkit.dockerfile.v0)

ENV UPLOAD_PROGRESS_EXT_URL=https://github.com/php/pecl-php-uploadprogress/archive/refs/tags/uploadprogress-2.0.2.tar.gz

2025-11-20 21:14:12 UTC (buildkit.dockerfile.v0)

ENV UPLOAD_PROGRESS_SHA256=fe3f6cdfcedad563c970c4fd1cda31e422cfc0df5cc9a217d8c80ed3c8d137f5

2025-11-20 21:14:12 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c set -ex; apt-get update; apt-get install -y --no-install-recommends gnupg dirmngr ; savedAptMark="$(apt-mark showmanual)"; apt-get install -y --no-install-recommends libbz2-dev libfreetype6-dev libjpeg-dev libpng-dev libwebp-dev libxpm-dev libzip-dev ; mkdir -p /tmp/uploadprogress; curl -fsSL -o /tmp/uploadprogress/uploadprogress.tar.gz "$UPLOAD_PROGRESS_EXT_URL"; echo "$UPLOAD_PROGRESS_SHA256 /tmp/uploadprogress/uploadprogress.tar.gz" | sha256sum -c -; tar -xf /tmp/uploadprogress/uploadprogress.tar.gz -C /tmp/uploadprogress --strip-components=1; docker-php-ext-configure gd --with-freetype --with-jpeg --with-webp --with-xpm; docker-php-ext-install -j "$(nproc)" bz2 gd mysqli opcache zip bcmath /tmp/uploadprogress ; rm -r /tmp/uploadprogress; apt-mark auto '.*' > /dev/null; apt-mark manual $savedAptMark; extdir="$(php -r 'echo ini_get("extension_dir");')"; ldd "$extdir"/*.so | awk '/=>/ { so = $(NF-1); if (index(so, "/usr/local/") == 1) { next }; gsub("^/(usr/)?", "", so); print so }' | sort -u | xargs -r dpkg-query -S | cut -d: -f1 | sort -u | xargs -rt apt-mark manual; apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false; rm -rf /var/lib/apt/lists/*; ldd "$extdir"/*.so | grep -qzv "=> not found" || (echo "Sanity check failed: missing libraries:"; ldd "$extdir"/*.so | grep " => not found"; exit 1); ldd "$extdir"/*.so | grep -q "libzip.so.* => .*/libzip.so.*" || (echo "Sanity check failed: libzip.so is not referenced"; ldd "$extdir"/*.so; exit 1); err="$(php --version 3>&1 1>&2 2>&3)"; [ -z "$err" ] || (echo "Sanity check failed: php returned errors; $err"; exit 1;); # buildkit

2025-11-20 21:14:12 UTC (buildkit.dockerfile.v0)

ENV PMA_SSL_DIR=/etc/phpmyadmin/ssl

2025-11-20 21:14:12 UTC (buildkit.dockerfile.v0)

ENV MAX_EXECUTION_TIME=600

2025-11-20 21:14:12 UTC (buildkit.dockerfile.v0)

ENV MEMORY_LIMIT=512M

2025-11-20 21:14:12 UTC (buildkit.dockerfile.v0)

ENV UPLOAD_LIMIT=2048K

2025-11-20 21:14:12 UTC (buildkit.dockerfile.v0)

ENV TZ=UTC

2025-11-20 21:14:12 UTC (buildkit.dockerfile.v0)

ENV SESSION_SAVE_PATH=/sessions

2025-11-20 21:14:12 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c set -ex; mkdir $SESSION_SAVE_PATH; mkdir -p $PMA_SSL_DIR; chmod 1777 $SESSION_SAVE_PATH; chmod 755 $PMA_SSL_DIR; chown www-data:www-data /etc/phpmyadmin; chown www-data:www-data $PMA_SSL_DIR; chown www-data:www-data $SESSION_SAVE_PATH; { echo 'opcache.memory_consumption=128'; echo 'opcache.interned_strings_buffer=8'; echo 'opcache.max_accelerated_files=4000'; echo 'opcache.revalidate_freq=2'; echo 'opcache.fast_shutdown=1'; } > $PHP_INI_DIR/conf.d/opcache-recommended.ini; { echo 'session.cookie_httponly=1'; echo 'session.use_strict_mode=1'; } > $PHP_INI_DIR/conf.d/session-strict.ini; { echo 'allow_url_fopen=Off'; echo 'max_execution_time=${MAX_EXECUTION_TIME}'; echo 'max_input_vars=10000'; echo 'memory_limit=${MEMORY_LIMIT}'; echo 'post_max_size=${UPLOAD_LIMIT}'; echo 'upload_max_filesize=${UPLOAD_LIMIT}'; echo 'date.timezone=${TZ}'; echo 'session.save_path=${SESSION_SAVE_PATH}'; } > $PHP_INI_DIR/conf.d/phpmyadmin-misc.ini # buildkit

2025-11-20 21:14:12 UTC (buildkit.dockerfile.v0)

USER www-data:www-data

2025-11-20 21:14:12 UTC (buildkit.dockerfile.v0)

ENV VERSION=5.2.3

2025-11-20 21:14:12 UTC (buildkit.dockerfile.v0)

ENV SHA256=57881348297c4412f86c410547cf76b4d8a236574dd2c6b7d6a2beebe7fc44e3

2025-11-20 21:14:12 UTC (buildkit.dockerfile.v0)

ENV URL=https://files.phpmyadmin.net/phpMyAdmin/5.2.3/phpMyAdmin-5.2.3-all-languages.tar.xz

2025-11-20 21:14:12 UTC (buildkit.dockerfile.v0)

LABEL org.opencontainers.image.title=Official phpMyAdmin Docker image org.opencontainers.image.description=Run phpMyAdmin with Alpine, Apache and PHP FPM. org.opencontainers.image.authors=The phpMyAdmin Team <developers@phpmyadmin.net> org.opencontainers.image.vendor=phpMyAdmin org.opencontainers.image.documentation=https://github.com/phpmyadmin/docker#readme org.opencontainers.image.licenses=GPL-2.0-only org.opencontainers.image.version=5.2.3 org.opencontainers.image.url=https://github.com/phpmyadmin/docker#readme org.opencontainers.image.source=https://github.com/phpmyadmin/docker.git

2025-11-20 21:14:17 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c set -ex; export GNUPGHOME="$(mktemp -d)"; export GPGKEY="3D06A59ECE730EB71B511C17CE752F178259BD92"; curl -fsSL -o phpMyAdmin.tar.xz $URL; curl -fsSL -o phpMyAdmin.tar.xz.asc $URL.asc; echo "$SHA256 *phpMyAdmin.tar.xz" | sha256sum -c -; gpg --batch --keyserver keyserver.ubuntu.com --recv-keys "$GPGKEY" || gpg --batch --keyserver pgp.mit.edu --recv-keys "$GPGKEY" || gpg --batch --keyserver keyserver.pgp.com --recv-keys "$GPGKEY" || gpg --batch --keyserver keys.openpgp.org --recv-keys "$GPGKEY"; gpg --batch --verify phpMyAdmin.tar.xz.asc phpMyAdmin.tar.xz; tar -xf phpMyAdmin.tar.xz -C /var/www/html --strip-components=1; mkdir -p /var/www/html/tmp; gpgconf --kill all; rm -r "$GNUPGHOME" phpMyAdmin.tar.xz phpMyAdmin.tar.xz.asc; rm -r -v /var/www/html/setup/ /var/www/html/examples/ /var/www/html/js/src/ /var/www/html/babel.config.json /var/www/html/doc/html/_sources/ /var/www/html/RELEASE-DATE-$VERSION /var/www/html/CONTRIBUTING.md; grep -q -F "'configFile' => ROOT_PATH . 'config.inc.php'," /var/www/html/libraries/vendor_config.php; sed -i "s@'configFile' => .*@'configFile' => '/etc/phpmyadmin/config.inc.php',@" /var/www/html/libraries/vendor_config.php; grep -q -F "'configFile' => '/etc/phpmyadmin/config.inc.php'," /var/www/html/libraries/vendor_config.php; php -l /var/www/html/libraries/vendor_config.php; find /var/www/html -type d -exec chmod 555 {} \;; find /var/www/html -type f -exec chmod 444 {} \;; chmod 1777 /var/www/html/tmp; # buildkit

2025-11-20 21:14:17 UTC (buildkit.dockerfile.v0)

COPY --chown=www-data:www-data config.inc.php /etc/phpmyadmin/config.inc.php # buildkit

2025-11-20 21:14:17 UTC (buildkit.dockerfile.v0)

COPY --chown=www-data:www-data helpers.php /etc/phpmyadmin/helpers.php # buildkit

2025-11-20 21:14:17 UTC (buildkit.dockerfile.v0)

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

2025-11-20 21:14:17 UTC (buildkit.dockerfile.v0)

USER root

2025-11-20 21:14:17 UTC (buildkit.dockerfile.v0)

ENTRYPOINT ["/docker-entrypoint.sh"]

2025-11-20 21:14:17 UTC (buildkit.dockerfile.v0)

CMD ["php-fpm"]

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