2025-08-29 16:08:05 UTC
598 MB
/opt/airflow
AIRFLOW_IMAGE_TYPEprod
AIRFLOW_INSTALLATION_METHODapache-airflow
AIRFLOW_PIP_VERSION25.2
AIRFLOW_SETUPTOOLS_VERSION80.9.0
AIRFLOW_UID50000
AIRFLOW_USER_HOME_DIR/home/airflow
AIRFLOW_USE_UVfalse
AIRFLOW_UV_VERSION0.8.13
AIRFLOW_VERSION3.0.6
AIRFLOW__CORE__LOAD_EXAMPLESfalse
BUILD_ID COMMIT_SHAe965c2e676d85ced65a485d4b2601addc2fd3e97
DEBIAN_FRONTENDnoninteractive
DUMB_INIT_SETSID1
GPG_KEYE3FF2839C048B25C084DEBE9B26995E310250568
GUNICORN_CMD_ARGS--worker-tmp-dir /dev/shm
INSTALL_MSSQL_CLIENTtrue
INSTALL_MYSQL_CLIENTtrue
INSTALL_MYSQL_CLIENT_TYPEmariadb
INSTALL_POSTGRES_CLIENTtrue
LANGC.UTF-8
LANGUAGEC.UTF-8
LC_ALLC.UTF-8
LC_CTYPEC.UTF-8
LC_MESSAGESC.UTF-8
LD_LIBRARY_PATH/usr/local/lib
PATH/root/bin:/home/airflow/.local/bin:/usr/local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
PIP_CACHE_DIR/tmp/.cache/pip
PS1(airflow)
PYTHON_BASE_IMAGEpython:3.9-slim-bookworm
PYTHON_SHA25661a42919e13d539f7673cf11d1c404380e28e540510860b9d242196e165709c9
PYTHON_VERSION3.9.23
RUNTIME_APT_COMMANDecho
RUNTIME_APT_DEPS UV_CACHE_DIR/tmp/.cache/uv
VIRTUAL_ENV/home/airflow/.local
[#000] sha256:b1badc6e50664185acfaa0ca255d8076061c2a9d881cecaaad281ae11af000ce - 4.5% (26.9 MB)
[#001] sha256:d505ba6e8ffb5d877b800935eea039bc19f7a292ca31b7b28b9bf96627ae5236 - 0.56% (3.35 MB)
[#002] sha256:155c87ca52aa1dc1d1b1b5699a5c9a35a79e2679ad3dcdedd7480bf510c1d79e - 2.38% (14.2 MB)
[#003] sha256:1379b03d41749668a5dd75fcbdd31216c0c4754b7ac11cba778c205756159fa4 - 0.0% (249 Bytes)
[#004] sha256:bb4f0e651a05cfdcdfd39ccad832832c05c59d7397ebe70a76d0a73bee3adc75 - 0.0% (1.48 KB)
[#005] sha256:15ca9478af3ea3d0e5e180462976587539fa15ad6b6098d65fb0f22760678684 - 17.2% (103 MB)
[#006] sha256:87271785320fd7a070890057c43506b56eab3830cc60bfc2e18883364cf728d7 - 0.0% (2.63 KB)
[#007] sha256:960f3d295e5f0ef42e15d89b33d64eea1440a5727ab1f1d37ac4b95aff28e62d - 0.0% (2.19 KB)
[#008] sha256:59a80e7d00245b7494dc198cef0cc10b78fd86ca75da53c13b8579aaa5807ce3 - 3.55% (21.2 MB)
[#009] sha256:6f8b64e9cd7896147e6b491ca1614ccb8c9edb0503a7ab23e2e5c33abf1dac02 - 71.79% (429 MB)
[#010] sha256:970dfd5ca44a4cce56575251620bb3b9c6f71dd9adb3ce012cb3eb7586318081 - 0.0% (7.59 KB)
[#011] sha256:1c1147d9a1196dac0d5032bc8366b98d335f944fb1fd7fbc96f88edb48c4b7e1 - 0.0% (18.9 KB)
[#012] sha256:2f576ceec7a7c8d4818179386ef51ac4c42089d584b186bf0bbd82cbb6337f91 - 0.0% (3.84 KB)
[#013] sha256:23916fcbfcf36e5bb583c4129f2197d4d510ef2c08f645864d9361c160ddf29a - 0.0% (521 Bytes)
[#014] sha256:45f1660e32eea5c9569ea2f4b102a211d3bbe00256377710a75620a3178fc290 - 0.0% (291 Bytes)
[#015] sha256:7c6ba3032cc1f075a29dfb8903daffd32def38f46ff4352b78782fa2d5086c23 - 0.0% (5.2 KB)
[#016] sha256:deb9596d630e047de3f66af642795c84fb8ac12d9cc02f0f05b79a5e4c37836d - 0.0% (1.04 KB)
[#017] sha256:e61cbf4bd2de502f35b1fae7597c202ba532253bdb4c0092714146f45a7d4d92 - 0.0% (114 Bytes)
[#018] sha256:c3a7063ab9429f80845ae179d80344a23f61409eb88ed299bde82769cfdcf684 - 0.0% (431 Bytes)
[#019] sha256:e7676b04cf5fec0833b4eb01b0f2ed6f8570056d5689221c65d3ad664af271ec - 0.0% (430 Bytes)
[#020] sha256:4f4fb700ef54461cfa02571ae0db9a0dc1e0cdb5577484a6d75e68dc38e8acc1 - 0.0% (32 Bytes)
# debian.sh --arch 'amd64' out/ 'bookworm' '@1754870400'
2025-08-08 18:20:34 UTC (buildkit.dockerfile.v0)ENV PATH=/usr/local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
2025-08-08 18:20:34 UTC (buildkit.dockerfile.v0)ENV LANG=C.UTF-8
2025-08-08 18:20:34 UTC (buildkit.dockerfile.v0)RUN /bin/sh -c set -eux; apt-get update; apt-get install -y --no-install-recommends ca-certificates netbase tzdata ; rm -rf /var/lib/apt/lists/* # buildkit
2025-08-08 18:20:34 UTC (buildkit.dockerfile.v0)ENV GPG_KEY=E3FF2839C048B25C084DEBE9B26995E310250568
2025-08-08 18:20:34 UTC (buildkit.dockerfile.v0)ENV PYTHON_VERSION=3.9.23
2025-08-08 18:20:34 UTC (buildkit.dockerfile.v0)ENV PYTHON_SHA256=61a42919e13d539f7673cf11d1c404380e28e540510860b9d242196e165709c9
2025-08-08 18:20:34 UTC (buildkit.dockerfile.v0)RUN /bin/sh -c set -eux; savedAptMark="$(apt-mark showmanual)"; apt-get update; apt-get install -y --no-install-recommends dpkg-dev gcc gnupg libbluetooth-dev libbz2-dev libc6-dev libdb-dev libffi-dev libgdbm-dev liblzma-dev libncursesw5-dev libreadline-dev libsqlite3-dev libssl-dev make tk-dev uuid-dev wget xz-utils zlib1g-dev ; wget -O python.tar.xz "https://www.python.org/ftp/python/${PYTHON_VERSION%%[a-z]*}/Python-$PYTHON_VERSION.tar.xz"; echo "$PYTHON_SHA256 *python.tar.xz" | sha256sum -c -; wget -O python.tar.xz.asc "https://www.python.org/ftp/python/${PYTHON_VERSION%%[a-z]*}/Python-$PYTHON_VERSION.tar.xz.asc"; GNUPGHOME="$(mktemp -d)"; export GNUPGHOME; gpg --batch --keyserver hkps://keys.openpgp.org --recv-keys "$GPG_KEY"; gpg --batch --verify python.tar.xz.asc python.tar.xz; gpgconf --kill all; rm -rf "$GNUPGHOME" python.tar.xz.asc; mkdir -p /usr/src/python; tar --extract --directory /usr/src/python --strip-components=1 --file python.tar.xz; rm python.tar.xz; cd /usr/src/python; gnuArch="$(dpkg-architecture --query DEB_BUILD_GNU_TYPE)"; ./configure --build="$gnuArch" --enable-loadable-sqlite-extensions --enable-optimizations --enable-option-checking=fatal --enable-shared --with-ensurepip ; nproc="$(nproc)"; EXTRA_CFLAGS="$(dpkg-buildflags --get CFLAGS)"; LDFLAGS="$(dpkg-buildflags --get LDFLAGS)"; LDFLAGS="${LDFLAGS:--Wl},--strip-all"; make -j "$nproc" "EXTRA_CFLAGS=${EXTRA_CFLAGS:-}" "LDFLAGS=${LDFLAGS:-}" ; rm python; make -j "$nproc" "EXTRA_CFLAGS=${EXTRA_CFLAGS:-}" "LDFLAGS=${LDFLAGS:--Wl},-rpath='\$\$ORIGIN/../lib'" python ; make install; cd /; rm -rf /usr/src/python; find /usr/local -depth \( \( -type d -a \( -name test -o -name tests -o -name idle_test \) \) -o \( -type f -a \( -name '*.pyc' -o -name '*.pyo' -o -name 'libpython*.a' \) \) \) -exec rm -rf '{}' + ; ldconfig; apt-mark auto '.*' > /dev/null; apt-mark manual $savedAptMark; find /usr/local -type f -executable -not \( -name '*tkinter*' \) -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; rm -rf /var/lib/apt/lists/*; export PYTHONDONTWRITEBYTECODE=1; python3 --version; pip3 install --disable-pip-version-check --no-cache-dir --no-compile 'setuptools==58.1.0' 'wheel<0.46' ; pip3 --version # buildkit
2025-08-08 18:20:34 UTC (buildkit.dockerfile.v0)RUN /bin/sh -c set -eux; for src in idle3 pip3 pydoc3 python3 python3-config; do dst="$(echo "$src" | tr -d 3)"; [ -s "/usr/local/bin/$src" ]; [ ! -e "/usr/local/bin/$dst" ]; ln -svT "$src" "/usr/local/bin/$dst"; done # buildkit
2025-08-08 18:20:34 UTC (buildkit.dockerfile.v0)CMD ["python3"]
2025-08-29 16:04:10 UTC (buildkit.dockerfile.v0)SHELL [/bin/bash -o pipefail -o errexit -o nounset -o nolog -c]
2025-08-29 16:04:10 UTC (buildkit.dockerfile.v0)ARG AIRFLOW_UID
2025-08-29 16:04:10 UTC (buildkit.dockerfile.v0)LABEL org.apache.airflow.distro=debian org.apache.airflow.module=airflow org.apache.airflow.component=airflow org.apache.airflow.image=airflow org.apache.airflow.uid=50000
2025-08-29 16:04:10 UTC (buildkit.dockerfile.v0)ARG PYTHON_BASE_IMAGE
2025-08-29 16:04:10 UTC (buildkit.dockerfile.v0)ENV PYTHON_BASE_IMAGE=python:3.9-slim-bookworm DEBIAN_FRONTEND=noninteractive LANGUAGE=C.UTF-8 LANG=C.UTF-8 LC_ALL=C.UTF-8 LC_CTYPE=C.UTF-8 LC_MESSAGES=C.UTF-8 LD_LIBRARY_PATH=/usr/local/lib PIP_CACHE_DIR=/tmp/.cache/pip UV_CACHE_DIR=/tmp/.cache/uv
2025-08-29 16:04:10 UTC (buildkit.dockerfile.v0)ARG RUNTIME_APT_DEPS=
2025-08-29 16:04:10 UTC (buildkit.dockerfile.v0)ARG ADDITIONAL_RUNTIME_APT_DEPS=
2025-08-29 16:04:10 UTC (buildkit.dockerfile.v0)ARG RUNTIME_APT_COMMAND=echo
2025-08-29 16:04:10 UTC (buildkit.dockerfile.v0)ARG ADDITIONAL_RUNTIME_APT_COMMAND=
2025-08-29 16:04:10 UTC (buildkit.dockerfile.v0)ARG ADDITIONAL_RUNTIME_APT_ENV=
2025-08-29 16:04:10 UTC (buildkit.dockerfile.v0)ARG INSTALL_MYSQL_CLIENT=true
2025-08-29 16:04:10 UTC (buildkit.dockerfile.v0)ARG INSTALL_MYSQL_CLIENT_TYPE=mariadb
2025-08-29 16:04:10 UTC (buildkit.dockerfile.v0)ARG INSTALL_MSSQL_CLIENT=true
2025-08-29 16:04:10 UTC (buildkit.dockerfile.v0)ARG INSTALL_POSTGRES_CLIENT=true
2025-08-29 16:04:10 UTC (buildkit.dockerfile.v0)ARG AIRFLOW_INSTALLATION_METHOD=apache-airflow
2025-08-29 16:04:10 UTC (buildkit.dockerfile.v0)ENV RUNTIME_APT_DEPS= ADDITIONAL_RUNTIME_APT_DEPS= RUNTIME_APT_COMMAND=echo ADDITIONAL_RUNTIME_APT_COMMAND= INSTALL_MYSQL_CLIENT=true INSTALL_MYSQL_CLIENT_TYPE=mariadb INSTALL_MSSQL_CLIENT=true INSTALL_POSTGRES_CLIENT=true GUNICORN_CMD_ARGS=--worker-tmp-dir /dev/shm AIRFLOW_INSTALLATION_METHOD=apache-airflow
2025-08-29 16:04:10 UTC (buildkit.dockerfile.v0)COPY install_os_dependencies.sh /scripts/docker/ # buildkit
2025-08-29 16:04:32 UTC (buildkit.dockerfile.v0)RUN |12 AIRFLOW_UID=50000 PYTHON_BASE_IMAGE=python:3.9-slim-bookworm RUNTIME_APT_DEPS= ADDITIONAL_RUNTIME_APT_DEPS= RUNTIME_APT_COMMAND=echo ADDITIONAL_RUNTIME_APT_COMMAND= ADDITIONAL_RUNTIME_APT_ENV= INSTALL_MYSQL_CLIENT=true INSTALL_MYSQL_CLIENT_TYPE=mariadb INSTALL_MSSQL_CLIENT=true INSTALL_POSTGRES_CLIENT=true AIRFLOW_INSTALLATION_METHOD=apache-airflow /bin/bash -o pipefail -o errexit -o nounset -o nolog -c bash /scripts/docker/install_os_dependencies.sh runtime # buildkit
2025-08-29 16:04:32 UTC (buildkit.dockerfile.v0)ARG AIRFLOW_IMAGE_REPOSITORY
2025-08-29 16:04:32 UTC (buildkit.dockerfile.v0)ARG AIRFLOW_IMAGE_README_URL
2025-08-29 16:04:32 UTC (buildkit.dockerfile.v0)ARG AIRFLOW_USER_HOME_DIR
2025-08-29 16:04:32 UTC (buildkit.dockerfile.v0)ARG AIRFLOW_HOME
2025-08-29 16:04:32 UTC (buildkit.dockerfile.v0)ARG AIRFLOW_IMAGE_TYPE
2025-08-29 16:04:32 UTC (buildkit.dockerfile.v0)ENV PATH=/home/airflow/.local/bin:/usr/local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin VIRTUAL_ENV=/home/airflow/.local AIRFLOW_UID=50000 AIRFLOW_USER_HOME_DIR=/home/airflow AIRFLOW_HOME=/opt/airflow AIRFLOW_IMAGE_TYPE=prod
2025-08-29 16:04:32 UTC (buildkit.dockerfile.v0)COPY common.sh /scripts/docker/ # buildkit
2025-08-29 16:04:32 UTC (buildkit.dockerfile.v0)COPY install_mysql.sh install_mssql.sh install_postgres.sh /scripts/docker/ # buildkit
2025-08-29 16:04:51 UTC (buildkit.dockerfile.v0)RUN |17 AIRFLOW_UID=50000 PYTHON_BASE_IMAGE=python:3.9-slim-bookworm RUNTIME_APT_DEPS= ADDITIONAL_RUNTIME_APT_DEPS= RUNTIME_APT_COMMAND=echo ADDITIONAL_RUNTIME_APT_COMMAND= ADDITIONAL_RUNTIME_APT_ENV= INSTALL_MYSQL_CLIENT=true INSTALL_MYSQL_CLIENT_TYPE=mariadb INSTALL_MSSQL_CLIENT=true INSTALL_POSTGRES_CLIENT=true AIRFLOW_INSTALLATION_METHOD=apache-airflow AIRFLOW_IMAGE_REPOSITORY=https://github.com/apache/airflow AIRFLOW_IMAGE_README_URL=https://raw.githubusercontent.com/apache/airflow/main/docs/docker-stack/README.md AIRFLOW_USER_HOME_DIR=/home/airflow AIRFLOW_HOME=/opt/airflow AIRFLOW_IMAGE_TYPE=prod /bin/bash -o pipefail -o errexit -o nounset -o nolog -c bash /scripts/docker/install_mysql.sh prod && bash /scripts/docker/install_mssql.sh prod && bash /scripts/docker/install_postgres.sh prod && adduser --gecos "First Last,RoomNumber,WorkPhone,HomePhone" --disabled-password --quiet "airflow" --uid "${AIRFLOW_UID}" --gid "0" --home "${AIRFLOW_USER_HOME_DIR}" && mkdir -pv "${AIRFLOW_HOME}" && mkdir -pv "${AIRFLOW_HOME}/dags" && mkdir -pv "${AIRFLOW_HOME}/logs" && chown -R airflow:0 "${AIRFLOW_USER_HOME_DIR}" "${AIRFLOW_HOME}" && chmod -R g+rw "${AIRFLOW_USER_HOME_DIR}" "${AIRFLOW_HOME}" && find "${AIRFLOW_HOME}" -executable ! -type l -print0 | xargs --null chmod g+x && find "${AIRFLOW_USER_HOME_DIR}" -executable ! -type l -print0 | xargs --null chmod g+x # buildkit
2025-08-29 16:04:51 UTC (buildkit.dockerfile.v0)ARG AIRFLOW_SOURCES_FROM
2025-08-29 16:04:51 UTC (buildkit.dockerfile.v0)ARG AIRFLOW_SOURCES_TO
2025-08-29 16:08:04 UTC (buildkit.dockerfile.v0)COPY /home/airflow/.local /home/airflow/.local # buildkit
2025-08-29 16:08:05 UTC (buildkit.dockerfile.v0)COPY /home/airflow/constraints.txt /home/airflow/constraints.txt # buildkit
2025-08-29 16:08:05 UTC (buildkit.dockerfile.v0)COPY /Dockerfile /Dockerfile # buildkit
2025-08-29 16:08:05 UTC (buildkit.dockerfile.v0)COPY entrypoint_prod.sh /entrypoint # buildkit
2025-08-29 16:08:05 UTC (buildkit.dockerfile.v0)COPY clean-logs.sh /clean-logs # buildkit
2025-08-29 16:08:05 UTC (buildkit.dockerfile.v0)COPY airflow-scheduler-autorestart.sh /airflow-scheduler-autorestart # buildkit
2025-08-29 16:08:05 UTC (buildkit.dockerfile.v0)RUN |19 AIRFLOW_UID=50000 PYTHON_BASE_IMAGE=python:3.9-slim-bookworm RUNTIME_APT_DEPS= ADDITIONAL_RUNTIME_APT_DEPS= RUNTIME_APT_COMMAND=echo ADDITIONAL_RUNTIME_APT_COMMAND= ADDITIONAL_RUNTIME_APT_ENV= INSTALL_MYSQL_CLIENT=true INSTALL_MYSQL_CLIENT_TYPE=mariadb INSTALL_MSSQL_CLIENT=true INSTALL_POSTGRES_CLIENT=true AIRFLOW_INSTALLATION_METHOD=apache-airflow AIRFLOW_IMAGE_REPOSITORY=https://github.com/apache/airflow AIRFLOW_IMAGE_README_URL=https://raw.githubusercontent.com/apache/airflow/main/docs/docker-stack/README.md AIRFLOW_USER_HOME_DIR=/home/airflow AIRFLOW_HOME=/opt/airflow AIRFLOW_IMAGE_TYPE=prod AIRFLOW_SOURCES_FROM=Dockerfile AIRFLOW_SOURCES_TO=/Dockerfile /bin/bash -o pipefail -o errexit -o nounset -o nolog -c chmod a+rx /entrypoint /clean-logs && chmod g=u /etc/passwd && chmod g+w "${AIRFLOW_USER_HOME_DIR}/.local" && usermod -g 0 airflow -G 0 # buildkit
2025-08-29 16:08:05 UTC (buildkit.dockerfile.v0)RUN |19 AIRFLOW_UID=50000 PYTHON_BASE_IMAGE=python:3.9-slim-bookworm RUNTIME_APT_DEPS= ADDITIONAL_RUNTIME_APT_DEPS= RUNTIME_APT_COMMAND=echo ADDITIONAL_RUNTIME_APT_COMMAND= ADDITIONAL_RUNTIME_APT_ENV= INSTALL_MYSQL_CLIENT=true INSTALL_MYSQL_CLIENT_TYPE=mariadb INSTALL_MSSQL_CLIENT=true INSTALL_POSTGRES_CLIENT=true AIRFLOW_INSTALLATION_METHOD=apache-airflow AIRFLOW_IMAGE_REPOSITORY=https://github.com/apache/airflow AIRFLOW_IMAGE_README_URL=https://raw.githubusercontent.com/apache/airflow/main/docs/docker-stack/README.md AIRFLOW_USER_HOME_DIR=/home/airflow AIRFLOW_HOME=/opt/airflow AIRFLOW_IMAGE_TYPE=prod AIRFLOW_SOURCES_FROM=Dockerfile AIRFLOW_SOURCES_TO=/Dockerfile /bin/bash -o pipefail -o errexit -o nounset -o nolog -c sed --in-place=.bak "s/secure_path=\"/secure_path=\"$(echo -n ${AIRFLOW_USER_HOME_DIR} | sed 's/\//\\\//g')\/.local\/bin:/" /etc/sudoers # buildkit
2025-08-29 16:08:05 UTC (buildkit.dockerfile.v0)ARG AIRFLOW_VERSION
2025-08-29 16:08:05 UTC (buildkit.dockerfile.v0)ARG AIRFLOW_PIP_VERSION
2025-08-29 16:08:05 UTC (buildkit.dockerfile.v0)ARG AIRFLOW_SETUPTOOLS_VERSION
2025-08-29 16:08:05 UTC (buildkit.dockerfile.v0)ARG AIRFLOW_UV_VERSION
2025-08-29 16:08:05 UTC (buildkit.dockerfile.v0)ARG AIRFLOW_USE_UV
2025-08-29 16:08:05 UTC (buildkit.dockerfile.v0)ENV DUMB_INIT_SETSID=1 PS1=(airflow) AIRFLOW_VERSION=3.0.6 AIRFLOW__CORE__LOAD_EXAMPLES=false PATH=/root/bin:/home/airflow/.local/bin:/usr/local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin AIRFLOW_PIP_VERSION=25.2 AIRFLOW_UV_VERSION=0.8.13 AIRFLOW_SETUPTOOLS_VERSION=80.9.0 AIRFLOW_USE_UV=false
2025-08-29 16:08:05 UTC (buildkit.dockerfile.v0)RUN |24 AIRFLOW_UID=50000 PYTHON_BASE_IMAGE=python:3.9-slim-bookworm RUNTIME_APT_DEPS= ADDITIONAL_RUNTIME_APT_DEPS= RUNTIME_APT_COMMAND=echo ADDITIONAL_RUNTIME_APT_COMMAND= ADDITIONAL_RUNTIME_APT_ENV= INSTALL_MYSQL_CLIENT=true INSTALL_MYSQL_CLIENT_TYPE=mariadb INSTALL_MSSQL_CLIENT=true INSTALL_POSTGRES_CLIENT=true AIRFLOW_INSTALLATION_METHOD=apache-airflow AIRFLOW_IMAGE_REPOSITORY=https://github.com/apache/airflow AIRFLOW_IMAGE_README_URL=https://raw.githubusercontent.com/apache/airflow/main/docs/docker-stack/README.md AIRFLOW_USER_HOME_DIR=/home/airflow AIRFLOW_HOME=/opt/airflow AIRFLOW_IMAGE_TYPE=prod AIRFLOW_SOURCES_FROM=Dockerfile AIRFLOW_SOURCES_TO=/Dockerfile AIRFLOW_VERSION=3.0.6 AIRFLOW_PIP_VERSION=25.2 AIRFLOW_SETUPTOOLS_VERSION=80.9.0 AIRFLOW_UV_VERSION=0.8.13 AIRFLOW_USE_UV=false /bin/bash -o pipefail -o errexit -o nounset -o nolog -c mkdir -pv /root/bin # buildkit
2025-08-29 16:08:05 UTC (buildkit.dockerfile.v0)COPY pip /root/bin/pip # buildkit
2025-08-29 16:08:05 UTC (buildkit.dockerfile.v0)RUN |24 AIRFLOW_UID=50000 PYTHON_BASE_IMAGE=python:3.9-slim-bookworm RUNTIME_APT_DEPS= ADDITIONAL_RUNTIME_APT_DEPS= RUNTIME_APT_COMMAND=echo ADDITIONAL_RUNTIME_APT_COMMAND= ADDITIONAL_RUNTIME_APT_ENV= INSTALL_MYSQL_CLIENT=true INSTALL_MYSQL_CLIENT_TYPE=mariadb INSTALL_MSSQL_CLIENT=true INSTALL_POSTGRES_CLIENT=true AIRFLOW_INSTALLATION_METHOD=apache-airflow AIRFLOW_IMAGE_REPOSITORY=https://github.com/apache/airflow AIRFLOW_IMAGE_README_URL=https://raw.githubusercontent.com/apache/airflow/main/docs/docker-stack/README.md AIRFLOW_USER_HOME_DIR=/home/airflow AIRFLOW_HOME=/opt/airflow AIRFLOW_IMAGE_TYPE=prod AIRFLOW_SOURCES_FROM=Dockerfile AIRFLOW_SOURCES_TO=/Dockerfile AIRFLOW_VERSION=3.0.6 AIRFLOW_PIP_VERSION=25.2 AIRFLOW_SETUPTOOLS_VERSION=80.9.0 AIRFLOW_UV_VERSION=0.8.13 AIRFLOW_USE_UV=false /bin/bash -o pipefail -o errexit -o nounset -o nolog -c chmod u+x /root/bin/pip # buildkit
2025-08-29 16:08:05 UTC (buildkit.dockerfile.v0)WORKDIR /opt/airflow
2025-08-29 16:08:05 UTC (buildkit.dockerfile.v0)EXPOSE map[8080/tcp:{}]
2025-08-29 16:08:05 UTC (buildkit.dockerfile.v0)USER 50000
2025-08-29 16:08:05 UTC (buildkit.dockerfile.v0)ARG BUILD_ID
2025-08-29 16:08:05 UTC (buildkit.dockerfile.v0)ARG COMMIT_SHA
2025-08-29 16:08:05 UTC (buildkit.dockerfile.v0)ARG AIRFLOW_IMAGE_REPOSITORY
2025-08-29 16:08:05 UTC (buildkit.dockerfile.v0)ARG AIRFLOW_IMAGE_DATE_CREATED
2025-08-29 16:08:05 UTC (buildkit.dockerfile.v0)ENV BUILD_ID= COMMIT_SHA=e965c2e676d85ced65a485d4b2601addc2fd3e97
2025-08-29 16:08:05 UTC (buildkit.dockerfile.v0)LABEL org.apache.airflow.distro=debian org.apache.airflow.module=airflow org.apache.airflow.component=airflow org.apache.airflow.image=airflow org.apache.airflow.version=3.0.6 org.apache.airflow.uid=50000 org.apache.airflow.main-image.build-id= org.apache.airflow.main-image.commit-sha=e965c2e676d85ced65a485d4b2601addc2fd3e97 org.opencontainers.image.source=https://github.com/apache/airflow org.opencontainers.image.created= org.opencontainers.image.authors=dev@airflow.apache.org org.opencontainers.image.url=https://airflow.apache.org org.opencontainers.image.documentation=https://airflow.apache.org/docs/docker-stack/index.html org.opencontainers.image.version=3.0.6 org.opencontainers.image.revision=e965c2e676d85ced65a485d4b2601addc2fd3e97 org.opencontainers.image.vendor=Apache Software Foundation org.opencontainers.image.licenses=Apache-2.0 org.opencontainers.image.ref.name=airflow org.opencontainers.image.title=Production Airflow Image org.opencontainers.image.description=Reference, production-ready Apache Airflow image
2025-08-29 16:08:05 UTC (buildkit.dockerfile.v0)ENTRYPOINT ["/usr/bin/dumb-init" "--" "/entrypoint"]
2025-08-29 16:08:05 UTC (buildkit.dockerfile.v0)CMD []
2025-08-29 16:12:37 UTC
588 MB
/opt/airflow
AIRFLOW_IMAGE_TYPEprod
AIRFLOW_INSTALLATION_METHODapache-airflow
AIRFLOW_PIP_VERSION25.2
AIRFLOW_SETUPTOOLS_VERSION80.9.0
AIRFLOW_UID50000
AIRFLOW_USER_HOME_DIR/home/airflow
AIRFLOW_USE_UVfalse
AIRFLOW_UV_VERSION0.8.13
AIRFLOW_VERSION3.0.6
AIRFLOW__CORE__LOAD_EXAMPLESfalse
BUILD_ID COMMIT_SHAe965c2e676d85ced65a485d4b2601addc2fd3e97
DEBIAN_FRONTENDnoninteractive
DUMB_INIT_SETSID1
GPG_KEYE3FF2839C048B25C084DEBE9B26995E310250568
GUNICORN_CMD_ARGS--worker-tmp-dir /dev/shm
INSTALL_MSSQL_CLIENTtrue
INSTALL_MYSQL_CLIENTtrue
INSTALL_MYSQL_CLIENT_TYPEmariadb
INSTALL_POSTGRES_CLIENTtrue
LANGC.UTF-8
LANGUAGEC.UTF-8
LC_ALLC.UTF-8
LC_CTYPEC.UTF-8
LC_MESSAGESC.UTF-8
LD_LIBRARY_PATH/usr/local/lib
PATH/root/bin:/home/airflow/.local/bin:/usr/local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
PIP_CACHE_DIR/tmp/.cache/pip
PS1(airflow)
PYTHON_BASE_IMAGEpython:3.9-slim-bookworm
PYTHON_SHA25661a42919e13d539f7673cf11d1c404380e28e540510860b9d242196e165709c9
PYTHON_VERSION3.9.23
RUNTIME_APT_COMMANDecho
RUNTIME_APT_DEPS UV_CACHE_DIR/tmp/.cache/uv
VIRTUAL_ENV/home/airflow/.local
[#000] sha256:9a80f9a055240e1d5ffd4b99717e18b5b3e924369b9155fb0a951a7a94b2c61f - 4.55% (26.8 MB)
[#001] sha256:fdc0ec01d9674bc86fb5888ebafedce6f5c880d20d70b21672201505f19785ec - 0.54% (3.19 MB)
[#002] sha256:45927625ceb9e97b5a38b2c4be226efc053bf05279086af94cf12f30dc8d46c7 - 2.41% (14.2 MB)
[#003] sha256:7e37c42d83aad036ce79d7b1c1498136da8567b006044f77d769bd86315e469b - 0.0% (249 Bytes)
[#004] sha256:64c61964a29179d728ace5f865bef95bdd8f7a8a09b89d06aa52559fcd4932de - 0.0% (1.48 KB)
[#005] sha256:d0cbd07d570b9912fc7b9ffc3a20d2f318bf760a6d31e07c85eddefe75852f9c - 17.22% (101 MB)
[#006] sha256:919a60f341a8562ec9e738bf15761354123bbf2cd02344a64aa124d187184945 - 0.0% (2.63 KB)
[#007] sha256:2c23bd4020ef8410d0a76ca7d8b64a2c483a9b346d86ea70be2d8200fffe6813 - 0.0% (2.19 KB)
[#008] sha256:e2e525e6c0e6f8b7518d39277d54ce467402b57e04e8f31921c0496a022d2f1f - 3.58% (21.1 MB)
[#009] sha256:b738717b17020f0530622458cc3f909f87398260698c89b7b18e12a0253c4720 - 71.69% (422 MB)
[#010] sha256:fa23c7c76327fd49452d024e79844b08d65455235d8ea9deb3d533dfb26f9c68 - 0.0% (7.58 KB)
[#011] sha256:e61f6d259cdc600740a581ddb9b64ffbb1aaefd3a1ba03248639d4e4aaaa9044 - 0.0% (18.9 KB)
[#012] sha256:8e15299ab72368679c4a67946b278a64f2fe7a56785f22f6219703795ad18bef - 0.0% (3.84 KB)
[#013] sha256:8f2ab2dd074cb1fcdf6360152316571ffc9609c3250d3332a86c3d1067b88b16 - 0.0% (520 Bytes)
[#014] sha256:edb9d28da656782690d8f901e0d8b46dacfc448c76ed55d071158d8bb2adf758 - 0.0% (291 Bytes)
[#015] sha256:28f26c5db8b3e4387b67d6aa3b0c19f75fbc8208a42044df9400377892a02589 - 0.0% (5.2 KB)
[#016] sha256:98ca5a4f6e9c2a71d1fe7d1fb02fa932aecb3f16a05842e19c2efda27c0cd5fa - 0.0% (1.04 KB)
[#017] sha256:26a42b103ab199ef518f92d798ccac02b97050c15cd4c43365a892146e029f56 - 0.0% (115 Bytes)
[#018] sha256:eb069996eb675f6033c8c3a9c72eb254a366a31729ed5a2b2d925a80f1d9574a - 0.0% (433 Bytes)
[#019] sha256:9c4e7eadf89b5ad88a71ad6bff629955f23db6417dd8ae889e1a9dae306e6884 - 0.0% (432 Bytes)
[#020] sha256:4f4fb700ef54461cfa02571ae0db9a0dc1e0cdb5577484a6d75e68dc38e8acc1 - 0.0% (32 Bytes)
# debian.sh --arch 'arm64' out/ 'bookworm' '@1754870400'
2025-08-08 18:20:34 UTC (buildkit.dockerfile.v0)ENV PATH=/usr/local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
2025-08-08 18:20:34 UTC (buildkit.dockerfile.v0)ENV LANG=C.UTF-8
2025-08-08 18:20:34 UTC (buildkit.dockerfile.v0)RUN /bin/sh -c set -eux; apt-get update; apt-get install -y --no-install-recommends ca-certificates netbase tzdata ; rm -rf /var/lib/apt/lists/* # buildkit
2025-08-08 18:20:34 UTC (buildkit.dockerfile.v0)ENV GPG_KEY=E3FF2839C048B25C084DEBE9B26995E310250568
2025-08-08 18:20:34 UTC (buildkit.dockerfile.v0)ENV PYTHON_VERSION=3.9.23
2025-08-08 18:20:34 UTC (buildkit.dockerfile.v0)ENV PYTHON_SHA256=61a42919e13d539f7673cf11d1c404380e28e540510860b9d242196e165709c9
2025-08-08 18:20:34 UTC (buildkit.dockerfile.v0)RUN /bin/sh -c set -eux; savedAptMark="$(apt-mark showmanual)"; apt-get update; apt-get install -y --no-install-recommends dpkg-dev gcc gnupg libbluetooth-dev libbz2-dev libc6-dev libdb-dev libffi-dev libgdbm-dev liblzma-dev libncursesw5-dev libreadline-dev libsqlite3-dev libssl-dev make tk-dev uuid-dev wget xz-utils zlib1g-dev ; wget -O python.tar.xz "https://www.python.org/ftp/python/${PYTHON_VERSION%%[a-z]*}/Python-$PYTHON_VERSION.tar.xz"; echo "$PYTHON_SHA256 *python.tar.xz" | sha256sum -c -; wget -O python.tar.xz.asc "https://www.python.org/ftp/python/${PYTHON_VERSION%%[a-z]*}/Python-$PYTHON_VERSION.tar.xz.asc"; GNUPGHOME="$(mktemp -d)"; export GNUPGHOME; gpg --batch --keyserver hkps://keys.openpgp.org --recv-keys "$GPG_KEY"; gpg --batch --verify python.tar.xz.asc python.tar.xz; gpgconf --kill all; rm -rf "$GNUPGHOME" python.tar.xz.asc; mkdir -p /usr/src/python; tar --extract --directory /usr/src/python --strip-components=1 --file python.tar.xz; rm python.tar.xz; cd /usr/src/python; gnuArch="$(dpkg-architecture --query DEB_BUILD_GNU_TYPE)"; ./configure --build="$gnuArch" --enable-loadable-sqlite-extensions --enable-optimizations --enable-option-checking=fatal --enable-shared --with-ensurepip ; nproc="$(nproc)"; EXTRA_CFLAGS="$(dpkg-buildflags --get CFLAGS)"; LDFLAGS="$(dpkg-buildflags --get LDFLAGS)"; LDFLAGS="${LDFLAGS:--Wl},--strip-all"; make -j "$nproc" "EXTRA_CFLAGS=${EXTRA_CFLAGS:-}" "LDFLAGS=${LDFLAGS:-}" ; rm python; make -j "$nproc" "EXTRA_CFLAGS=${EXTRA_CFLAGS:-}" "LDFLAGS=${LDFLAGS:--Wl},-rpath='\$\$ORIGIN/../lib'" python ; make install; cd /; rm -rf /usr/src/python; find /usr/local -depth \( \( -type d -a \( -name test -o -name tests -o -name idle_test \) \) -o \( -type f -a \( -name '*.pyc' -o -name '*.pyo' -o -name 'libpython*.a' \) \) \) -exec rm -rf '{}' + ; ldconfig; apt-mark auto '.*' > /dev/null; apt-mark manual $savedAptMark; find /usr/local -type f -executable -not \( -name '*tkinter*' \) -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; rm -rf /var/lib/apt/lists/*; export PYTHONDONTWRITEBYTECODE=1; python3 --version; pip3 install --disable-pip-version-check --no-cache-dir --no-compile 'setuptools==58.1.0' 'wheel<0.46' ; pip3 --version # buildkit
2025-08-08 18:20:34 UTC (buildkit.dockerfile.v0)RUN /bin/sh -c set -eux; for src in idle3 pip3 pydoc3 python3 python3-config; do dst="$(echo "$src" | tr -d 3)"; [ -s "/usr/local/bin/$src" ]; [ ! -e "/usr/local/bin/$dst" ]; ln -svT "$src" "/usr/local/bin/$dst"; done # buildkit
2025-08-08 18:20:34 UTC (buildkit.dockerfile.v0)CMD ["python3"]
2025-08-29 16:05:41 UTC (buildkit.dockerfile.v0)SHELL [/bin/bash -o pipefail -o errexit -o nounset -o nolog -c]
2025-08-29 16:05:41 UTC (buildkit.dockerfile.v0)ARG AIRFLOW_UID
2025-08-29 16:05:41 UTC (buildkit.dockerfile.v0)LABEL org.apache.airflow.distro=debian org.apache.airflow.module=airflow org.apache.airflow.component=airflow org.apache.airflow.image=airflow org.apache.airflow.uid=50000
2025-08-29 16:05:41 UTC (buildkit.dockerfile.v0)ARG PYTHON_BASE_IMAGE
2025-08-29 16:05:41 UTC (buildkit.dockerfile.v0)ENV PYTHON_BASE_IMAGE=python:3.9-slim-bookworm DEBIAN_FRONTEND=noninteractive LANGUAGE=C.UTF-8 LANG=C.UTF-8 LC_ALL=C.UTF-8 LC_CTYPE=C.UTF-8 LC_MESSAGES=C.UTF-8 LD_LIBRARY_PATH=/usr/local/lib PIP_CACHE_DIR=/tmp/.cache/pip UV_CACHE_DIR=/tmp/.cache/uv
2025-08-29 16:05:41 UTC (buildkit.dockerfile.v0)ARG RUNTIME_APT_DEPS=
2025-08-29 16:05:41 UTC (buildkit.dockerfile.v0)ARG ADDITIONAL_RUNTIME_APT_DEPS=
2025-08-29 16:05:41 UTC (buildkit.dockerfile.v0)ARG RUNTIME_APT_COMMAND=echo
2025-08-29 16:05:41 UTC (buildkit.dockerfile.v0)ARG ADDITIONAL_RUNTIME_APT_COMMAND=
2025-08-29 16:05:41 UTC (buildkit.dockerfile.v0)ARG ADDITIONAL_RUNTIME_APT_ENV=
2025-08-29 16:05:41 UTC (buildkit.dockerfile.v0)ARG INSTALL_MYSQL_CLIENT=true
2025-08-29 16:05:41 UTC (buildkit.dockerfile.v0)ARG INSTALL_MYSQL_CLIENT_TYPE=mariadb
2025-08-29 16:05:41 UTC (buildkit.dockerfile.v0)ARG INSTALL_MSSQL_CLIENT=true
2025-08-29 16:05:41 UTC (buildkit.dockerfile.v0)ARG INSTALL_POSTGRES_CLIENT=true
2025-08-29 16:05:41 UTC (buildkit.dockerfile.v0)ARG AIRFLOW_INSTALLATION_METHOD=apache-airflow
2025-08-29 16:05:41 UTC (buildkit.dockerfile.v0)ENV RUNTIME_APT_DEPS= ADDITIONAL_RUNTIME_APT_DEPS= RUNTIME_APT_COMMAND=echo ADDITIONAL_RUNTIME_APT_COMMAND= INSTALL_MYSQL_CLIENT=true INSTALL_MYSQL_CLIENT_TYPE=mariadb INSTALL_MSSQL_CLIENT=true INSTALL_POSTGRES_CLIENT=true GUNICORN_CMD_ARGS=--worker-tmp-dir /dev/shm AIRFLOW_INSTALLATION_METHOD=apache-airflow
2025-08-29 16:05:41 UTC (buildkit.dockerfile.v0)COPY install_os_dependencies.sh /scripts/docker/ # buildkit
2025-08-29 16:06:14 UTC (buildkit.dockerfile.v0)RUN |12 AIRFLOW_UID=50000 PYTHON_BASE_IMAGE=python:3.9-slim-bookworm RUNTIME_APT_DEPS= ADDITIONAL_RUNTIME_APT_DEPS= RUNTIME_APT_COMMAND=echo ADDITIONAL_RUNTIME_APT_COMMAND= ADDITIONAL_RUNTIME_APT_ENV= INSTALL_MYSQL_CLIENT=true INSTALL_MYSQL_CLIENT_TYPE=mariadb INSTALL_MSSQL_CLIENT=true INSTALL_POSTGRES_CLIENT=true AIRFLOW_INSTALLATION_METHOD=apache-airflow /bin/bash -o pipefail -o errexit -o nounset -o nolog -c bash /scripts/docker/install_os_dependencies.sh runtime # buildkit
2025-08-29 16:06:14 UTC (buildkit.dockerfile.v0)ARG AIRFLOW_IMAGE_REPOSITORY
2025-08-29 16:06:14 UTC (buildkit.dockerfile.v0)ARG AIRFLOW_IMAGE_README_URL
2025-08-29 16:06:14 UTC (buildkit.dockerfile.v0)ARG AIRFLOW_USER_HOME_DIR
2025-08-29 16:06:14 UTC (buildkit.dockerfile.v0)ARG AIRFLOW_HOME
2025-08-29 16:06:14 UTC (buildkit.dockerfile.v0)ARG AIRFLOW_IMAGE_TYPE
2025-08-29 16:06:14 UTC (buildkit.dockerfile.v0)ENV PATH=/home/airflow/.local/bin:/usr/local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin VIRTUAL_ENV=/home/airflow/.local AIRFLOW_UID=50000 AIRFLOW_USER_HOME_DIR=/home/airflow AIRFLOW_HOME=/opt/airflow AIRFLOW_IMAGE_TYPE=prod
2025-08-29 16:06:14 UTC (buildkit.dockerfile.v0)COPY common.sh /scripts/docker/ # buildkit
2025-08-29 16:06:15 UTC (buildkit.dockerfile.v0)COPY install_mysql.sh install_mssql.sh install_postgres.sh /scripts/docker/ # buildkit
2025-08-29 16:06:42 UTC (buildkit.dockerfile.v0)RUN |17 AIRFLOW_UID=50000 PYTHON_BASE_IMAGE=python:3.9-slim-bookworm RUNTIME_APT_DEPS= ADDITIONAL_RUNTIME_APT_DEPS= RUNTIME_APT_COMMAND=echo ADDITIONAL_RUNTIME_APT_COMMAND= ADDITIONAL_RUNTIME_APT_ENV= INSTALL_MYSQL_CLIENT=true INSTALL_MYSQL_CLIENT_TYPE=mariadb INSTALL_MSSQL_CLIENT=true INSTALL_POSTGRES_CLIENT=true AIRFLOW_INSTALLATION_METHOD=apache-airflow AIRFLOW_IMAGE_REPOSITORY=https://github.com/apache/airflow AIRFLOW_IMAGE_README_URL=https://raw.githubusercontent.com/apache/airflow/main/docs/docker-stack/README.md AIRFLOW_USER_HOME_DIR=/home/airflow AIRFLOW_HOME=/opt/airflow AIRFLOW_IMAGE_TYPE=prod /bin/bash -o pipefail -o errexit -o nounset -o nolog -c bash /scripts/docker/install_mysql.sh prod && bash /scripts/docker/install_mssql.sh prod && bash /scripts/docker/install_postgres.sh prod && adduser --gecos "First Last,RoomNumber,WorkPhone,HomePhone" --disabled-password --quiet "airflow" --uid "${AIRFLOW_UID}" --gid "0" --home "${AIRFLOW_USER_HOME_DIR}" && mkdir -pv "${AIRFLOW_HOME}" && mkdir -pv "${AIRFLOW_HOME}/dags" && mkdir -pv "${AIRFLOW_HOME}/logs" && chown -R airflow:0 "${AIRFLOW_USER_HOME_DIR}" "${AIRFLOW_HOME}" && chmod -R g+rw "${AIRFLOW_USER_HOME_DIR}" "${AIRFLOW_HOME}" && find "${AIRFLOW_HOME}" -executable ! -type l -print0 | xargs --null chmod g+x && find "${AIRFLOW_USER_HOME_DIR}" -executable ! -type l -print0 | xargs --null chmod g+x # buildkit
2025-08-29 16:06:42 UTC (buildkit.dockerfile.v0)ARG AIRFLOW_SOURCES_FROM
2025-08-29 16:06:42 UTC (buildkit.dockerfile.v0)ARG AIRFLOW_SOURCES_TO
2025-08-29 16:12:33 UTC (buildkit.dockerfile.v0)COPY /home/airflow/.local /home/airflow/.local # buildkit
2025-08-29 16:12:35 UTC (buildkit.dockerfile.v0)COPY /home/airflow/constraints.txt /home/airflow/constraints.txt # buildkit
2025-08-29 16:12:35 UTC (buildkit.dockerfile.v0)COPY /Dockerfile /Dockerfile # buildkit
2025-08-29 16:12:35 UTC (buildkit.dockerfile.v0)COPY entrypoint_prod.sh /entrypoint # buildkit
2025-08-29 16:12:35 UTC (buildkit.dockerfile.v0)COPY clean-logs.sh /clean-logs # buildkit
2025-08-29 16:12:36 UTC (buildkit.dockerfile.v0)COPY airflow-scheduler-autorestart.sh /airflow-scheduler-autorestart # buildkit
2025-08-29 16:12:36 UTC (buildkit.dockerfile.v0)RUN |19 AIRFLOW_UID=50000 PYTHON_BASE_IMAGE=python:3.9-slim-bookworm RUNTIME_APT_DEPS= ADDITIONAL_RUNTIME_APT_DEPS= RUNTIME_APT_COMMAND=echo ADDITIONAL_RUNTIME_APT_COMMAND= ADDITIONAL_RUNTIME_APT_ENV= INSTALL_MYSQL_CLIENT=true INSTALL_MYSQL_CLIENT_TYPE=mariadb INSTALL_MSSQL_CLIENT=true INSTALL_POSTGRES_CLIENT=true AIRFLOW_INSTALLATION_METHOD=apache-airflow AIRFLOW_IMAGE_REPOSITORY=https://github.com/apache/airflow AIRFLOW_IMAGE_README_URL=https://raw.githubusercontent.com/apache/airflow/main/docs/docker-stack/README.md AIRFLOW_USER_HOME_DIR=/home/airflow AIRFLOW_HOME=/opt/airflow AIRFLOW_IMAGE_TYPE=prod AIRFLOW_SOURCES_FROM=Dockerfile AIRFLOW_SOURCES_TO=/Dockerfile /bin/bash -o pipefail -o errexit -o nounset -o nolog -c chmod a+rx /entrypoint /clean-logs && chmod g=u /etc/passwd && chmod g+w "${AIRFLOW_USER_HOME_DIR}/.local" && usermod -g 0 airflow -G 0 # buildkit
2025-08-29 16:12:36 UTC (buildkit.dockerfile.v0)RUN |19 AIRFLOW_UID=50000 PYTHON_BASE_IMAGE=python:3.9-slim-bookworm RUNTIME_APT_DEPS= ADDITIONAL_RUNTIME_APT_DEPS= RUNTIME_APT_COMMAND=echo ADDITIONAL_RUNTIME_APT_COMMAND= ADDITIONAL_RUNTIME_APT_ENV= INSTALL_MYSQL_CLIENT=true INSTALL_MYSQL_CLIENT_TYPE=mariadb INSTALL_MSSQL_CLIENT=true INSTALL_POSTGRES_CLIENT=true AIRFLOW_INSTALLATION_METHOD=apache-airflow AIRFLOW_IMAGE_REPOSITORY=https://github.com/apache/airflow AIRFLOW_IMAGE_README_URL=https://raw.githubusercontent.com/apache/airflow/main/docs/docker-stack/README.md AIRFLOW_USER_HOME_DIR=/home/airflow AIRFLOW_HOME=/opt/airflow AIRFLOW_IMAGE_TYPE=prod AIRFLOW_SOURCES_FROM=Dockerfile AIRFLOW_SOURCES_TO=/Dockerfile /bin/bash -o pipefail -o errexit -o nounset -o nolog -c sed --in-place=.bak "s/secure_path=\"/secure_path=\"$(echo -n ${AIRFLOW_USER_HOME_DIR} | sed 's/\//\\\//g')\/.local\/bin:/" /etc/sudoers # buildkit
2025-08-29 16:12:36 UTC (buildkit.dockerfile.v0)ARG AIRFLOW_VERSION
2025-08-29 16:12:36 UTC (buildkit.dockerfile.v0)ARG AIRFLOW_PIP_VERSION
2025-08-29 16:12:36 UTC (buildkit.dockerfile.v0)ARG AIRFLOW_SETUPTOOLS_VERSION
2025-08-29 16:12:36 UTC (buildkit.dockerfile.v0)ARG AIRFLOW_UV_VERSION
2025-08-29 16:12:36 UTC (buildkit.dockerfile.v0)ARG AIRFLOW_USE_UV
2025-08-29 16:12:36 UTC (buildkit.dockerfile.v0)ENV DUMB_INIT_SETSID=1 PS1=(airflow) AIRFLOW_VERSION=3.0.6 AIRFLOW__CORE__LOAD_EXAMPLES=false PATH=/root/bin:/home/airflow/.local/bin:/usr/local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin AIRFLOW_PIP_VERSION=25.2 AIRFLOW_UV_VERSION=0.8.13 AIRFLOW_SETUPTOOLS_VERSION=80.9.0 AIRFLOW_USE_UV=false
2025-08-29 16:12:36 UTC (buildkit.dockerfile.v0)RUN |24 AIRFLOW_UID=50000 PYTHON_BASE_IMAGE=python:3.9-slim-bookworm RUNTIME_APT_DEPS= ADDITIONAL_RUNTIME_APT_DEPS= RUNTIME_APT_COMMAND=echo ADDITIONAL_RUNTIME_APT_COMMAND= ADDITIONAL_RUNTIME_APT_ENV= INSTALL_MYSQL_CLIENT=true INSTALL_MYSQL_CLIENT_TYPE=mariadb INSTALL_MSSQL_CLIENT=true INSTALL_POSTGRES_CLIENT=true AIRFLOW_INSTALLATION_METHOD=apache-airflow AIRFLOW_IMAGE_REPOSITORY=https://github.com/apache/airflow AIRFLOW_IMAGE_README_URL=https://raw.githubusercontent.com/apache/airflow/main/docs/docker-stack/README.md AIRFLOW_USER_HOME_DIR=/home/airflow AIRFLOW_HOME=/opt/airflow AIRFLOW_IMAGE_TYPE=prod AIRFLOW_SOURCES_FROM=Dockerfile AIRFLOW_SOURCES_TO=/Dockerfile AIRFLOW_VERSION=3.0.6 AIRFLOW_PIP_VERSION=25.2 AIRFLOW_SETUPTOOLS_VERSION=80.9.0 AIRFLOW_UV_VERSION=0.8.13 AIRFLOW_USE_UV=false /bin/bash -o pipefail -o errexit -o nounset -o nolog -c mkdir -pv /root/bin # buildkit
2025-08-29 16:12:36 UTC (buildkit.dockerfile.v0)COPY pip /root/bin/pip # buildkit
2025-08-29 16:12:37 UTC (buildkit.dockerfile.v0)RUN |24 AIRFLOW_UID=50000 PYTHON_BASE_IMAGE=python:3.9-slim-bookworm RUNTIME_APT_DEPS= ADDITIONAL_RUNTIME_APT_DEPS= RUNTIME_APT_COMMAND=echo ADDITIONAL_RUNTIME_APT_COMMAND= ADDITIONAL_RUNTIME_APT_ENV= INSTALL_MYSQL_CLIENT=true INSTALL_MYSQL_CLIENT_TYPE=mariadb INSTALL_MSSQL_CLIENT=true INSTALL_POSTGRES_CLIENT=true AIRFLOW_INSTALLATION_METHOD=apache-airflow AIRFLOW_IMAGE_REPOSITORY=https://github.com/apache/airflow AIRFLOW_IMAGE_README_URL=https://raw.githubusercontent.com/apache/airflow/main/docs/docker-stack/README.md AIRFLOW_USER_HOME_DIR=/home/airflow AIRFLOW_HOME=/opt/airflow AIRFLOW_IMAGE_TYPE=prod AIRFLOW_SOURCES_FROM=Dockerfile AIRFLOW_SOURCES_TO=/Dockerfile AIRFLOW_VERSION=3.0.6 AIRFLOW_PIP_VERSION=25.2 AIRFLOW_SETUPTOOLS_VERSION=80.9.0 AIRFLOW_UV_VERSION=0.8.13 AIRFLOW_USE_UV=false /bin/bash -o pipefail -o errexit -o nounset -o nolog -c chmod u+x /root/bin/pip # buildkit
2025-08-29 16:12:37 UTC (buildkit.dockerfile.v0)WORKDIR /opt/airflow
2025-08-29 16:12:37 UTC (buildkit.dockerfile.v0)EXPOSE map[8080/tcp:{}]
2025-08-29 16:12:37 UTC (buildkit.dockerfile.v0)USER 50000
2025-08-29 16:12:37 UTC (buildkit.dockerfile.v0)ARG BUILD_ID
2025-08-29 16:12:37 UTC (buildkit.dockerfile.v0)ARG COMMIT_SHA
2025-08-29 16:12:37 UTC (buildkit.dockerfile.v0)ARG AIRFLOW_IMAGE_REPOSITORY
2025-08-29 16:12:37 UTC (buildkit.dockerfile.v0)ARG AIRFLOW_IMAGE_DATE_CREATED
2025-08-29 16:12:37 UTC (buildkit.dockerfile.v0)ENV BUILD_ID= COMMIT_SHA=e965c2e676d85ced65a485d4b2601addc2fd3e97
2025-08-29 16:12:37 UTC (buildkit.dockerfile.v0)LABEL org.apache.airflow.distro=debian org.apache.airflow.module=airflow org.apache.airflow.component=airflow org.apache.airflow.image=airflow org.apache.airflow.version=3.0.6 org.apache.airflow.uid=50000 org.apache.airflow.main-image.build-id= org.apache.airflow.main-image.commit-sha=e965c2e676d85ced65a485d4b2601addc2fd3e97 org.opencontainers.image.source=https://github.com/apache/airflow org.opencontainers.image.created= org.opencontainers.image.authors=dev@airflow.apache.org org.opencontainers.image.url=https://airflow.apache.org org.opencontainers.image.documentation=https://airflow.apache.org/docs/docker-stack/index.html org.opencontainers.image.version=3.0.6 org.opencontainers.image.revision=e965c2e676d85ced65a485d4b2601addc2fd3e97 org.opencontainers.image.vendor=Apache Software Foundation org.opencontainers.image.licenses=Apache-2.0 org.opencontainers.image.ref.name=airflow org.opencontainers.image.title=Production Airflow Image org.opencontainers.image.description=Reference, production-ready Apache Airflow image
2025-08-29 16:12:37 UTC (buildkit.dockerfile.v0)ENTRYPOINT ["/usr/bin/dumb-init" "--" "/entrypoint"]
2025-08-29 16:12:37 UTC (buildkit.dockerfile.v0)CMD []
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.