2025-08-14 19:18:44 UTC
600 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.8
AIRFLOW_VERSION3.0.5rc2
AIRFLOW__CORE__LOAD_EXAMPLESfalse
BUILD_ID COMMIT_SHA6888a3efc60478d26e427c95988514d0fc868a2e
DEBIAN_FRONTENDnoninteractive
DUMB_INIT_SETSID1
GPG_KEYA035C8C19219BA821ECEA86B64E628F8D684696D
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.10-slim-bookworm
PYTHON_SHA256ae665bc678abd9ab6a6e1573d2481625a53719bc517e9a634ed2b9fefae3817f
PYTHON_VERSION3.10.18
RUNTIME_APT_COMMANDecho
RUNTIME_APT_DEPS UV_CACHE_DIR/tmp/.cache/uv
VIRTUAL_ENV/home/airflow/.local
[#000] sha256:b1badc6e50664185acfaa0ca255d8076061c2a9d881cecaaad281ae11af000ce - 4.49% (26.9 MB)
[#001] sha256:a60970d05ab5df6488b968bc8ec60effd3e2f0a2ff04ab9e77194db48ddac09b - 0.56% (3.35 MB)
[#002] sha256:d84e44e3bb9b3b644fe6ec7890a9e3260b81235ec248eae475b4eafd616f0d2e - 2.49% (14.9 MB)
[#003] sha256:b404a5b55749e0a4670e4148ae140035c6ebd5ca95a68f796cad9a4847b3cd54 - 0.0% (249 Bytes)
[#004] sha256:0d7b7abee7be0211acaa133c2731a34a818b9c82c212502d4214cd23818faef7 - 0.0% (1.48 KB)
[#005] sha256:e45955c7a6bd6086322f88cfd5878e3524d807ef6ec356df85232298cd3db19e - 17.15% (103 MB)
[#006] sha256:3cccb751d020df072c7de1b7b494fc840f7eeeaee960d8872fb2a208cb93377d - 0.0% (2.67 KB)
[#007] sha256:bd75ccddbfe264feea0816f987125e6f7b1ee8b1380f0f9b0c40b23d2bfa93f0 - 0.0% (2.18 KB)
[#008] sha256:cf45fb1e32108bf17ac1de3d2d59037ba2ea44449551560b4e622925752efc8d - 3.54% (21.2 MB)
[#009] sha256:3282380b3f38fad395ebec92f13e321e26a32af7e997ad887f48ba3e8d3dec51 - 71.77% (430 MB)
[#010] sha256:e995a9d90726d0552b487d8c8118ea1c284264380d3ee387bcbd4a097f2d67a2 - 0.0% (7.6 KB)
[#011] sha256:fcf1fa5a6c815a63b923bc6255b8d75d944d1d9ce17ed1f2634820b7d8c93282 - 0.0% (18.9 KB)
[#012] sha256:6c2d2064418140a19fe343d90bdb64579298c2453824f30e5377a565cc0fcb6d - 0.0% (3.84 KB)
[#013] sha256:0377a74df31b9756c436174e0c174ff911bc0212178d320a6b9bf61bce74d2dc - 0.0% (521 Bytes)
[#014] sha256:0c89e7c9442136825d986e6c684e2b70b72741dbd25d5b051458b65410199eac - 0.0% (291 Bytes)
[#015] sha256:1fad0de6b743c9de4bfbe8bfafb6158475e07c7b2403faae94b921b8f8cfd063 - 0.0% (5.19 KB)
[#016] sha256:c2db8706f6b732e82a4f4fa4b129eb910f7e91eb1e9bccba67dc6e8435a1d0b2 - 0.0% (1.04 KB)
[#017] sha256:5ad63945d28ce988a24e2efb33bfd0f7bd07079fa90ba13c826ca305b18f2f41 - 0.0% (114 Bytes)
[#018] sha256:600f0019274f45db547fd5d14317e36174cde2c848197090e5d0a1ed6d0555a5 - 0.0% (431 Bytes)
[#019] sha256:6fb3d200d3f4168730ef54e1f17216832d8ad745e7df324892d2ad5f0c172a22 - 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=A035C8C19219BA821ECEA86B64E628F8D684696D
2025-08-08 18:20:34 UTC (buildkit.dockerfile.v0)ENV PYTHON_VERSION=3.10.18
2025-08-08 18:20:34 UTC (buildkit.dockerfile.v0)ENV PYTHON_SHA256=ae665bc678abd9ab6a6e1573d2481625a53719bc517e9a634ed2b9fefae3817f
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 $(test "${gnuArch%%-*}" != 'riscv64' && echo '--with-lto') --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==65.5.1' '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-14 19:14:26 UTC (buildkit.dockerfile.v0)SHELL [/bin/bash -o pipefail -o errexit -o nounset -o nolog -c]
2025-08-14 19:14:26 UTC (buildkit.dockerfile.v0)ARG AIRFLOW_UID
2025-08-14 19:14:26 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-14 19:14:26 UTC (buildkit.dockerfile.v0)ARG PYTHON_BASE_IMAGE
2025-08-14 19:14:26 UTC (buildkit.dockerfile.v0)ENV PYTHON_BASE_IMAGE=python:3.10-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-14 19:14:26 UTC (buildkit.dockerfile.v0)ARG RUNTIME_APT_DEPS=
2025-08-14 19:14:26 UTC (buildkit.dockerfile.v0)ARG ADDITIONAL_RUNTIME_APT_DEPS=
2025-08-14 19:14:26 UTC (buildkit.dockerfile.v0)ARG RUNTIME_APT_COMMAND=echo
2025-08-14 19:14:26 UTC (buildkit.dockerfile.v0)ARG ADDITIONAL_RUNTIME_APT_COMMAND=
2025-08-14 19:14:26 UTC (buildkit.dockerfile.v0)ARG ADDITIONAL_RUNTIME_APT_ENV=
2025-08-14 19:14:26 UTC (buildkit.dockerfile.v0)ARG INSTALL_MYSQL_CLIENT=true
2025-08-14 19:14:26 UTC (buildkit.dockerfile.v0)ARG INSTALL_MYSQL_CLIENT_TYPE=mariadb
2025-08-14 19:14:26 UTC (buildkit.dockerfile.v0)ARG INSTALL_MSSQL_CLIENT=true
2025-08-14 19:14:26 UTC (buildkit.dockerfile.v0)ARG INSTALL_POSTGRES_CLIENT=true
2025-08-14 19:14:26 UTC (buildkit.dockerfile.v0)ARG AIRFLOW_INSTALLATION_METHOD=apache-airflow
2025-08-14 19:14:26 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-14 19:14:26 UTC (buildkit.dockerfile.v0)COPY install_os_dependencies.sh /scripts/docker/ # buildkit
2025-08-14 19:14:47 UTC (buildkit.dockerfile.v0)RUN |12 AIRFLOW_UID=50000 PYTHON_BASE_IMAGE=python:3.10-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-14 19:14:47 UTC (buildkit.dockerfile.v0)ARG AIRFLOW_IMAGE_REPOSITORY
2025-08-14 19:14:47 UTC (buildkit.dockerfile.v0)ARG AIRFLOW_IMAGE_README_URL
2025-08-14 19:14:47 UTC (buildkit.dockerfile.v0)ARG AIRFLOW_USER_HOME_DIR
2025-08-14 19:14:47 UTC (buildkit.dockerfile.v0)ARG AIRFLOW_HOME
2025-08-14 19:14:47 UTC (buildkit.dockerfile.v0)ARG AIRFLOW_IMAGE_TYPE
2025-08-14 19:14:47 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-14 19:14:47 UTC (buildkit.dockerfile.v0)COPY common.sh /scripts/docker/ # buildkit
2025-08-14 19:14:47 UTC (buildkit.dockerfile.v0)COPY install_mysql.sh install_mssql.sh install_postgres.sh /scripts/docker/ # buildkit
2025-08-14 19:15:10 UTC (buildkit.dockerfile.v0)RUN |17 AIRFLOW_UID=50000 PYTHON_BASE_IMAGE=python:3.10-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-14 19:15:10 UTC (buildkit.dockerfile.v0)ARG AIRFLOW_SOURCES_FROM
2025-08-14 19:15:10 UTC (buildkit.dockerfile.v0)ARG AIRFLOW_SOURCES_TO
2025-08-14 19:18:43 UTC (buildkit.dockerfile.v0)COPY /home/airflow/.local /home/airflow/.local # buildkit
2025-08-14 19:18:44 UTC (buildkit.dockerfile.v0)COPY /home/airflow/constraints.txt /home/airflow/constraints.txt # buildkit
2025-08-14 19:18:44 UTC (buildkit.dockerfile.v0)COPY /Dockerfile /Dockerfile # buildkit
2025-08-14 19:18:44 UTC (buildkit.dockerfile.v0)COPY entrypoint_prod.sh /entrypoint # buildkit
2025-08-14 19:18:44 UTC (buildkit.dockerfile.v0)COPY clean-logs.sh /clean-logs # buildkit
2025-08-14 19:18:44 UTC (buildkit.dockerfile.v0)COPY airflow-scheduler-autorestart.sh /airflow-scheduler-autorestart # buildkit
2025-08-14 19:18:44 UTC (buildkit.dockerfile.v0)RUN |19 AIRFLOW_UID=50000 PYTHON_BASE_IMAGE=python:3.10-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-14 19:18:44 UTC (buildkit.dockerfile.v0)RUN |19 AIRFLOW_UID=50000 PYTHON_BASE_IMAGE=python:3.10-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-14 19:18:44 UTC (buildkit.dockerfile.v0)ARG AIRFLOW_VERSION
2025-08-14 19:18:44 UTC (buildkit.dockerfile.v0)ARG AIRFLOW_PIP_VERSION
2025-08-14 19:18:44 UTC (buildkit.dockerfile.v0)ARG AIRFLOW_SETUPTOOLS_VERSION
2025-08-14 19:18:44 UTC (buildkit.dockerfile.v0)ARG AIRFLOW_UV_VERSION
2025-08-14 19:18:44 UTC (buildkit.dockerfile.v0)ARG AIRFLOW_USE_UV
2025-08-14 19:18:44 UTC (buildkit.dockerfile.v0)ENV DUMB_INIT_SETSID=1 PS1=(airflow) AIRFLOW_VERSION=3.0.5rc2 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.8 AIRFLOW_SETUPTOOLS_VERSION=80.9.0 AIRFLOW_USE_UV=false
2025-08-14 19:18:44 UTC (buildkit.dockerfile.v0)RUN |24 AIRFLOW_UID=50000 PYTHON_BASE_IMAGE=python:3.10-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.5rc2 AIRFLOW_PIP_VERSION=25.2 AIRFLOW_SETUPTOOLS_VERSION=80.9.0 AIRFLOW_UV_VERSION=0.8.8 AIRFLOW_USE_UV=false /bin/bash -o pipefail -o errexit -o nounset -o nolog -c mkdir -pv /root/bin # buildkit
2025-08-14 19:18:44 UTC (buildkit.dockerfile.v0)COPY pip /root/bin/pip # buildkit
2025-08-14 19:18:44 UTC (buildkit.dockerfile.v0)RUN |24 AIRFLOW_UID=50000 PYTHON_BASE_IMAGE=python:3.10-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.5rc2 AIRFLOW_PIP_VERSION=25.2 AIRFLOW_SETUPTOOLS_VERSION=80.9.0 AIRFLOW_UV_VERSION=0.8.8 AIRFLOW_USE_UV=false /bin/bash -o pipefail -o errexit -o nounset -o nolog -c chmod u+x /root/bin/pip # buildkit
2025-08-14 19:18:44 UTC (buildkit.dockerfile.v0)WORKDIR /opt/airflow
2025-08-14 19:18:44 UTC (buildkit.dockerfile.v0)EXPOSE map[8080/tcp:{}]
2025-08-14 19:18:44 UTC (buildkit.dockerfile.v0)USER 50000
2025-08-14 19:18:44 UTC (buildkit.dockerfile.v0)ARG BUILD_ID
2025-08-14 19:18:44 UTC (buildkit.dockerfile.v0)ARG COMMIT_SHA
2025-08-14 19:18:44 UTC (buildkit.dockerfile.v0)ARG AIRFLOW_IMAGE_REPOSITORY
2025-08-14 19:18:44 UTC (buildkit.dockerfile.v0)ARG AIRFLOW_IMAGE_DATE_CREATED
2025-08-14 19:18:44 UTC (buildkit.dockerfile.v0)ENV BUILD_ID= COMMIT_SHA=6888a3efc60478d26e427c95988514d0fc868a2e
2025-08-14 19:18:44 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.5rc2 org.apache.airflow.uid=50000 org.apache.airflow.main-image.build-id= org.apache.airflow.main-image.commit-sha=6888a3efc60478d26e427c95988514d0fc868a2e 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.5rc2 org.opencontainers.image.revision=6888a3efc60478d26e427c95988514d0fc868a2e 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-14 19:18:44 UTC (buildkit.dockerfile.v0)ENTRYPOINT ["/usr/bin/dumb-init" "--" "/entrypoint"]
2025-08-14 19:18:44 UTC (buildkit.dockerfile.v0)CMD []
2025-08-14 19:20:02 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.8
AIRFLOW_VERSION3.0.5rc2
AIRFLOW__CORE__LOAD_EXAMPLESfalse
BUILD_ID COMMIT_SHA6888a3efc60478d26e427c95988514d0fc868a2e
DEBIAN_FRONTENDnoninteractive
DUMB_INIT_SETSID1
GPG_KEYA035C8C19219BA821ECEA86B64E628F8D684696D
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.10-slim-bookworm
PYTHON_SHA256ae665bc678abd9ab6a6e1573d2481625a53719bc517e9a634ed2b9fefae3817f
PYTHON_VERSION3.10.18
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:bfdd8412cf035def76df6b8fa7f7b096f0ad8a9611b1917139a680da2791eb52 - 2.53% (14.9 MB)
[#003] sha256:8db6fbd24bca2bde126d65e7aeac3f941a788467bbd84411592f07e5a0e40192 - 0.0% (251 Bytes)
[#004] sha256:1714b44416c0d02bb4bf69c41ed7c667e2808e396b355d8042474a62a86fcf75 - 0.0% (1.48 KB)
[#005] sha256:6740a8cff4565563be730f7c7f3de561df8311ee6681f7ceb93e17c52db087f1 - 17.22% (101 MB)
[#006] sha256:c720bfaaa0ecda70c358d3b42514501d15562c25fa9094696bf0ac76a5cc6811 - 0.0% (2.67 KB)
[#007] sha256:2b1e2f0e0e300d751da84fc6e457b01b62842d1016ce8448cba80012f619d3af - 0.0% (2.18 KB)
[#008] sha256:eecf39216dc76557e739fe4a520732e4279dcf67846ce14316d03a48a30ba030 - 3.58% (21.1 MB)
[#009] sha256:ddb5eed050b2640f1c438d57c110be5a27357a5e52f1c18743ff6c30342933b9 - 71.56% (421 MB)
[#010] sha256:04d57530eae3857644b1f2467c8adc43321f9ea7096e673e39004610116b3be6 - 0.0% (7.6 KB)
[#011] sha256:dd97264182fee94ff502f10ea762c73165b9882fc086c9a9f290ad85d51ab5a4 - 0.0% (18.9 KB)
[#012] sha256:7583e54611a41b4cc2101d69a20230e5319483cebc06a9bec0d133bbdd34af6b - 0.0% (3.84 KB)
[#013] sha256:30fe2120b6ee3dd9132c56e157b0f2299a94d53be2817a291ad0985a2040bf41 - 0.0% (520 Bytes)
[#014] sha256:0755bcaf935f0001465c71022273174a138643db1f625436acbdc19acaffee93 - 0.0% (291 Bytes)
[#015] sha256:041c69d5fb68f743fdc7ce9fe6cfaeba91fdc6b1830db52edbe639e4657c2af6 - 0.0% (5.19 KB)
[#016] sha256:4bd16b4dc09f71580f5ad8397ff17fc8a247044a20e616edd1358b4301a90b68 - 0.0% (1.04 KB)
[#017] sha256:8f7a6732f1a6e1bb0d8bae9a1d0d713e7676314a9c5347c576e6be037dd2b25f - 0.0% (114 Bytes)
[#018] sha256:9b9fda28fc7590c66383da2e295bb78e3a484afaec33c2ebc4d8e64d2901d090 - 0.0% (434 Bytes)
[#019] sha256:1d8f3b00266037e05ebd5dc64fb72a6f7f2cc0bd217dd20abb8c268769899855 - 0.0% (433 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=A035C8C19219BA821ECEA86B64E628F8D684696D
2025-08-08 18:20:34 UTC (buildkit.dockerfile.v0)ENV PYTHON_VERSION=3.10.18
2025-08-08 18:20:34 UTC (buildkit.dockerfile.v0)ENV PYTHON_SHA256=ae665bc678abd9ab6a6e1573d2481625a53719bc517e9a634ed2b9fefae3817f
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 $(test "${gnuArch%%-*}" != 'riscv64' && echo '--with-lto') --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==65.5.1' '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-14 19:15:25 UTC (buildkit.dockerfile.v0)SHELL [/bin/bash -o pipefail -o errexit -o nounset -o nolog -c]
2025-08-14 19:15:25 UTC (buildkit.dockerfile.v0)ARG AIRFLOW_UID
2025-08-14 19:15:25 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-14 19:15:25 UTC (buildkit.dockerfile.v0)ARG PYTHON_BASE_IMAGE
2025-08-14 19:15:25 UTC (buildkit.dockerfile.v0)ENV PYTHON_BASE_IMAGE=python:3.10-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-14 19:15:25 UTC (buildkit.dockerfile.v0)ARG RUNTIME_APT_DEPS=
2025-08-14 19:15:25 UTC (buildkit.dockerfile.v0)ARG ADDITIONAL_RUNTIME_APT_DEPS=
2025-08-14 19:15:25 UTC (buildkit.dockerfile.v0)ARG RUNTIME_APT_COMMAND=echo
2025-08-14 19:15:25 UTC (buildkit.dockerfile.v0)ARG ADDITIONAL_RUNTIME_APT_COMMAND=
2025-08-14 19:15:25 UTC (buildkit.dockerfile.v0)ARG ADDITIONAL_RUNTIME_APT_ENV=
2025-08-14 19:15:25 UTC (buildkit.dockerfile.v0)ARG INSTALL_MYSQL_CLIENT=true
2025-08-14 19:15:25 UTC (buildkit.dockerfile.v0)ARG INSTALL_MYSQL_CLIENT_TYPE=mariadb
2025-08-14 19:15:25 UTC (buildkit.dockerfile.v0)ARG INSTALL_MSSQL_CLIENT=true
2025-08-14 19:15:25 UTC (buildkit.dockerfile.v0)ARG INSTALL_POSTGRES_CLIENT=true
2025-08-14 19:15:25 UTC (buildkit.dockerfile.v0)ARG AIRFLOW_INSTALLATION_METHOD=apache-airflow
2025-08-14 19:15:25 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-14 19:15:25 UTC (buildkit.dockerfile.v0)COPY install_os_dependencies.sh /scripts/docker/ # buildkit
2025-08-14 19:15:53 UTC (buildkit.dockerfile.v0)RUN |12 AIRFLOW_UID=50000 PYTHON_BASE_IMAGE=python:3.10-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-14 19:15:53 UTC (buildkit.dockerfile.v0)ARG AIRFLOW_IMAGE_REPOSITORY
2025-08-14 19:15:53 UTC (buildkit.dockerfile.v0)ARG AIRFLOW_IMAGE_README_URL
2025-08-14 19:15:53 UTC (buildkit.dockerfile.v0)ARG AIRFLOW_USER_HOME_DIR
2025-08-14 19:15:53 UTC (buildkit.dockerfile.v0)ARG AIRFLOW_HOME
2025-08-14 19:15:53 UTC (buildkit.dockerfile.v0)ARG AIRFLOW_IMAGE_TYPE
2025-08-14 19:15:53 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-14 19:15:53 UTC (buildkit.dockerfile.v0)COPY common.sh /scripts/docker/ # buildkit
2025-08-14 19:15:53 UTC (buildkit.dockerfile.v0)COPY install_mysql.sh install_mssql.sh install_postgres.sh /scripts/docker/ # buildkit
2025-08-14 19:16:29 UTC (buildkit.dockerfile.v0)RUN |17 AIRFLOW_UID=50000 PYTHON_BASE_IMAGE=python:3.10-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-14 19:16:29 UTC (buildkit.dockerfile.v0)ARG AIRFLOW_SOURCES_FROM
2025-08-14 19:16:29 UTC (buildkit.dockerfile.v0)ARG AIRFLOW_SOURCES_TO
2025-08-14 19:20:00 UTC (buildkit.dockerfile.v0)COPY /home/airflow/.local /home/airflow/.local # buildkit
2025-08-14 19:20:01 UTC (buildkit.dockerfile.v0)COPY /home/airflow/constraints.txt /home/airflow/constraints.txt # buildkit
2025-08-14 19:20:01 UTC (buildkit.dockerfile.v0)COPY /Dockerfile /Dockerfile # buildkit
2025-08-14 19:20:01 UTC (buildkit.dockerfile.v0)COPY entrypoint_prod.sh /entrypoint # buildkit
2025-08-14 19:20:01 UTC (buildkit.dockerfile.v0)COPY clean-logs.sh /clean-logs # buildkit
2025-08-14 19:20:01 UTC (buildkit.dockerfile.v0)COPY airflow-scheduler-autorestart.sh /airflow-scheduler-autorestart # buildkit
2025-08-14 19:20:01 UTC (buildkit.dockerfile.v0)RUN |19 AIRFLOW_UID=50000 PYTHON_BASE_IMAGE=python:3.10-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-14 19:20:01 UTC (buildkit.dockerfile.v0)RUN |19 AIRFLOW_UID=50000 PYTHON_BASE_IMAGE=python:3.10-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-14 19:20:01 UTC (buildkit.dockerfile.v0)ARG AIRFLOW_VERSION
2025-08-14 19:20:01 UTC (buildkit.dockerfile.v0)ARG AIRFLOW_PIP_VERSION
2025-08-14 19:20:01 UTC (buildkit.dockerfile.v0)ARG AIRFLOW_SETUPTOOLS_VERSION
2025-08-14 19:20:01 UTC (buildkit.dockerfile.v0)ARG AIRFLOW_UV_VERSION
2025-08-14 19:20:01 UTC (buildkit.dockerfile.v0)ARG AIRFLOW_USE_UV
2025-08-14 19:20:01 UTC (buildkit.dockerfile.v0)ENV DUMB_INIT_SETSID=1 PS1=(airflow) AIRFLOW_VERSION=3.0.5rc2 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.8 AIRFLOW_SETUPTOOLS_VERSION=80.9.0 AIRFLOW_USE_UV=false
2025-08-14 19:20:01 UTC (buildkit.dockerfile.v0)RUN |24 AIRFLOW_UID=50000 PYTHON_BASE_IMAGE=python:3.10-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.5rc2 AIRFLOW_PIP_VERSION=25.2 AIRFLOW_SETUPTOOLS_VERSION=80.9.0 AIRFLOW_UV_VERSION=0.8.8 AIRFLOW_USE_UV=false /bin/bash -o pipefail -o errexit -o nounset -o nolog -c mkdir -pv /root/bin # buildkit
2025-08-14 19:20:02 UTC (buildkit.dockerfile.v0)COPY pip /root/bin/pip # buildkit
2025-08-14 19:20:02 UTC (buildkit.dockerfile.v0)RUN |24 AIRFLOW_UID=50000 PYTHON_BASE_IMAGE=python:3.10-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.5rc2 AIRFLOW_PIP_VERSION=25.2 AIRFLOW_SETUPTOOLS_VERSION=80.9.0 AIRFLOW_UV_VERSION=0.8.8 AIRFLOW_USE_UV=false /bin/bash -o pipefail -o errexit -o nounset -o nolog -c chmod u+x /root/bin/pip # buildkit
2025-08-14 19:20:02 UTC (buildkit.dockerfile.v0)WORKDIR /opt/airflow
2025-08-14 19:20:02 UTC (buildkit.dockerfile.v0)EXPOSE map[8080/tcp:{}]
2025-08-14 19:20:02 UTC (buildkit.dockerfile.v0)USER 50000
2025-08-14 19:20:02 UTC (buildkit.dockerfile.v0)ARG BUILD_ID
2025-08-14 19:20:02 UTC (buildkit.dockerfile.v0)ARG COMMIT_SHA
2025-08-14 19:20:02 UTC (buildkit.dockerfile.v0)ARG AIRFLOW_IMAGE_REPOSITORY
2025-08-14 19:20:02 UTC (buildkit.dockerfile.v0)ARG AIRFLOW_IMAGE_DATE_CREATED
2025-08-14 19:20:02 UTC (buildkit.dockerfile.v0)ENV BUILD_ID= COMMIT_SHA=6888a3efc60478d26e427c95988514d0fc868a2e
2025-08-14 19:20:02 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.5rc2 org.apache.airflow.uid=50000 org.apache.airflow.main-image.build-id= org.apache.airflow.main-image.commit-sha=6888a3efc60478d26e427c95988514d0fc868a2e 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.5rc2 org.opencontainers.image.revision=6888a3efc60478d26e427c95988514d0fc868a2e 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-14 19:20:02 UTC (buildkit.dockerfile.v0)ENTRYPOINT ["/usr/bin/dumb-init" "--" "/entrypoint"]
2025-08-14 19:20:02 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.