2026-10-24 10:02:30 UTC
75.7 MB
C.UTF-8
PATH/app/.venv/bin:/usr/local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
PGID1000
PUID1000
PYTHON_SHA256e02d9ac21cebda6e46435369744a92c65cc7cd8669697694122cf97ffacd1e53
PYTHON_VERSION3.14.9
TZAsia/Shanghai
UMASK022
[#000] sha256:7b229517ed222597277036d94892173207d01a731ab3a88eeb1de2e963a2c788 - 4.85% (3.67 MB)
[#001] sha256:b8c8e17c37680a5088e1c0f900c321fc83810c5961f8bfb9fb29df8080325212 - 0.52% (402 KB)
[#002] sha256:21a73207b3c2491ce3b099dfb0161eedc71dd407a2457d77373e890475300cba - 17.08% (12.9 MB)
[#003] sha256:6e039175c5c5573da91a8ef9b3d1b75105b50c58a0f2a0bb6b8d45124293b035 - 0.0% (248 Bytes)
[#004] sha256:7faedc5dbae95b4264619012fc5dac3105c00d0957f8a8e7795c90ec395d641f - 1.77% (1.34 MB)
[#005] sha256:71afd5bffb7eb0e2c43682236c2c263e303b566581b494e939f39d7ffba4a4f1 - 0.0% (93 Bytes)
[#006] sha256:26331fa8cfb7038fca1898a9f98ac0e73c6930e4d519027e680c06290af3e28e - 49.8% (37.7 MB)
[#007] sha256:f127a4539c8267071a10d2222ee863e3331defab492471e43953b57d5eff91f8 - 2.59% (1.96 MB)
[#008] sha256:e804561040dd27c90275b81710a0c341b95e0cfc86417e71c659504d61d30a5b - 0.0% (1.41 KB)
[#009] sha256:ac5b9745fce1e3b6c97c66c43e3937156b03cdddab322041ffa9cf3ce4eecc68 - 23.29% (17.6 MB)
[#010] sha256:92e3d786f3fbbf12ad25ef73287caf848beb6e60fb1e61cbee4b436ffd3aa20c - 0.09% (67.5 KB)
[#011] sha256:4f4fb700ef54461cfa02571ae0db9a0dc1e0cdb5577484a6d75e68dc38e8acc1 - 0.0% (32 Bytes)
[#012] sha256:f7375e90fbe3124c0fe160beb92fa1060d57e66d8a0205239efaba73aeb0064d - 0.0% (147 Bytes)
[#013] sha256:e4908e95e5de63f5db13b250ae60d25bd7f395feced97c8a4c3f59e68d284982 - 0.0% (941 Bytes)
ADD alpine-minirootfs-3.24.3-x86_64.tar.gz / # buildkit
2026-10-21 22:37:22 UTC (buildkit.dockerfile.v0)CMD ["/bin/sh"]
2026-10-21 22:59:09 UTC (buildkit.dockerfile.v0)ENV PATH=/usr/local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
2026-10-21 22:59:09 UTC (buildkit.dockerfile.v0)RUN /bin/sh -c set -eux; apk add --no-cache ca-certificates tzdata ; # buildkit
2026-10-21 22:59:09 UTC (buildkit.dockerfile.v0)ENV PYTHON_VERSION=3.14.9
2026-10-21 22:59:09 UTC (buildkit.dockerfile.v0)ENV PYTHON_SHA256=e02d9ac21cebda6e46435369744a92c65cc7cd8669697694122cf97ffacd1e53
2026-10-21 23:01:37 UTC (buildkit.dockerfile.v0)RUN /bin/sh -c set -eux; apk add --no-cache --virtual .build-deps bluez-dev bzip2-dev dpkg-dev dpkg findutils g++ gcc gdbm-dev gnupg libc-dev libffi-dev libnsl-dev libtirpc-dev linux-headers make ncurses-dev openssl-dev pax-utils readline-dev sqlite-dev tar tcl-dev tk tk-dev util-linux-dev xz xz-dev zlib-dev zstd-dev ; wget -O python.tar.xz "https://www.python.org/ftp/python/${PYTHON_VERSION%%[a-z]*}/Python-$PYTHON_VERSION.tar.xz"; echo "$PYTHON_SHA256 *python.tar.xz" | sha256sum -c -; mkdir -p /usr/src/python; tar --extract --directory /usr/src/python --strip-components=1 --file python.tar.xz; rm python.tar.xz; cd /usr/src/python; gnuArch="$(dpkg-architecture --query DEB_BUILD_GNU_TYPE)"; ./configure --build="$gnuArch" --enable-loadable-sqlite-extensions --enable-option-checking=fatal --enable-shared $(test "${gnuArch%%-*}" != 'riscv64' && echo '--with-lto') --with-ensurepip ; nproc="$(nproc)"; EXTRA_CFLAGS="-DTHREAD_STACK_SIZE=0x100000"; LDFLAGS="${LDFLAGS:-} -Wl,--strip-all"; arch="$(apk --print-arch)"; case "$arch" in x86_64|aarch64) EXTRA_CFLAGS="${EXTRA_CFLAGS:-} -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer"; ;; x86) ;; *) EXTRA_CFLAGS="${EXTRA_CFLAGS:-} -fno-omit-frame-pointer"; ;; esac; make -j "$nproc" "EXTRA_CFLAGS=${EXTRA_CFLAGS:-}" "LDFLAGS=${LDFLAGS:-}" ; rm python; make -j "$nproc" "EXTRA_CFLAGS=${EXTRA_CFLAGS:-}" "LDFLAGS=${LDFLAGS:-} -Wl,-rpath='\$\$ORIGIN/../lib'" python ; make install; cd /; rm -rf /usr/src/python; find /usr/local -depth \( \( -type d -a \( -name test -o -name tests -o -name idle_test \) \) -o \( -type f -a \( -name '*.pyc' -o -name '*.pyo' -o -name 'libpython*.a' \) \) \) -exec rm -rf '{}' + ; find /usr/local -type f -executable -not \( -name '*tkinter*' \) -exec scanelf --needed --nobanner --format '%n#p' '{}' ';' | tr ',' '\n' | sort -u | awk 'system("[ -e /usr/local/lib/" $1 " ]") == 0 { next } { print "so:" $1 }' | xargs -rt apk add --no-network --virtual .python-rundeps ; apk del --no-network .build-deps; export PYTHONDONTWRITEBYTECODE=1; python3 --version; pip3 --version # buildkit
2026-10-21 23:01:37 UTC (buildkit.dockerfile.v0)RUN /bin/sh -c set -eux; for src in idle3 pip3 pydoc3 python3 python3-config; do dst="$(echo "$src" | tr -d 3)"; [ -s "/usr/local/bin/$src" ]; [ ! -e "/usr/local/bin/$dst" ]; ln -svT "$src" "/usr/local/bin/$dst"; done # buildkit
2026-10-21 23:01:37 UTC (buildkit.dockerfile.v0)CMD ["python3"]
2026-10-24 10:02:13 UTC (buildkit.dockerfile.v0)RUN /bin/sh -c apk add --no-cache bash su-exec shadow tini tzdata # buildkit
2026-10-24 10:02:13 UTC (buildkit.dockerfile.v0)ENV LANG=C.UTF-8 TZ=Asia/Shanghai PUID=1000 PGID=1000 UMASK=022
2026-10-24 10:02:13 UTC (buildkit.dockerfile.v0)WORKDIR /app
2026-10-24 10:02:29 UTC (buildkit.dockerfile.v0)COPY /app/.venv /app/.venv # buildkit
2026-10-24 10:02:29 UTC (buildkit.dockerfile.v0)COPY /app/src . # buildkit
2026-10-24 10:02:29 UTC (buildkit.dockerfile.v0)COPY --chmod=755 entrypoint.sh /entrypoint.sh # buildkit
2026-10-24 10:02:29 UTC (buildkit.dockerfile.v0)COPY /usr/local/bin/uv /usr/local/bin/uv # buildkit
2026-10-24 10:02:29 UTC (buildkit.dockerfile.v0)COPY /app/uv.lock /app/uv.lock # buildkit
2026-10-24 10:02:30 UTC (buildkit.dockerfile.v0)COPY backend/src/ab_update_pubkey.pem /app/ab_update_pubkey.pem # buildkit
2026-10-24 10:02:30 UTC (buildkit.dockerfile.v0)ARG VERSION=4.0.0
2026-10-24 10:02:30 UTC (buildkit.dockerfile.v0)RUN |1 VERSION=4.0.0 /bin/sh -c echo "${VERSION}" > /app/IMAGE_VERSION # buildkit
2026-10-24 10:02:30 UTC (buildkit.dockerfile.v0)RUN |1 VERSION=4.0.0 /bin/sh -c mkdir -p /home/ab && addgroup -S ab -g 911 && adduser -S ab -G ab -h /home/ab -s /sbin/nologin -u 911 # buildkit
2026-10-24 10:02:30 UTC (buildkit.dockerfile.v0)ENV PATH=/app/.venv/bin:/usr/local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
2026-10-24 10:02:30 UTC (buildkit.dockerfile.v0)EXPOSE [7892/tcp]
2026-10-24 10:02:30 UTC (buildkit.dockerfile.v0)VOLUME [/app/config /app/data]
2026-10-24 10:02:30 UTC (buildkit.dockerfile.v0)HEALTHCHECK {Test:[CMD-SHELL python /app/healthcheck.py] Interval:30s Timeout:5s StartPeriod:30s StartInterval:0s Retries:3}
2026-10-24 10:02:30 UTC (buildkit.dockerfile.v0)ENTRYPOINT ["tini" "-g" "--" "/entrypoint.sh"]
2026-10-24 10:03:23 UTC
75 MB
C.UTF-8
PATH/app/.venv/bin:/usr/local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
PGID1000
PUID1000
PYTHON_SHA256e02d9ac21cebda6e46435369744a92c65cc7cd8669697694122cf97ffacd1e53
PYTHON_VERSION3.14.9
TZAsia/Shanghai
UMASK022
[#000] sha256:d3531b7a4f217bdc3426c57bcff84c170f086f456a39689d4a615c6d026c4be0 - 5.33% (4 MB)
[#001] sha256:a2615a8e7f36184fc27aff7f9665b6482aa83b88e6488adbbff336aca56d86cb - 0.53% (406 KB)
[#002] sha256:4bee702058ddbbbc40d3d41fc84cd4d402097695689cab8ae5dc1d2dea4027d1 - 17.33% (13 MB)
[#003] sha256:b9f7fe6bf6f5e67bd8f4f284190c8c157b42f262c94bb4349c132b5602bdb7fe - 0.0% (250 Bytes)
[#004] sha256:addf809216f277caa078ed70d61660649d92e8dfd8d18bbc8dcbe0537b2bfc34 - 2.0% (1.5 MB)
[#005] sha256:71afd5bffb7eb0e2c43682236c2c263e303b566581b494e939f39d7ffba4a4f1 - 0.0% (93 Bytes)
[#006] sha256:063703b00c8c6647ca01b2834d12ae8a311330c315e8f5f898c9eea1ca121aa6 - 49.7% (37.3 MB)
[#007] sha256:335427601051c203b80cda1ad4577ec63b829226e29d7d7a37e7766dbd86b530 - 2.62% (1.96 MB)
[#008] sha256:e804561040dd27c90275b81710a0c341b95e0cfc86417e71c659504d61d30a5b - 0.0% (1.41 KB)
[#009] sha256:4712976493deb124497e2370f0e5b82c9ada4a1897c81f2b62fe49de0e4aafb0 - 22.41% (16.8 MB)
[#010] sha256:2d55bb6bec98872fa92cfbed7472a4405502aadf2aa7e874d33ea3482f8736a0 - 0.09% (67.5 KB)
[#011] sha256:4f4fb700ef54461cfa02571ae0db9a0dc1e0cdb5577484a6d75e68dc38e8acc1 - 0.0% (32 Bytes)
[#012] sha256:c61165ab577a05973e2792ed6b18d37b0a179d320a26a94dff7ba2550be9c620 - 0.0% (147 Bytes)
[#013] sha256:0e584c546376c23e8939100a9f208e6bc47fb5265c76dbcef8559e8902a8ad2a - 0.0% (938 Bytes)
ADD alpine-minirootfs-3.24.3-aarch64.tar.gz / # buildkit
2026-10-21 22:51:39 UTC (buildkit.dockerfile.v0)CMD ["/bin/sh"]
2026-10-21 23:22:43 UTC (buildkit.dockerfile.v0)ENV PATH=/usr/local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
2026-10-21 23:22:43 UTC (buildkit.dockerfile.v0)RUN /bin/sh -c set -eux; apk add --no-cache ca-certificates tzdata ; # buildkit
2026-10-21 23:22:43 UTC (buildkit.dockerfile.v0)ENV PYTHON_VERSION=3.14.9
2026-10-21 23:22:43 UTC (buildkit.dockerfile.v0)ENV PYTHON_SHA256=e02d9ac21cebda6e46435369744a92c65cc7cd8669697694122cf97ffacd1e53
2026-10-21 23:25:25 UTC (buildkit.dockerfile.v0)RUN /bin/sh -c set -eux; apk add --no-cache --virtual .build-deps bluez-dev bzip2-dev dpkg-dev dpkg findutils g++ gcc gdbm-dev gnupg libc-dev libffi-dev libnsl-dev libtirpc-dev linux-headers make ncurses-dev openssl-dev pax-utils readline-dev sqlite-dev tar tcl-dev tk tk-dev util-linux-dev xz xz-dev zlib-dev zstd-dev ; wget -O python.tar.xz "https://www.python.org/ftp/python/${PYTHON_VERSION%%[a-z]*}/Python-$PYTHON_VERSION.tar.xz"; echo "$PYTHON_SHA256 *python.tar.xz" | sha256sum -c -; mkdir -p /usr/src/python; tar --extract --directory /usr/src/python --strip-components=1 --file python.tar.xz; rm python.tar.xz; cd /usr/src/python; gnuArch="$(dpkg-architecture --query DEB_BUILD_GNU_TYPE)"; ./configure --build="$gnuArch" --enable-loadable-sqlite-extensions --enable-option-checking=fatal --enable-shared $(test "${gnuArch%%-*}" != 'riscv64' && echo '--with-lto') --with-ensurepip ; nproc="$(nproc)"; EXTRA_CFLAGS="-DTHREAD_STACK_SIZE=0x100000"; LDFLAGS="${LDFLAGS:-} -Wl,--strip-all"; arch="$(apk --print-arch)"; case "$arch" in x86_64|aarch64) EXTRA_CFLAGS="${EXTRA_CFLAGS:-} -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer"; ;; x86) ;; *) EXTRA_CFLAGS="${EXTRA_CFLAGS:-} -fno-omit-frame-pointer"; ;; esac; make -j "$nproc" "EXTRA_CFLAGS=${EXTRA_CFLAGS:-}" "LDFLAGS=${LDFLAGS:-}" ; rm python; make -j "$nproc" "EXTRA_CFLAGS=${EXTRA_CFLAGS:-}" "LDFLAGS=${LDFLAGS:-} -Wl,-rpath='\$\$ORIGIN/../lib'" python ; make install; cd /; rm -rf /usr/src/python; find /usr/local -depth \( \( -type d -a \( -name test -o -name tests -o -name idle_test \) \) -o \( -type f -a \( -name '*.pyc' -o -name '*.pyo' -o -name 'libpython*.a' \) \) \) -exec rm -rf '{}' + ; find /usr/local -type f -executable -not \( -name '*tkinter*' \) -exec scanelf --needed --nobanner --format '%n#p' '{}' ';' | tr ',' '\n' | sort -u | awk 'system("[ -e /usr/local/lib/" $1 " ]") == 0 { next } { print "so:" $1 }' | xargs -rt apk add --no-network --virtual .python-rundeps ; apk del --no-network .build-deps; export PYTHONDONTWRITEBYTECODE=1; python3 --version; pip3 --version # buildkit
2026-10-21 23:25:25 UTC (buildkit.dockerfile.v0)RUN /bin/sh -c set -eux; for src in idle3 pip3 pydoc3 python3 python3-config; do dst="$(echo "$src" | tr -d 3)"; [ -s "/usr/local/bin/$src" ]; [ ! -e "/usr/local/bin/$dst" ]; ln -svT "$src" "/usr/local/bin/$dst"; done # buildkit
2026-10-21 23:25:25 UTC (buildkit.dockerfile.v0)CMD ["python3"]
2026-10-24 10:02:13 UTC (buildkit.dockerfile.v0)RUN /bin/sh -c apk add --no-cache bash su-exec shadow tini tzdata # buildkit
2026-10-24 10:02:13 UTC (buildkit.dockerfile.v0)ENV LANG=C.UTF-8 TZ=Asia/Shanghai PUID=1000 PGID=1000 UMASK=022
2026-10-24 10:02:13 UTC (buildkit.dockerfile.v0)WORKDIR /app
2026-10-24 10:03:22 UTC (buildkit.dockerfile.v0)COPY /app/.venv /app/.venv # buildkit
2026-10-24 10:03:22 UTC (buildkit.dockerfile.v0)COPY /app/src . # buildkit
2026-10-24 10:03:22 UTC (buildkit.dockerfile.v0)COPY --chmod=755 entrypoint.sh /entrypoint.sh # buildkit
2026-10-24 10:03:23 UTC (buildkit.dockerfile.v0)COPY /usr/local/bin/uv /usr/local/bin/uv # buildkit
2026-10-24 10:03:23 UTC (buildkit.dockerfile.v0)COPY /app/uv.lock /app/uv.lock # buildkit
2026-10-24 10:03:23 UTC (buildkit.dockerfile.v0)COPY backend/src/ab_update_pubkey.pem /app/ab_update_pubkey.pem # buildkit
2026-10-24 10:03:23 UTC (buildkit.dockerfile.v0)ARG VERSION=4.0.0
2026-10-24 10:03:23 UTC (buildkit.dockerfile.v0)RUN |1 VERSION=4.0.0 /bin/sh -c echo "${VERSION}" > /app/IMAGE_VERSION # buildkit
2026-10-24 10:03:23 UTC (buildkit.dockerfile.v0)RUN |1 VERSION=4.0.0 /bin/sh -c mkdir -p /home/ab && addgroup -S ab -g 911 && adduser -S ab -G ab -h /home/ab -s /sbin/nologin -u 911 # buildkit
2026-10-24 10:03:23 UTC (buildkit.dockerfile.v0)ENV PATH=/app/.venv/bin:/usr/local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
2026-10-24 10:03:23 UTC (buildkit.dockerfile.v0)EXPOSE [7892/tcp]
2026-10-24 10:03:23 UTC (buildkit.dockerfile.v0)VOLUME [/app/config /app/data]
2026-10-24 10:03:23 UTC (buildkit.dockerfile.v0)HEALTHCHECK {Test:[CMD-SHELL python /app/healthcheck.py] Interval:30s Timeout:5s StartPeriod:30s StartInterval:0s Retries:3}
2026-10-24 10:03:23 UTC (buildkit.dockerfile.v0)ENTRYPOINT ["tini" "-g" "--" "/entrypoint.sh"]
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.