2026-10-28 19:06:07 UTC
128 MB
A035C8C19219BA821ECEA86B64E628F8D684696D
HOME/root
LANGC.UTF-8
NODE_PATH/usr/local/bin:/usr/local/lib/node_modules
PATH/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/ql/data/dep_cache/node:/ql/data/dep_cache/python3/bin:/root/bin
PIP_CACHE_DIR/ql/data/dep_cache/python3/pip
PNPM_HOME/ql/data/dep_cache/node
PS1\u@\h:\w $
PYTHONPATH/ql/data/dep_cache/python3:/ql/data/dep_cache/python3/lib/python3.11:/ql/data/dep_cache/python3/lib/python3.11/site-packages
PYTHONUSERBASE/ql/data/dep_cache/python3
PYTHON_HOME/ql/data/dep_cache/python3
PYTHON_SHA2569120e0a653868f6e3698d36cdd99e5a58903ec9469e448f21d98f7b16d8fa290
PYTHON_VERSION3.11.18
QL_BRANCHmaster
QL_CONTAINERtrue
QL_DIR/ql
SHELL/bin/bash
[#000] sha256:f89afe85a29e874c0bc6d49b09150af4f08fbc4e6db82e7870677ef76977c07d - 2.73% (3.51 MB)
[#001] sha256:b2be49c18b96c0a499b1c5abffe2e812b4c589cb46f2ef988a77f55684b3fd54 - 0.31% (403 KB)
[#002] sha256:3db8aef1aee8e8469a73cfb2e43efcd837ea0655d49b8e67fe8dfeb6239a794a - 12.13% (15.6 MB)
[#003] sha256:a25c062188aff2776e4a044d0d23ca6fc3a7195119bee8325bbe868de1c0f2ba - 0.0% (248 Bytes)
[#004] sha256:b8a0c6afcab025afd65b89d5f6866b805d7f753bbd4e1a1034372d5eaad71c0b - 7.89% (10.1 MB)
[#005] sha256:1b1819538546c103ab620fd9f8dde6091d8fad8979e47523366f9b987696f9a0 - 0.0% (473 Bytes)
[#006] sha256:c373f57c5ce9df588fe3bb1bf28e81ae3232b581fc81e9c85252997c51df7a67 - 36.92% (47.4 MB)
[#007] sha256:ba2d41c8eba51ef519f817695bdb25a0b6ffe4099c7ae7a6623efc2033f3b596 - 2.16% (2.77 MB)
[#008] sha256:605c2fdfd09de4fed04db835a20cbe6b8d36003b1fbbeab5b687ec616299d5e1 - 9.35% (12 MB)
[#009] sha256:489f94a40c52a22f7544614c0a342d9ccac7392d27f801db39760fd29ae9d121 - 0.0% (1.15 KB)
[#010] sha256:590ddf1399da9f00fe3ded96f01f670695d81281fb2dce2002e79f4832563e53 - 0.14% (181 KB)
[#011] sha256:4f4fb700ef54461cfa02571ae0db9a0dc1e0cdb5577484a6d75e68dc38e8acc1 - 0.0% (32 Bytes)
[#012] sha256:4f4fb700ef54461cfa02571ae0db9a0dc1e0cdb5577484a6d75e68dc38e8acc1 - 0.0% (32 Bytes)
[#013] sha256:bf9e1d948d0b743134ae2c30f977da63ad2e818a3fca02ce34ac74cc2f804814 - 4.41% (5.66 MB)
[#014] sha256:8601e10b057a50f46fcd514b5a2dcabef86907c4cdff91bb83cbd3ee309b33a6 - 23.96% (30.8 MB)
[#015] sha256:30f61600e5aeeea71295e417308ba027aef6a829f9ebdf9c6448972eebd072bc - 0.0% (201 Bytes)
[#016] sha256:4f4fb700ef54461cfa02571ae0db9a0dc1e0cdb5577484a6d75e68dc38e8acc1 - 0.0% (32 Bytes)
ADD alpine-minirootfs-3.24.3-x86.tar.gz / # buildkit
2026-10-21 22:50:43 UTC (buildkit.dockerfile.v0)CMD ["/bin/sh"]
2026-10-26 22:31:30 UTC (buildkit.dockerfile.v0)ENV PATH=/usr/local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
2026-10-26 22:31:30 UTC (buildkit.dockerfile.v0)ENV LANG=C.UTF-8
2026-10-26 22:31:30 UTC (buildkit.dockerfile.v0)RUN /bin/sh -c set -eux; apk add --no-cache ca-certificates tzdata ; # buildkit
2026-10-26 22:31:30 UTC (buildkit.dockerfile.v0)ENV GPG_KEY=A035C8C19219BA821ECEA86B64E628F8D684696D
2026-10-26 22:31:30 UTC (buildkit.dockerfile.v0)ENV PYTHON_VERSION=3.11.18
2026-10-26 22:31:30 UTC (buildkit.dockerfile.v0)ENV PYTHON_SHA256=9120e0a653868f6e3698d36cdd99e5a58903ec9469e448f21d98f7b16d8fa290
2026-10-26 23:09:36 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 ; 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-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"; 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 install --disable-pip-version-check --no-cache-dir --no-compile 'setuptools==79.0.1' 'wheel==0.46.3' ; pip3 --version # buildkit
2026-10-26 23:09:36 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-26 23:09:36 UTC (buildkit.dockerfile.v0)CMD ["python3"]
2026-10-28 18:24:16 UTC (buildkit.dockerfile.v0)ARG TARGETARCH=386
2026-10-28 18:24:16 UTC (buildkit.dockerfile.v0)ARG TARGETVARIANT=
2026-10-28 18:24:16 UTC (buildkit.dockerfile.v0)ARG QL_MAINTAINER=whyour
2026-10-28 18:24:16 UTC (buildkit.dockerfile.v0)LABEL maintainer=whyour
2026-10-28 18:24:16 UTC (buildkit.dockerfile.v0)ARG QL_URL=https://github.com/whyour/qinglong.git
2026-10-28 18:24:16 UTC (buildkit.dockerfile.v0)ARG QL_BRANCH=master
2026-10-28 18:24:16 UTC (buildkit.dockerfile.v0)ARG PYTHON_SHORT_VERSION=3.11
2026-10-28 18:24:16 UTC (buildkit.dockerfile.v0)ENV QL_DIR=/ql QL_BRANCH=master QL_CONTAINER=true LANG=C.UTF-8 SHELL=/bin/bash PS1=\u@\h:\w $
2026-10-28 18:24:16 UTC (buildkit.dockerfile.v0)VOLUME [/ql/data]
2026-10-28 18:24:16 UTC (buildkit.dockerfile.v0)EXPOSE [5700/tcp]
2026-10-28 18:24:16 UTC (buildkit.dockerfile.v0)COPY /opt/node-global/lib/node_modules/. /usr/local/lib/node_modules/ # buildkit
2026-10-28 18:24:17 UTC (buildkit.dockerfile.v0)COPY /opt/node-global/bin/. /usr/local/bin/ # buildkit
2026-10-28 18:24:24 UTC (buildkit.dockerfile.v0)RUN |6 TARGETARCH=386 TARGETVARIANT= QL_MAINTAINER=whyour QL_URL=https://github.com/whyour/qinglong.git QL_BRANCH=master PYTHON_SHORT_VERSION=3.11 /bin/sh -c set -x && apk update -f && apk upgrade && apk --no-cache add -f bash coreutils git curl wget tzdata perl openssl nodejs jq openssh procps netcat-openbsd unzip npm && if [ "$TARGETARCH" = amd64 ]; then cp /tmp/node-runtime-amd64 /usr/local/bin/node; ln -sf /usr/local/bin/node /usr/bin/node; fi && node --version | grep -E '^v24\.' && rm -rf /var/cache/apk/* && apk update && ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime && echo "Asia/Shanghai" > /etc/timezone && git config --global user.email "qinglong@users.noreply.github.com" && git config --global user.name "qinglong" && git config --global http.postBuffer 524288000 && rm -rf /root/.cache && ulimit -c 0 # buildkit
2026-10-28 18:24:24 UTC (buildkit.dockerfile.v0)ARG SOURCE_COMMIT=6e26899a235a955713edfb490f6ae538d0baf612
2026-10-28 18:24:24 UTC (buildkit.dockerfile.v0)LABEL org.opencontainers.image.revision=6e26899a235a955713edfb490f6ae538d0baf612
2026-10-28 19:05:26 UTC (buildkit.dockerfile.v0)RUN |7 TARGETARCH=386 TARGETVARIANT= QL_MAINTAINER=whyour QL_URL=https://github.com/whyour/qinglong.git QL_BRANCH=master PYTHON_SHORT_VERSION=3.11 SOURCE_COMMIT=6e26899a235a955713edfb490f6ae538d0baf612 /bin/sh -c git clone --depth=1 -b ${QL_BRANCH} ${QL_URL} ${QL_DIR} && cd ${QL_DIR} && if [ -n "${SOURCE_COMMIT}" ]; then git fetch --depth=1 origin "${SOURCE_COMMIT}" && git reset --hard FETCH_HEAD; fi && cp -f .env.example .env && chmod 777 ${QL_DIR}/shell/*.sh && chmod 777 ${QL_DIR}/docker/*.sh # buildkit
2026-10-28 19:05:27 UTC (buildkit.dockerfile.v0)COPY static/ /ql/static/ # buildkit
2026-10-28 19:05:27 UTC (buildkit.dockerfile.v0)COPY docker/verify-build.cjs docker/build-manifest.cjs /tmp/ # buildkit
2026-10-28 19:05:50 UTC (buildkit.dockerfile.v0)COPY /tmp/build/pnpm-lock.yaml /tmp/dependency-lock.yaml # buildkit
2026-10-28 19:05:51 UTC (buildkit.dockerfile.v0)RUN |7 TARGETARCH=386 TARGETVARIANT= QL_MAINTAINER=whyour QL_URL=https://github.com/whyour/qinglong.git QL_BRANCH=master PYTHON_SHORT_VERSION=3.11 SOURCE_COMMIT=6e26899a235a955713edfb490f6ae538d0baf612 /bin/sh -c cd ${QL_DIR} && node /tmp/verify-build.cjs /tmp/dependency-lock.yaml # buildkit
2026-10-28 19:05:54 UTC (buildkit.dockerfile.v0)RUN |7 TARGETARCH=386 TARGETVARIANT= QL_MAINTAINER=whyour QL_URL=https://github.com/whyour/qinglong.git QL_BRANCH=master PYTHON_SHORT_VERSION=3.11 SOURCE_COMMIT=6e26899a235a955713edfb490f6ae538d0baf612 /bin/sh -c if [ "$TARGETARCH" = arm ] && [ "${TARGETVARIANT:-}" = v6 ]; then QEMU_CPU=arm1176 node --jitless ${QL_DIR}/shell/node-runtime-probe.cjs; else node ${QL_DIR}/shell/node-runtime-probe.cjs; fi # buildkit
2026-10-28 19:05:54 UTC (buildkit.dockerfile.v0)ENV PNPM_HOME=/ql/data/dep_cache/node PYTHON_HOME=/ql/data/dep_cache/python3 PYTHONUSERBASE=/ql/data/dep_cache/python3 HOME=/root
2026-10-28 19:05:54 UTC (buildkit.dockerfile.v0)ENV PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/ql/data/dep_cache/node:/ql/data/dep_cache/python3/bin:/root/bin NODE_PATH=/usr/local/bin:/usr/local/lib/node_modules PIP_CACHE_DIR=/ql/data/dep_cache/python3/pip PYTHONPATH=/ql/data/dep_cache/python3:/ql/data/dep_cache/python3/lib/python3.11:/ql/data/dep_cache/python3/lib/python3.11/site-packages
2026-10-28 19:06:02 UTC (buildkit.dockerfile.v0)RUN |7 TARGETARCH=386 TARGETVARIANT= QL_MAINTAINER=whyour QL_URL=https://github.com/whyour/qinglong.git QL_BRANCH=master PYTHON_SHORT_VERSION=3.11 SOURCE_COMMIT=6e26899a235a955713edfb490f6ae538d0baf612 /bin/sh -c pip3 install --prefix ${PYTHON_HOME} requests # buildkit
2026-10-28 19:06:06 UTC (buildkit.dockerfile.v0)COPY /tmp/build/node_modules/. /ql/node_modules/ # buildkit
2026-10-28 19:06:07 UTC (buildkit.dockerfile.v0)RUN |7 TARGETARCH=386 TARGETVARIANT= QL_MAINTAINER=whyour QL_URL=https://github.com/whyour/qinglong.git QL_BRANCH=master PYTHON_SHORT_VERSION=3.11 SOURCE_COMMIT=6e26899a235a955713edfb490f6ae538d0baf612 /bin/sh -c ln -sf ${QL_DIR}/shell/task.sh /usr/local/bin/task && ln -sf ${QL_DIR}/shell/update.sh /usr/local/bin/ql && chmod +x /usr/local/bin/task /usr/local/bin/ql # buildkit
2026-10-28 19:06:07 UTC (buildkit.dockerfile.v0)WORKDIR /ql
2026-10-28 19:06:07 UTC (buildkit.dockerfile.v0)HEALTHCHECK {Test:[CMD-SHELL curl -sf --noproxy '*' http://localhost:${QlPort:-5700}/api/health || exit 1] Interval:5s Timeout:2s StartPeriod:0s StartInterval:0s Retries:20}
2026-10-28 19:06:07 UTC (buildkit.dockerfile.v0)ENTRYPOINT ["./docker/docker-entrypoint.sh"]
2026-10-28 19:06:13 UTC
157 MB
A035C8C19219BA821ECEA86B64E628F8D684696D
HOME/root
LANGC.UTF-8
NODE_PATH/usr/local/bin:/usr/local/lib/node_modules
PATH/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/ql/data/dep_cache/node:/ql/data/dep_cache/python3/bin:/root/bin
PIP_CACHE_DIR/ql/data/dep_cache/python3/pip
PNPM_HOME/ql/data/dep_cache/node
PS1\u@\h:\w $
PYTHONPATH/ql/data/dep_cache/python3:/ql/data/dep_cache/python3/lib/python3.11:/ql/data/dep_cache/python3/lib/python3.11/site-packages
PYTHONUSERBASE/ql/data/dep_cache/python3
PYTHON_HOME/ql/data/dep_cache/python3
PYTHON_SHA2569120e0a653868f6e3698d36cdd99e5a58903ec9469e448f21d98f7b16d8fa290
PYTHON_VERSION3.11.18
QL_BRANCHmaster
QL_CONTAINERtrue
QL_DIR/ql
SHELL/bin/bash
[#000] sha256:7b229517ed222597277036d94892173207d01a731ab3a88eeb1de2e963a2c788 - 2.34% (3.67 MB)
[#001] sha256:37f964e9a380605876491491697d5b7118634cc2869040df9c3296a445c1a2b4 - 0.25% (402 KB)
[#002] sha256:91d2cc06dca10cca950bce1470a72ac225a28af0bf2ecb656f8c56670d8e48b2 - 9.79% (15.4 MB)
[#003] sha256:a78e181ef373ffdb5eb883f1749919d9575b3757828f15e7f736b58b4f1c534f - 0.0% (249 Bytes)
[#004] sha256:381ce0c9bbb6231030c663c0c5e953540237511bcd5afeb7c8834cd0620b134b - 6.45% (10.1 MB)
[#005] sha256:a2bf741f8ce9aa44cb2a89531a757501c181e4a99d89d5039dc4f864c6f8324e - 0.0% (474 Bytes)
[#006] sha256:107cc56d020de02395aced4d1e1a764a29e648512768d5a44004de07c7bac969 - 48.25% (75.9 MB)
[#007] sha256:7f04bf1c65707250930e46627f08a56cfaba84da1cb6ae8eb10c0efd19135afa - 1.76% (2.77 MB)
[#008] sha256:2cf3caae827d1fc9f8ffc6e0f10ac72c7d6788632f1b763144e381e270853622 - 7.64% (12 MB)
[#009] sha256:5e457cca903d9ab9ed99915066f30a39dc66197535184d7d5aa00ce600d57d74 - 0.0% (1.15 KB)
[#010] sha256:48749b63cfaa01e67b1616d46603d1f61c321b506abfded132b120e6f3552108 - 0.11% (181 KB)
[#011] sha256:4f4fb700ef54461cfa02571ae0db9a0dc1e0cdb5577484a6d75e68dc38e8acc1 - 0.0% (32 Bytes)
[#012] sha256:4f4fb700ef54461cfa02571ae0db9a0dc1e0cdb5577484a6d75e68dc38e8acc1 - 0.0% (32 Bytes)
[#013] sha256:8095b99e5b12fe7f61dddddf966cdf9f4d4a26882a5355eb9645ea2f9dded2c5 - 3.85% (6.06 MB)
[#014] sha256:6da399bb93ecfa9b2e0a5ff7a5c43248ecf894e1dad729546e7df9aa5a443f35 - 19.55% (30.7 MB)
[#015] sha256:b562b8b55898ed61fa06c2a75d245a58d4e39af75db1a567067a442efa1a30c4 - 0.0% (201 Bytes)
[#016] sha256:4f4fb700ef54461cfa02571ae0db9a0dc1e0cdb5577484a6d75e68dc38e8acc1 - 0.0% (32 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-26 22:51:23 UTC (buildkit.dockerfile.v0)ENV PATH=/usr/local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
2026-10-26 22:51:23 UTC (buildkit.dockerfile.v0)ENV LANG=C.UTF-8
2026-10-26 22:51:23 UTC (buildkit.dockerfile.v0)RUN /bin/sh -c set -eux; apk add --no-cache ca-certificates tzdata ; # buildkit
2026-10-26 22:51:23 UTC (buildkit.dockerfile.v0)ENV GPG_KEY=A035C8C19219BA821ECEA86B64E628F8D684696D
2026-10-26 22:51:23 UTC (buildkit.dockerfile.v0)ENV PYTHON_VERSION=3.11.18
2026-10-26 22:51:23 UTC (buildkit.dockerfile.v0)ENV PYTHON_SHA256=9120e0a653868f6e3698d36cdd99e5a58903ec9469e448f21d98f7b16d8fa290
2026-10-26 22:55:41 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 ; 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-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"; 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 install --disable-pip-version-check --no-cache-dir --no-compile 'setuptools==79.0.1' 'wheel==0.46.3' ; pip3 --version # buildkit
2026-10-26 22:55:41 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-26 22:55:41 UTC (buildkit.dockerfile.v0)CMD ["python3"]
2026-10-28 18:24:16 UTC (buildkit.dockerfile.v0)ARG TARGETARCH=amd64
2026-10-28 18:24:16 UTC (buildkit.dockerfile.v0)ARG TARGETVARIANT=
2026-10-28 18:24:16 UTC (buildkit.dockerfile.v0)ARG QL_MAINTAINER=whyour
2026-10-28 18:24:16 UTC (buildkit.dockerfile.v0)LABEL maintainer=whyour
2026-10-28 18:24:16 UTC (buildkit.dockerfile.v0)ARG QL_URL=https://github.com/whyour/qinglong.git
2026-10-28 18:24:16 UTC (buildkit.dockerfile.v0)ARG QL_BRANCH=master
2026-10-28 18:24:16 UTC (buildkit.dockerfile.v0)ARG PYTHON_SHORT_VERSION=3.11
2026-10-28 18:24:16 UTC (buildkit.dockerfile.v0)ENV QL_DIR=/ql QL_BRANCH=master QL_CONTAINER=true LANG=C.UTF-8 SHELL=/bin/bash PS1=\u@\h:\w $
2026-10-28 18:24:16 UTC (buildkit.dockerfile.v0)VOLUME [/ql/data]
2026-10-28 18:24:16 UTC (buildkit.dockerfile.v0)EXPOSE [5700/tcp]
2026-10-28 18:24:16 UTC (buildkit.dockerfile.v0)COPY /opt/node-global/lib/node_modules/. /usr/local/lib/node_modules/ # buildkit
2026-10-28 18:24:17 UTC (buildkit.dockerfile.v0)COPY /opt/node-global/bin/. /usr/local/bin/ # buildkit
2026-10-28 18:24:24 UTC (buildkit.dockerfile.v0)RUN |6 TARGETARCH=amd64 TARGETVARIANT= QL_MAINTAINER=whyour QL_URL=https://github.com/whyour/qinglong.git QL_BRANCH=master PYTHON_SHORT_VERSION=3.11 /bin/sh -c set -x && apk update -f && apk upgrade && apk --no-cache add -f bash coreutils git curl wget tzdata perl openssl nodejs jq openssh procps netcat-openbsd unzip npm && if [ "$TARGETARCH" = amd64 ]; then cp /tmp/node-runtime-amd64 /usr/local/bin/node; ln -sf /usr/local/bin/node /usr/bin/node; fi && node --version | grep -E '^v24\.' && rm -rf /var/cache/apk/* && apk update && ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime && echo "Asia/Shanghai" > /etc/timezone && git config --global user.email "qinglong@users.noreply.github.com" && git config --global user.name "qinglong" && git config --global http.postBuffer 524288000 && rm -rf /root/.cache && ulimit -c 0 # buildkit
2026-10-28 18:24:24 UTC (buildkit.dockerfile.v0)ARG SOURCE_COMMIT=6e26899a235a955713edfb490f6ae538d0baf612
2026-10-28 18:24:24 UTC (buildkit.dockerfile.v0)LABEL org.opencontainers.image.revision=6e26899a235a955713edfb490f6ae538d0baf612
2026-10-28 19:05:43 UTC (buildkit.dockerfile.v0)RUN |7 TARGETARCH=amd64 TARGETVARIANT= QL_MAINTAINER=whyour QL_URL=https://github.com/whyour/qinglong.git QL_BRANCH=master PYTHON_SHORT_VERSION=3.11 SOURCE_COMMIT=6e26899a235a955713edfb490f6ae538d0baf612 /bin/sh -c git clone --depth=1 -b ${QL_BRANCH} ${QL_URL} ${QL_DIR} && cd ${QL_DIR} && if [ -n "${SOURCE_COMMIT}" ]; then git fetch --depth=1 origin "${SOURCE_COMMIT}" && git reset --hard FETCH_HEAD; fi && cp -f .env.example .env && chmod 777 ${QL_DIR}/shell/*.sh && chmod 777 ${QL_DIR}/docker/*.sh # buildkit
2026-10-28 19:05:45 UTC (buildkit.dockerfile.v0)COPY static/ /ql/static/ # buildkit
2026-10-28 19:05:45 UTC (buildkit.dockerfile.v0)COPY docker/verify-build.cjs docker/build-manifest.cjs /tmp/ # buildkit
2026-10-28 19:05:53 UTC (buildkit.dockerfile.v0)COPY /tmp/build/pnpm-lock.yaml /tmp/dependency-lock.yaml # buildkit
2026-10-28 19:05:54 UTC (buildkit.dockerfile.v0)RUN |7 TARGETARCH=amd64 TARGETVARIANT= QL_MAINTAINER=whyour QL_URL=https://github.com/whyour/qinglong.git QL_BRANCH=master PYTHON_SHORT_VERSION=3.11 SOURCE_COMMIT=6e26899a235a955713edfb490f6ae538d0baf612 /bin/sh -c cd ${QL_DIR} && node /tmp/verify-build.cjs /tmp/dependency-lock.yaml # buildkit
2026-10-28 19:05:56 UTC (buildkit.dockerfile.v0)RUN |7 TARGETARCH=amd64 TARGETVARIANT= QL_MAINTAINER=whyour QL_URL=https://github.com/whyour/qinglong.git QL_BRANCH=master PYTHON_SHORT_VERSION=3.11 SOURCE_COMMIT=6e26899a235a955713edfb490f6ae538d0baf612 /bin/sh -c if [ "$TARGETARCH" = arm ] && [ "${TARGETVARIANT:-}" = v6 ]; then QEMU_CPU=arm1176 node --jitless ${QL_DIR}/shell/node-runtime-probe.cjs; else node ${QL_DIR}/shell/node-runtime-probe.cjs; fi # buildkit
2026-10-28 19:05:56 UTC (buildkit.dockerfile.v0)ENV PNPM_HOME=/ql/data/dep_cache/node PYTHON_HOME=/ql/data/dep_cache/python3 PYTHONUSERBASE=/ql/data/dep_cache/python3 HOME=/root
2026-10-28 19:05:56 UTC (buildkit.dockerfile.v0)ENV PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/ql/data/dep_cache/node:/ql/data/dep_cache/python3/bin:/root/bin NODE_PATH=/usr/local/bin:/usr/local/lib/node_modules PIP_CACHE_DIR=/ql/data/dep_cache/python3/pip PYTHONPATH=/ql/data/dep_cache/python3:/ql/data/dep_cache/python3/lib/python3.11:/ql/data/dep_cache/python3/lib/python3.11/site-packages
2026-10-28 19:06:06 UTC (buildkit.dockerfile.v0)RUN |7 TARGETARCH=amd64 TARGETVARIANT= QL_MAINTAINER=whyour QL_URL=https://github.com/whyour/qinglong.git QL_BRANCH=master PYTHON_SHORT_VERSION=3.11 SOURCE_COMMIT=6e26899a235a955713edfb490f6ae538d0baf612 /bin/sh -c pip3 install --prefix ${PYTHON_HOME} requests # buildkit
2026-10-28 19:06:12 UTC (buildkit.dockerfile.v0)COPY /tmp/build/node_modules/. /ql/node_modules/ # buildkit
2026-10-28 19:06:13 UTC (buildkit.dockerfile.v0)RUN |7 TARGETARCH=amd64 TARGETVARIANT= QL_MAINTAINER=whyour QL_URL=https://github.com/whyour/qinglong.git QL_BRANCH=master PYTHON_SHORT_VERSION=3.11 SOURCE_COMMIT=6e26899a235a955713edfb490f6ae538d0baf612 /bin/sh -c ln -sf ${QL_DIR}/shell/task.sh /usr/local/bin/task && ln -sf ${QL_DIR}/shell/update.sh /usr/local/bin/ql && chmod +x /usr/local/bin/task /usr/local/bin/ql # buildkit
2026-10-28 19:06:13 UTC (buildkit.dockerfile.v0)WORKDIR /ql
2026-10-28 19:06:13 UTC (buildkit.dockerfile.v0)HEALTHCHECK {Test:[CMD-SHELL curl -sf --noproxy '*' http://localhost:${QlPort:-5700}/api/health || exit 1] Interval:5s Timeout:2s StartPeriod:0s StartInterval:0s Retries:20}
2026-10-28 19:06:13 UTC (buildkit.dockerfile.v0)ENTRYPOINT ["./docker/docker-entrypoint.sh"]
2026-10-28 19:08:53 UTC
126 MB
A035C8C19219BA821ECEA86B64E628F8D684696D
HOME/root
LANGC.UTF-8
NODE_PATH/usr/local/bin:/usr/local/lib/node_modules
PATH/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/ql/data/dep_cache/node:/ql/data/dep_cache/python3/bin:/root/bin
PIP_CACHE_DIR/ql/data/dep_cache/python3/pip
PNPM_HOME/ql/data/dep_cache/node
PS1\u@\h:\w $
PYTHONPATH/ql/data/dep_cache/python3:/ql/data/dep_cache/python3/lib/python3.11:/ql/data/dep_cache/python3/lib/python3.11/site-packages
PYTHONUSERBASE/ql/data/dep_cache/python3
PYTHON_HOME/ql/data/dep_cache/python3
PYTHON_SHA2569120e0a653868f6e3698d36cdd99e5a58903ec9469e448f21d98f7b16d8fa290
PYTHON_VERSION3.11.18
QL_BRANCHmaster
QL_CONTAINERtrue
QL_DIR/ql
SHELL/bin/bash
[#000] sha256:61279dc9f8c5bf0223a3425a62f1aa1724ff7bf43c3d15f18ff665dc59c1f0c3 - 2.68% (3.39 MB)
[#001] sha256:7f5d7e5f1af3999ae949ec585fae3239a1dc7a8cd34473d27621ce3e925570bc - 0.31% (404 KB)
[#002] sha256:9d309013cf722daf38dc42eb3a70eafe81bbdd40b7abffae076227bfa8f16036 - 11.83% (15 MB)
[#003] sha256:d0fec8c2f5592f0faea10d1cace0b2589be9dce7e2133f47f52e9bcdc58a9530 - 0.0% (250 Bytes)
[#004] sha256:7d21bb3f7c7be75784cab8e3a61ce62918d390a9ed2100983a16c4462b2467fd - 8.02% (10.1 MB)
[#005] sha256:97b8b2eef933e875da6da8f5d0d04844eaca993dd709e657f2b85005cc9b237e - 0.0% (473 Bytes)
[#006] sha256:adca3e64b2a02cc36757f715e82c567c41af80de08dd2841a00cc7c391193a3d - 36.31% (45.9 MB)
[#007] sha256:2448fe7af1e653cf6a3757d4d6f89bfc78f7a6af4c42997c3c430b1367b3d4a6 - 2.19% (2.77 MB)
[#008] sha256:b0cf442b00b0a698b0489e05b6d801e190f88eded66e9cd4997628c58cbc0dec - 9.5% (12 MB)
[#009] sha256:a9504f776666344d2cd60cbd32e58a20128c0766d9748177b69479640ec8ad8e - 0.0% (1.15 KB)
[#010] sha256:9fb0c2cff5e6f47c0785955305f51c978ec76013f6e0da81613f3ab625b490e5 - 0.14% (181 KB)
[#011] sha256:4f4fb700ef54461cfa02571ae0db9a0dc1e0cdb5577484a6d75e68dc38e8acc1 - 0.0% (32 Bytes)
[#012] sha256:4f4fb700ef54461cfa02571ae0db9a0dc1e0cdb5577484a6d75e68dc38e8acc1 - 0.0% (32 Bytes)
[#013] sha256:590a96c56e62f20bb3395d4edf9d84c064dc3989530ffe97704c1079962e46f1 - 4.75% (6.01 MB)
[#014] sha256:f035c83e6916d47ac48d0f9e99ff349d597c3965328e1b52db60602b3d56c215 - 24.25% (30.7 MB)
[#015] sha256:dc9e92e7c417031614883aec0edf9636c676dceb40926446964a9f0169ebe003 - 0.0% (200 Bytes)
[#016] sha256:4f4fb700ef54461cfa02571ae0db9a0dc1e0cdb5577484a6d75e68dc38e8acc1 - 0.0% (32 Bytes)
ADD alpine-minirootfs-3.24.3-armhf.tar.gz / # buildkit
2026-10-21 22:58:59 UTC (buildkit.dockerfile.v0)CMD ["/bin/sh"]
2026-10-26 22:31:22 UTC (buildkit.dockerfile.v0)ENV PATH=/usr/local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
2026-10-26 22:31:22 UTC (buildkit.dockerfile.v0)ENV LANG=C.UTF-8
2026-10-26 22:31:22 UTC (buildkit.dockerfile.v0)RUN /bin/sh -c set -eux; apk add --no-cache ca-certificates tzdata ; # buildkit
2026-10-26 22:31:22 UTC (buildkit.dockerfile.v0)ENV GPG_KEY=A035C8C19219BA821ECEA86B64E628F8D684696D
2026-10-26 22:31:22 UTC (buildkit.dockerfile.v0)ENV PYTHON_VERSION=3.11.18
2026-10-26 22:31:22 UTC (buildkit.dockerfile.v0)ENV PYTHON_SHA256=9120e0a653868f6e3698d36cdd99e5a58903ec9469e448f21d98f7b16d8fa290
2026-10-26 23:03:36 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 ; 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-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"; 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 install --disable-pip-version-check --no-cache-dir --no-compile 'setuptools==79.0.1' 'wheel==0.46.3' ; pip3 --version # buildkit
2026-10-26 23:03:36 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-26 23:03:36 UTC (buildkit.dockerfile.v0)CMD ["python3"]
2026-10-28 18:24:16 UTC (buildkit.dockerfile.v0)ARG TARGETARCH=arm
2026-10-28 18:24:16 UTC (buildkit.dockerfile.v0)ARG TARGETVARIANT=v6
2026-10-28 18:24:16 UTC (buildkit.dockerfile.v0)ARG QL_MAINTAINER=whyour
2026-10-28 18:24:16 UTC (buildkit.dockerfile.v0)LABEL maintainer=whyour
2026-10-28 18:24:16 UTC (buildkit.dockerfile.v0)ARG QL_URL=https://github.com/whyour/qinglong.git
2026-10-28 18:24:16 UTC (buildkit.dockerfile.v0)ARG QL_BRANCH=master
2026-10-28 18:24:16 UTC (buildkit.dockerfile.v0)ARG PYTHON_SHORT_VERSION=3.11
2026-10-28 18:24:16 UTC (buildkit.dockerfile.v0)ENV QL_DIR=/ql QL_BRANCH=master QL_CONTAINER=true LANG=C.UTF-8 SHELL=/bin/bash PS1=\u@\h:\w $
2026-10-28 18:24:16 UTC (buildkit.dockerfile.v0)VOLUME [/ql/data]
2026-10-28 18:24:16 UTC (buildkit.dockerfile.v0)EXPOSE [5700/tcp]
2026-10-28 18:24:16 UTC (buildkit.dockerfile.v0)COPY /opt/node-global/lib/node_modules/. /usr/local/lib/node_modules/ # buildkit
2026-10-28 18:24:18 UTC (buildkit.dockerfile.v0)COPY /opt/node-global/bin/. /usr/local/bin/ # buildkit
2026-10-28 18:24:35 UTC (buildkit.dockerfile.v0)RUN |6 TARGETARCH=arm TARGETVARIANT=v6 QL_MAINTAINER=whyour QL_URL=https://github.com/whyour/qinglong.git QL_BRANCH=master PYTHON_SHORT_VERSION=3.11 /bin/sh -c set -x && apk update -f && apk upgrade && apk --no-cache add -f bash coreutils git curl wget tzdata perl openssl nodejs jq openssh procps netcat-openbsd unzip npm && if [ "$TARGETARCH" = amd64 ]; then cp /tmp/node-runtime-amd64 /usr/local/bin/node; ln -sf /usr/local/bin/node /usr/bin/node; fi && node --version | grep -E '^v24\.' && rm -rf /var/cache/apk/* && apk update && ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime && echo "Asia/Shanghai" > /etc/timezone && git config --global user.email "qinglong@users.noreply.github.com" && git config --global user.name "qinglong" && git config --global http.postBuffer 524288000 && rm -rf /root/.cache && ulimit -c 0 # buildkit
2026-10-28 18:24:35 UTC (buildkit.dockerfile.v0)ARG SOURCE_COMMIT=6e26899a235a955713edfb490f6ae538d0baf612
2026-10-28 18:24:35 UTC (buildkit.dockerfile.v0)LABEL org.opencontainers.image.revision=6e26899a235a955713edfb490f6ae538d0baf612
2026-10-28 19:05:28 UTC (buildkit.dockerfile.v0)RUN |7 TARGETARCH=arm TARGETVARIANT=v6 QL_MAINTAINER=whyour QL_URL=https://github.com/whyour/qinglong.git QL_BRANCH=master PYTHON_SHORT_VERSION=3.11 SOURCE_COMMIT=6e26899a235a955713edfb490f6ae538d0baf612 /bin/sh -c git clone --depth=1 -b ${QL_BRANCH} ${QL_URL} ${QL_DIR} && cd ${QL_DIR} && if [ -n "${SOURCE_COMMIT}" ]; then git fetch --depth=1 origin "${SOURCE_COMMIT}" && git reset --hard FETCH_HEAD; fi && cp -f .env.example .env && chmod 777 ${QL_DIR}/shell/*.sh && chmod 777 ${QL_DIR}/docker/*.sh # buildkit
2026-10-28 19:05:28 UTC (buildkit.dockerfile.v0)COPY static/ /ql/static/ # buildkit
2026-10-28 19:05:28 UTC (buildkit.dockerfile.v0)COPY docker/verify-build.cjs docker/build-manifest.cjs /tmp/ # buildkit
2026-10-28 19:05:48 UTC (buildkit.dockerfile.v0)COPY /tmp/build/pnpm-lock.yaml /tmp/dependency-lock.yaml # buildkit
2026-10-28 19:06:29 UTC (buildkit.dockerfile.v0)RUN |7 TARGETARCH=arm TARGETVARIANT=v6 QL_MAINTAINER=whyour QL_URL=https://github.com/whyour/qinglong.git QL_BRANCH=master PYTHON_SHORT_VERSION=3.11 SOURCE_COMMIT=6e26899a235a955713edfb490f6ae538d0baf612 /bin/sh -c cd ${QL_DIR} && node /tmp/verify-build.cjs /tmp/dependency-lock.yaml # buildkit
2026-10-28 19:08:26 UTC (buildkit.dockerfile.v0)RUN |7 TARGETARCH=arm TARGETVARIANT=v6 QL_MAINTAINER=whyour QL_URL=https://github.com/whyour/qinglong.git QL_BRANCH=master PYTHON_SHORT_VERSION=3.11 SOURCE_COMMIT=6e26899a235a955713edfb490f6ae538d0baf612 /bin/sh -c if [ "$TARGETARCH" = arm ] && [ "${TARGETVARIANT:-}" = v6 ]; then QEMU_CPU=arm1176 node --jitless ${QL_DIR}/shell/node-runtime-probe.cjs; else node ${QL_DIR}/shell/node-runtime-probe.cjs; fi # buildkit
2026-10-28 19:08:26 UTC (buildkit.dockerfile.v0)ENV PNPM_HOME=/ql/data/dep_cache/node PYTHON_HOME=/ql/data/dep_cache/python3 PYTHONUSERBASE=/ql/data/dep_cache/python3 HOME=/root
2026-10-28 19:08:26 UTC (buildkit.dockerfile.v0)ENV PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/ql/data/dep_cache/node:/ql/data/dep_cache/python3/bin:/root/bin NODE_PATH=/usr/local/bin:/usr/local/lib/node_modules PIP_CACHE_DIR=/ql/data/dep_cache/python3/pip PYTHONPATH=/ql/data/dep_cache/python3:/ql/data/dep_cache/python3/lib/python3.11:/ql/data/dep_cache/python3/lib/python3.11/site-packages
2026-10-28 19:08:50 UTC (buildkit.dockerfile.v0)RUN |7 TARGETARCH=arm TARGETVARIANT=v6 QL_MAINTAINER=whyour QL_URL=https://github.com/whyour/qinglong.git QL_BRANCH=master PYTHON_SHORT_VERSION=3.11 SOURCE_COMMIT=6e26899a235a955713edfb490f6ae538d0baf612 /bin/sh -c pip3 install --prefix ${PYTHON_HOME} requests # buildkit
2026-10-28 19:08:53 UTC (buildkit.dockerfile.v0)COPY /tmp/build/node_modules/. /ql/node_modules/ # buildkit
2026-10-28 19:08:53 UTC (buildkit.dockerfile.v0)RUN |7 TARGETARCH=arm TARGETVARIANT=v6 QL_MAINTAINER=whyour QL_URL=https://github.com/whyour/qinglong.git QL_BRANCH=master PYTHON_SHORT_VERSION=3.11 SOURCE_COMMIT=6e26899a235a955713edfb490f6ae538d0baf612 /bin/sh -c ln -sf ${QL_DIR}/shell/task.sh /usr/local/bin/task && ln -sf ${QL_DIR}/shell/update.sh /usr/local/bin/ql && chmod +x /usr/local/bin/task /usr/local/bin/ql # buildkit
2026-10-28 19:08:53 UTC (buildkit.dockerfile.v0)WORKDIR /ql
2026-10-28 19:08:53 UTC (buildkit.dockerfile.v0)HEALTHCHECK {Test:[CMD-SHELL curl -sf --noproxy '*' http://localhost:${QlPort:-5700}/api/health || exit 1] Interval:5s Timeout:2s StartPeriod:0s StartInterval:0s Retries:20}
2026-10-28 19:08:53 UTC (buildkit.dockerfile.v0)ENTRYPOINT ["./docker/docker-entrypoint.sh"]
2026-10-28 19:08:51 UTC
125 MB
A035C8C19219BA821ECEA86B64E628F8D684696D
HOME/root
LANGC.UTF-8
NODE_PATH/usr/local/bin:/usr/local/lib/node_modules
PATH/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/ql/data/dep_cache/node:/ql/data/dep_cache/python3/bin:/root/bin
PIP_CACHE_DIR/ql/data/dep_cache/python3/pip
PNPM_HOME/ql/data/dep_cache/node
PS1\u@\h:\w $
PYTHONPATH/ql/data/dep_cache/python3:/ql/data/dep_cache/python3/lib/python3.11:/ql/data/dep_cache/python3/lib/python3.11/site-packages
PYTHONUSERBASE/ql/data/dep_cache/python3
PYTHON_HOME/ql/data/dep_cache/python3
PYTHON_SHA2569120e0a653868f6e3698d36cdd99e5a58903ec9469e448f21d98f7b16d8fa290
PYTHON_VERSION3.11.18
QL_BRANCHmaster
QL_CONTAINERtrue
QL_DIR/ql
SHELL/bin/bash
[#000] sha256:1e8d134240abdd47977b92433f069c273d151b9fba9396fd8ba3107b7222f7a1 - 2.5% (3.12 MB)
[#001] sha256:ae4d82a859e56ca7cb43d6096fe9eb93adb583ee3b95e9f10d0200a33c940f74 - 0.32% (403 KB)
[#002] sha256:29f8bbef8873dbe69a4a50360ab242f44ddaa7204ef515c5975b8ae9c48707a7 - 11.7% (14.6 MB)
[#003] sha256:7ad1b84fb9e302dcbb1f6e6c96ab0276fa32592c1931381139c165b8a0b43b97 - 0.0% (248 Bytes)
[#004] sha256:70073347df84339cb6593017ca5aa487ed30c4a41ba2bf0c9c8c1f9f5b5ac54a - 8.14% (10.1 MB)
[#005] sha256:59af1186bb20540c288177ef5924b70d84964077ec17f0c7ba3433fec5569830 - 0.0% (473 Bytes)
[#006] sha256:3aad6be3f4da2c67462d0b40ab412a2d6ed033705e4e5e40dc1ee36fa96a7fa0 - 35.93% (44.7 MB)
[#007] sha256:bb23471c6292a7e3f6ad6354736c972d6ce53dead710e385c960740b9608f13d - 2.22% (2.77 MB)
[#008] sha256:62daed4149eacafcaba7a83b6549d06c0d33edca1494585a0a943afe35b41af3 - 9.65% (12 MB)
[#009] sha256:fb90422bdc3bdb7f00b5cc809d0763e5ac4b68f8a3c086ef82a009d131eb9ed0 - 0.0% (1.15 KB)
[#010] sha256:221a2a84eedeb75bc64dbee780fea54b1badec73e2065a14ff443a4d0d84dfd1 - 0.14% (181 KB)
[#011] sha256:4f4fb700ef54461cfa02571ae0db9a0dc1e0cdb5577484a6d75e68dc38e8acc1 - 0.0% (32 Bytes)
[#012] sha256:4f4fb700ef54461cfa02571ae0db9a0dc1e0cdb5577484a6d75e68dc38e8acc1 - 0.0% (32 Bytes)
[#013] sha256:af8e8d08242519440e151f2de34ed378502c46f4cedaae3d6ca267eb723027e9 - 4.83% (6.01 MB)
[#014] sha256:eaaa63a2c2200c2433d584b5fdae4658a28801fee672e569da8ca357bb30f18b - 24.57% (30.6 MB)
[#015] sha256:38b6a4f4481fb59441ddff880eeeddcbac6eb8e690618f720b1ab5567f62d33b - 0.0% (200 Bytes)
[#016] sha256:4f4fb700ef54461cfa02571ae0db9a0dc1e0cdb5577484a6d75e68dc38e8acc1 - 0.0% (32 Bytes)
ADD alpine-minirootfs-3.24.3-armv7.tar.gz / # buildkit
2026-10-21 22:52:08 UTC (buildkit.dockerfile.v0)CMD ["/bin/sh"]
2026-10-26 23:31:26 UTC (buildkit.dockerfile.v0)ENV PATH=/usr/local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
2026-10-26 23:31:26 UTC (buildkit.dockerfile.v0)ENV LANG=C.UTF-8
2026-10-26 23:31:26 UTC (buildkit.dockerfile.v0)RUN /bin/sh -c set -eux; apk add --no-cache ca-certificates tzdata ; # buildkit
2026-10-26 23:31:26 UTC (buildkit.dockerfile.v0)ENV GPG_KEY=A035C8C19219BA821ECEA86B64E628F8D684696D
2026-10-26 23:31:26 UTC (buildkit.dockerfile.v0)ENV PYTHON_VERSION=3.11.18
2026-10-26 23:31:26 UTC (buildkit.dockerfile.v0)ENV PYTHON_SHA256=9120e0a653868f6e3698d36cdd99e5a58903ec9469e448f21d98f7b16d8fa290
2026-10-26 23:38:41 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 ; 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-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"; 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 install --disable-pip-version-check --no-cache-dir --no-compile 'setuptools==79.0.1' 'wheel==0.46.3' ; pip3 --version # buildkit
2026-10-26 23:38:41 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-26 23:38:41 UTC (buildkit.dockerfile.v0)CMD ["python3"]
2026-10-28 18:24:16 UTC (buildkit.dockerfile.v0)ARG TARGETARCH=arm
2026-10-28 18:24:16 UTC (buildkit.dockerfile.v0)ARG TARGETVARIANT=v7
2026-10-28 18:24:16 UTC (buildkit.dockerfile.v0)ARG QL_MAINTAINER=whyour
2026-10-28 18:24:16 UTC (buildkit.dockerfile.v0)LABEL maintainer=whyour
2026-10-28 18:24:16 UTC (buildkit.dockerfile.v0)ARG QL_URL=https://github.com/whyour/qinglong.git
2026-10-28 18:24:16 UTC (buildkit.dockerfile.v0)ARG QL_BRANCH=master
2026-10-28 18:24:16 UTC (buildkit.dockerfile.v0)ARG PYTHON_SHORT_VERSION=3.11
2026-10-28 18:24:16 UTC (buildkit.dockerfile.v0)ENV QL_DIR=/ql QL_BRANCH=master QL_CONTAINER=true LANG=C.UTF-8 SHELL=/bin/bash PS1=\u@\h:\w $
2026-10-28 18:24:16 UTC (buildkit.dockerfile.v0)VOLUME [/ql/data]
2026-10-28 18:24:16 UTC (buildkit.dockerfile.v0)EXPOSE [5700/tcp]
2026-10-28 18:24:16 UTC (buildkit.dockerfile.v0)COPY /opt/node-global/lib/node_modules/. /usr/local/lib/node_modules/ # buildkit
2026-10-28 18:24:17 UTC (buildkit.dockerfile.v0)COPY /opt/node-global/bin/. /usr/local/bin/ # buildkit
2026-10-28 18:24:35 UTC (buildkit.dockerfile.v0)RUN |6 TARGETARCH=arm TARGETVARIANT=v7 QL_MAINTAINER=whyour QL_URL=https://github.com/whyour/qinglong.git QL_BRANCH=master PYTHON_SHORT_VERSION=3.11 /bin/sh -c set -x && apk update -f && apk upgrade && apk --no-cache add -f bash coreutils git curl wget tzdata perl openssl nodejs jq openssh procps netcat-openbsd unzip npm && if [ "$TARGETARCH" = amd64 ]; then cp /tmp/node-runtime-amd64 /usr/local/bin/node; ln -sf /usr/local/bin/node /usr/bin/node; fi && node --version | grep -E '^v24\.' && rm -rf /var/cache/apk/* && apk update && ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime && echo "Asia/Shanghai" > /etc/timezone && git config --global user.email "qinglong@users.noreply.github.com" && git config --global user.name "qinglong" && git config --global http.postBuffer 524288000 && rm -rf /root/.cache && ulimit -c 0 # buildkit
2026-10-28 18:24:35 UTC (buildkit.dockerfile.v0)ARG SOURCE_COMMIT=6e26899a235a955713edfb490f6ae538d0baf612
2026-10-28 18:24:35 UTC (buildkit.dockerfile.v0)LABEL org.opencontainers.image.revision=6e26899a235a955713edfb490f6ae538d0baf612
2026-10-28 19:05:37 UTC (buildkit.dockerfile.v0)RUN |7 TARGETARCH=arm TARGETVARIANT=v7 QL_MAINTAINER=whyour QL_URL=https://github.com/whyour/qinglong.git QL_BRANCH=master PYTHON_SHORT_VERSION=3.11 SOURCE_COMMIT=6e26899a235a955713edfb490f6ae538d0baf612 /bin/sh -c git clone --depth=1 -b ${QL_BRANCH} ${QL_URL} ${QL_DIR} && cd ${QL_DIR} && if [ -n "${SOURCE_COMMIT}" ]; then git fetch --depth=1 origin "${SOURCE_COMMIT}" && git reset --hard FETCH_HEAD; fi && cp -f .env.example .env && chmod 777 ${QL_DIR}/shell/*.sh && chmod 777 ${QL_DIR}/docker/*.sh # buildkit
2026-10-28 19:05:38 UTC (buildkit.dockerfile.v0)COPY static/ /ql/static/ # buildkit
2026-10-28 19:05:39 UTC (buildkit.dockerfile.v0)COPY docker/verify-build.cjs docker/build-manifest.cjs /tmp/ # buildkit
2026-10-28 19:05:45 UTC (buildkit.dockerfile.v0)COPY /tmp/build/pnpm-lock.yaml /tmp/dependency-lock.yaml # buildkit
2026-10-28 19:06:23 UTC (buildkit.dockerfile.v0)RUN |7 TARGETARCH=arm TARGETVARIANT=v7 QL_MAINTAINER=whyour QL_URL=https://github.com/whyour/qinglong.git QL_BRANCH=master PYTHON_SHORT_VERSION=3.11 SOURCE_COMMIT=6e26899a235a955713edfb490f6ae538d0baf612 /bin/sh -c cd ${QL_DIR} && node /tmp/verify-build.cjs /tmp/dependency-lock.yaml # buildkit
2026-10-28 19:08:23 UTC (buildkit.dockerfile.v0)RUN |7 TARGETARCH=arm TARGETVARIANT=v7 QL_MAINTAINER=whyour QL_URL=https://github.com/whyour/qinglong.git QL_BRANCH=master PYTHON_SHORT_VERSION=3.11 SOURCE_COMMIT=6e26899a235a955713edfb490f6ae538d0baf612 /bin/sh -c if [ "$TARGETARCH" = arm ] && [ "${TARGETVARIANT:-}" = v6 ]; then QEMU_CPU=arm1176 node --jitless ${QL_DIR}/shell/node-runtime-probe.cjs; else node ${QL_DIR}/shell/node-runtime-probe.cjs; fi # buildkit
2026-10-28 19:08:23 UTC (buildkit.dockerfile.v0)ENV PNPM_HOME=/ql/data/dep_cache/node PYTHON_HOME=/ql/data/dep_cache/python3 PYTHONUSERBASE=/ql/data/dep_cache/python3 HOME=/root
2026-10-28 19:08:23 UTC (buildkit.dockerfile.v0)ENV PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/ql/data/dep_cache/node:/ql/data/dep_cache/python3/bin:/root/bin NODE_PATH=/usr/local/bin:/usr/local/lib/node_modules PIP_CACHE_DIR=/ql/data/dep_cache/python3/pip PYTHONPATH=/ql/data/dep_cache/python3:/ql/data/dep_cache/python3/lib/python3.11:/ql/data/dep_cache/python3/lib/python3.11/site-packages
2026-10-28 19:08:48 UTC (buildkit.dockerfile.v0)RUN |7 TARGETARCH=arm TARGETVARIANT=v7 QL_MAINTAINER=whyour QL_URL=https://github.com/whyour/qinglong.git QL_BRANCH=master PYTHON_SHORT_VERSION=3.11 SOURCE_COMMIT=6e26899a235a955713edfb490f6ae538d0baf612 /bin/sh -c pip3 install --prefix ${PYTHON_HOME} requests # buildkit
2026-10-28 19:08:51 UTC (buildkit.dockerfile.v0)COPY /tmp/build/node_modules/. /ql/node_modules/ # buildkit
2026-10-28 19:08:51 UTC (buildkit.dockerfile.v0)RUN |7 TARGETARCH=arm TARGETVARIANT=v7 QL_MAINTAINER=whyour QL_URL=https://github.com/whyour/qinglong.git QL_BRANCH=master PYTHON_SHORT_VERSION=3.11 SOURCE_COMMIT=6e26899a235a955713edfb490f6ae538d0baf612 /bin/sh -c ln -sf ${QL_DIR}/shell/task.sh /usr/local/bin/task && ln -sf ${QL_DIR}/shell/update.sh /usr/local/bin/ql && chmod +x /usr/local/bin/task /usr/local/bin/ql # buildkit
2026-10-28 19:08:51 UTC (buildkit.dockerfile.v0)WORKDIR /ql
2026-10-28 19:08:51 UTC (buildkit.dockerfile.v0)HEALTHCHECK {Test:[CMD-SHELL curl -sf --noproxy '*' http://localhost:${QlPort:-5700}/api/health || exit 1] Interval:5s Timeout:2s StartPeriod:0s StartInterval:0s Retries:20}
2026-10-28 19:08:51 UTC (buildkit.dockerfile.v0)ENTRYPOINT ["./docker/docker-entrypoint.sh"]
2026-10-28 19:07:50 UTC
130 MB
A035C8C19219BA821ECEA86B64E628F8D684696D
HOME/root
LANGC.UTF-8
NODE_PATH/usr/local/bin:/usr/local/lib/node_modules
PATH/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/ql/data/dep_cache/node:/ql/data/dep_cache/python3/bin:/root/bin
PIP_CACHE_DIR/ql/data/dep_cache/python3/pip
PNPM_HOME/ql/data/dep_cache/node
PS1\u@\h:\w $
PYTHONPATH/ql/data/dep_cache/python3:/ql/data/dep_cache/python3/lib/python3.11:/ql/data/dep_cache/python3/lib/python3.11/site-packages
PYTHONUSERBASE/ql/data/dep_cache/python3
PYTHON_HOME/ql/data/dep_cache/python3
PYTHON_SHA2569120e0a653868f6e3698d36cdd99e5a58903ec9469e448f21d98f7b16d8fa290
PYTHON_VERSION3.11.18
QL_BRANCHmaster
QL_CONTAINERtrue
QL_DIR/ql
SHELL/bin/bash
[#000] sha256:d3531b7a4f217bdc3426c57bcff84c170f086f456a39689d4a615c6d026c4be0 - 3.07% (4 MB)
[#001] sha256:92deaa600c0fcf2b86f450cbe1b4f1b6c27654336eb15e1adcfb0521477e1c4b - 0.3% (406 KB)
[#002] sha256:74bfc37d113b4aed3f1d0d4df073e00a0c90dd921f69ea71a77625eb1bd509e6 - 11.96% (15.6 MB)
[#003] sha256:a68beb5da2c97440847c7fb6007b0bb01c78649699f43694eeb6691d57650362 - 0.0% (249 Bytes)
[#004] sha256:10b9a1050a35d623cb25353dd608a0a6d0b6db87718ce472e559e1a4983b4376 - 7.8% (10.1 MB)
[#005] sha256:163a9756bd7435aa8d712f26cc4dba6e634ad90cf9d15d9ecaf2c87563a6cd6f - 0.0% (473 Bytes)
[#006] sha256:539188fdf6a57e2790d7697403b249e4c3f083cab9038352b1bb8d8ce689ea5b - 37.07% (48.2 MB)
[#007] sha256:d7a752c6b387ba912a6804fd098fa406e67dd6fa4ed5ef930cbe015460735e03 - 2.13% (2.77 MB)
[#008] sha256:c7f602c6bfe665ee60b7ea55c1a79d9dd5c6bdd664241b8c71301f7b3aeaf757 - 9.24% (12 MB)
[#009] sha256:14a3b95b8f3a4d11830487ae88444a35f58cbae3b445f9c1e4d6d9964ee39dd7 - 0.0% (1.15 KB)
[#010] sha256:590ddf1399da9f00fe3ded96f01f670695d81281fb2dce2002e79f4832563e53 - 0.14% (181 KB)
[#011] sha256:4f4fb700ef54461cfa02571ae0db9a0dc1e0cdb5577484a6d75e68dc38e8acc1 - 0.0% (32 Bytes)
[#012] sha256:4f4fb700ef54461cfa02571ae0db9a0dc1e0cdb5577484a6d75e68dc38e8acc1 - 0.0% (32 Bytes)
[#013] sha256:3b7ab259ec7c3af43fe2b49c942cdb7bdc388e183eb3e79120ca70f5cb601ab4 - 4.64% (6.03 MB)
[#014] sha256:146e40737dc4bc562973a52929911a48fa0482424d923d1ae7c5b6835033d062 - 23.65% (30.8 MB)
[#015] sha256:d116200d5340daabc6644cd0dca7f3ff6ea36c759e58df66629f4c6ced5ae9b5 - 0.0% (202 Bytes)
[#016] sha256:4f4fb700ef54461cfa02571ae0db9a0dc1e0cdb5577484a6d75e68dc38e8acc1 - 0.0% (32 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-26 22:56:53 UTC (buildkit.dockerfile.v0)ENV PATH=/usr/local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
2026-10-26 22:56:53 UTC (buildkit.dockerfile.v0)ENV LANG=C.UTF-8
2026-10-26 22:56:53 UTC (buildkit.dockerfile.v0)RUN /bin/sh -c set -eux; apk add --no-cache ca-certificates tzdata ; # buildkit
2026-10-26 22:56:53 UTC (buildkit.dockerfile.v0)ENV GPG_KEY=A035C8C19219BA821ECEA86B64E628F8D684696D
2026-10-26 22:56:53 UTC (buildkit.dockerfile.v0)ENV PYTHON_VERSION=3.11.18
2026-10-26 22:56:53 UTC (buildkit.dockerfile.v0)ENV PYTHON_SHA256=9120e0a653868f6e3698d36cdd99e5a58903ec9469e448f21d98f7b16d8fa290
2026-10-26 23:03:27 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 ; 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-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"; 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 install --disable-pip-version-check --no-cache-dir --no-compile 'setuptools==79.0.1' 'wheel==0.46.3' ; pip3 --version # buildkit
2026-10-26 23:03:27 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-26 23:03:27 UTC (buildkit.dockerfile.v0)CMD ["python3"]
2026-10-28 18:24:16 UTC (buildkit.dockerfile.v0)ARG TARGETARCH=arm64
2026-10-28 18:24:16 UTC (buildkit.dockerfile.v0)ARG TARGETVARIANT=
2026-10-28 18:24:16 UTC (buildkit.dockerfile.v0)ARG QL_MAINTAINER=whyour
2026-10-28 18:24:16 UTC (buildkit.dockerfile.v0)LABEL maintainer=whyour
2026-10-28 18:24:16 UTC (buildkit.dockerfile.v0)ARG QL_URL=https://github.com/whyour/qinglong.git
2026-10-28 18:24:16 UTC (buildkit.dockerfile.v0)ARG QL_BRANCH=master
2026-10-28 18:24:16 UTC (buildkit.dockerfile.v0)ARG PYTHON_SHORT_VERSION=3.11
2026-10-28 18:24:16 UTC (buildkit.dockerfile.v0)ENV QL_DIR=/ql QL_BRANCH=master QL_CONTAINER=true LANG=C.UTF-8 SHELL=/bin/bash PS1=\u@\h:\w $
2026-10-28 18:24:16 UTC (buildkit.dockerfile.v0)VOLUME [/ql/data]
2026-10-28 18:24:16 UTC (buildkit.dockerfile.v0)EXPOSE [5700/tcp]
2026-10-28 18:24:16 UTC (buildkit.dockerfile.v0)COPY /opt/node-global/lib/node_modules/. /usr/local/lib/node_modules/ # buildkit
2026-10-28 18:24:17 UTC (buildkit.dockerfile.v0)COPY /opt/node-global/bin/. /usr/local/bin/ # buildkit
2026-10-28 18:24:35 UTC (buildkit.dockerfile.v0)RUN |6 TARGETARCH=arm64 TARGETVARIANT= QL_MAINTAINER=whyour QL_URL=https://github.com/whyour/qinglong.git QL_BRANCH=master PYTHON_SHORT_VERSION=3.11 /bin/sh -c set -x && apk update -f && apk upgrade && apk --no-cache add -f bash coreutils git curl wget tzdata perl openssl nodejs jq openssh procps netcat-openbsd unzip npm && if [ "$TARGETARCH" = amd64 ]; then cp /tmp/node-runtime-amd64 /usr/local/bin/node; ln -sf /usr/local/bin/node /usr/bin/node; fi && node --version | grep -E '^v24\.' && rm -rf /var/cache/apk/* && apk update && ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime && echo "Asia/Shanghai" > /etc/timezone && git config --global user.email "qinglong@users.noreply.github.com" && git config --global user.name "qinglong" && git config --global http.postBuffer 524288000 && rm -rf /root/.cache && ulimit -c 0 # buildkit
2026-10-28 18:24:35 UTC (buildkit.dockerfile.v0)ARG SOURCE_COMMIT=6e26899a235a955713edfb490f6ae538d0baf612
2026-10-28 18:24:35 UTC (buildkit.dockerfile.v0)LABEL org.opencontainers.image.revision=6e26899a235a955713edfb490f6ae538d0baf612
2026-10-28 19:05:39 UTC (buildkit.dockerfile.v0)RUN |7 TARGETARCH=arm64 TARGETVARIANT= QL_MAINTAINER=whyour QL_URL=https://github.com/whyour/qinglong.git QL_BRANCH=master PYTHON_SHORT_VERSION=3.11 SOURCE_COMMIT=6e26899a235a955713edfb490f6ae538d0baf612 /bin/sh -c git clone --depth=1 -b ${QL_BRANCH} ${QL_URL} ${QL_DIR} && cd ${QL_DIR} && if [ -n "${SOURCE_COMMIT}" ]; then git fetch --depth=1 origin "${SOURCE_COMMIT}" && git reset --hard FETCH_HEAD; fi && cp -f .env.example .env && chmod 777 ${QL_DIR}/shell/*.sh && chmod 777 ${QL_DIR}/docker/*.sh # buildkit
2026-10-28 19:05:40 UTC (buildkit.dockerfile.v0)COPY static/ /ql/static/ # buildkit
2026-10-28 19:05:42 UTC (buildkit.dockerfile.v0)COPY docker/verify-build.cjs docker/build-manifest.cjs /tmp/ # buildkit
2026-10-28 19:05:50 UTC (buildkit.dockerfile.v0)COPY /tmp/build/pnpm-lock.yaml /tmp/dependency-lock.yaml # buildkit
2026-10-28 19:06:02 UTC (buildkit.dockerfile.v0)RUN |7 TARGETARCH=arm64 TARGETVARIANT= QL_MAINTAINER=whyour QL_URL=https://github.com/whyour/qinglong.git QL_BRANCH=master PYTHON_SHORT_VERSION=3.11 SOURCE_COMMIT=6e26899a235a955713edfb490f6ae538d0baf612 /bin/sh -c cd ${QL_DIR} && node /tmp/verify-build.cjs /tmp/dependency-lock.yaml # buildkit
2026-10-28 19:06:42 UTC (buildkit.dockerfile.v0)RUN |7 TARGETARCH=arm64 TARGETVARIANT= QL_MAINTAINER=whyour QL_URL=https://github.com/whyour/qinglong.git QL_BRANCH=master PYTHON_SHORT_VERSION=3.11 SOURCE_COMMIT=6e26899a235a955713edfb490f6ae538d0baf612 /bin/sh -c if [ "$TARGETARCH" = arm ] && [ "${TARGETVARIANT:-}" = v6 ]; then QEMU_CPU=arm1176 node --jitless ${QL_DIR}/shell/node-runtime-probe.cjs; else node ${QL_DIR}/shell/node-runtime-probe.cjs; fi # buildkit
2026-10-28 19:06:42 UTC (buildkit.dockerfile.v0)ENV PNPM_HOME=/ql/data/dep_cache/node PYTHON_HOME=/ql/data/dep_cache/python3 PYTHONUSERBASE=/ql/data/dep_cache/python3 HOME=/root
2026-10-28 19:06:42 UTC (buildkit.dockerfile.v0)ENV PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/ql/data/dep_cache/node:/ql/data/dep_cache/python3/bin:/root/bin NODE_PATH=/usr/local/bin:/usr/local/lib/node_modules PIP_CACHE_DIR=/ql/data/dep_cache/python3/pip PYTHONPATH=/ql/data/dep_cache/python3:/ql/data/dep_cache/python3/lib/python3.11:/ql/data/dep_cache/python3/lib/python3.11/site-packages
2026-10-28 19:07:43 UTC (buildkit.dockerfile.v0)RUN |7 TARGETARCH=arm64 TARGETVARIANT= QL_MAINTAINER=whyour QL_URL=https://github.com/whyour/qinglong.git QL_BRANCH=master PYTHON_SHORT_VERSION=3.11 SOURCE_COMMIT=6e26899a235a955713edfb490f6ae538d0baf612 /bin/sh -c pip3 install --prefix ${PYTHON_HOME} requests # buildkit
2026-10-28 19:07:49 UTC (buildkit.dockerfile.v0)COPY /tmp/build/node_modules/. /ql/node_modules/ # buildkit
2026-10-28 19:07:50 UTC (buildkit.dockerfile.v0)RUN |7 TARGETARCH=arm64 TARGETVARIANT= QL_MAINTAINER=whyour QL_URL=https://github.com/whyour/qinglong.git QL_BRANCH=master PYTHON_SHORT_VERSION=3.11 SOURCE_COMMIT=6e26899a235a955713edfb490f6ae538d0baf612 /bin/sh -c ln -sf ${QL_DIR}/shell/task.sh /usr/local/bin/task && ln -sf ${QL_DIR}/shell/update.sh /usr/local/bin/ql && chmod +x /usr/local/bin/task /usr/local/bin/ql # buildkit
2026-10-28 19:07:50 UTC (buildkit.dockerfile.v0)WORKDIR /ql
2026-10-28 19:07:50 UTC (buildkit.dockerfile.v0)HEALTHCHECK {Test:[CMD-SHELL curl -sf --noproxy '*' http://localhost:${QlPort:-5700}/api/health || exit 1] Interval:5s Timeout:2s StartPeriod:0s StartInterval:0s Retries:20}
2026-10-28 19:07:50 UTC (buildkit.dockerfile.v0)ENTRYPOINT ["./docker/docker-entrypoint.sh"]
2026-10-28 19:07:38 UTC
133 MB
A035C8C19219BA821ECEA86B64E628F8D684696D
HOME/root
LANGC.UTF-8
NODE_PATH/usr/local/bin:/usr/local/lib/node_modules
PATH/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/ql/data/dep_cache/node:/ql/data/dep_cache/python3/bin:/root/bin
PIP_CACHE_DIR/ql/data/dep_cache/python3/pip
PNPM_HOME/ql/data/dep_cache/node
PS1\u@\h:\w $
PYTHONPATH/ql/data/dep_cache/python3:/ql/data/dep_cache/python3/lib/python3.11:/ql/data/dep_cache/python3/lib/python3.11/site-packages
PYTHONUSERBASE/ql/data/dep_cache/python3
PYTHON_HOME/ql/data/dep_cache/python3
PYTHON_SHA2569120e0a653868f6e3698d36cdd99e5a58903ec9469e448f21d98f7b16d8fa290
PYTHON_VERSION3.11.18
QL_BRANCHmaster
QL_CONTAINERtrue
QL_DIR/ql
SHELL/bin/bash
[#000] sha256:728471849cc01302688ff7a09ad468af8cc8bc8a93620b78513c28269284715c - 2.74% (3.64 MB)
[#001] sha256:70a68b344c931f49bdd195295f5bda2592b5eebd0b64cd50f58b1c2c73f4d6a8 - 0.3% (406 KB)
[#002] sha256:d5f399ce176d25da85ded1edddd03bf17be08ab2011cdfd7dfe30e29a400c3a7 - 12.17% (16.2 MB)
[#003] sha256:107e3318c5bfba2b3817ea4bed47c869de889fb89fd7893eb5caaa517bee96a5 - 0.0% (251 Bytes)
[#004] sha256:ba3f05913dfba854eea96a22ddce917690b69e23a409892dd2449a58dab22811 - 7.64% (10.1 MB)
[#005] sha256:1a2568a6e475382f48362eeefc4165d4c92d8f728bd4621b7c44faffffd7c6b1 - 0.0% (471 Bytes)
[#006] sha256:38ac1f7953db17052854ea6db9eb18635d636bfc5480f5240c67e101b567b26d - 37.97% (50.4 MB)
[#007] sha256:7b44035d3e0af3cb281c41a2f856d7402ca831c392d367c6e9bc49244853a643 - 2.09% (2.77 MB)
[#008] sha256:c7f602c6bfe665ee60b7ea55c1a79d9dd5c6bdd664241b8c71301f7b3aeaf757 - 9.05% (12 MB)
[#009] sha256:cfc195947cb8ec3ad8e78cb8b0a766a107aa9fe81524c14485e8fd44382b38cd - 0.0% (1.15 KB)
[#010] sha256:bd772fa2f48131fea34257bd67ff019c795663176037576cd306471a1b885915 - 0.13% (181 KB)
[#011] sha256:4f4fb700ef54461cfa02571ae0db9a0dc1e0cdb5577484a6d75e68dc38e8acc1 - 0.0% (32 Bytes)
[#012] sha256:4f4fb700ef54461cfa02571ae0db9a0dc1e0cdb5577484a6d75e68dc38e8acc1 - 0.0% (32 Bytes)
[#013] sha256:dad8d1658110361ff0bd96aea52727a3ff3050ddc96bb43006e49809247ed48c - 4.59% (6.09 MB)
[#014] sha256:dc67ec5c17920cb994d4926103be2cc33e579d06791382e84b5961831934278b - 23.31% (30.9 MB)
[#015] sha256:a78aa56336635935ba10df7b0140dc98aa11012bd9a85d5e6102cdf528ac2c1a - 0.0% (198 Bytes)
[#016] sha256:4f4fb700ef54461cfa02571ae0db9a0dc1e0cdb5577484a6d75e68dc38e8acc1 - 0.0% (32 Bytes)
ADD alpine-minirootfs-3.24.3-ppc64le.tar.gz / # buildkit
2026-10-22 02:45:14 UTC (buildkit.dockerfile.v0)CMD ["/bin/sh"]
2026-10-22 14:19:32 UTC (buildkit.dockerfile.v0)ENV PATH=/usr/local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
2026-10-22 14:19:32 UTC (buildkit.dockerfile.v0)ENV LANG=C.UTF-8
2026-10-22 14:19:32 UTC (buildkit.dockerfile.v0)RUN /bin/sh -c set -eux; apk add --no-cache ca-certificates tzdata ; # buildkit
2026-10-22 14:19:32 UTC (buildkit.dockerfile.v0)ENV GPG_KEY=A035C8C19219BA821ECEA86B64E628F8D684696D
2026-10-22 14:19:32 UTC (buildkit.dockerfile.v0)ENV PYTHON_VERSION=3.11.18
2026-10-22 14:19:32 UTC (buildkit.dockerfile.v0)ENV PYTHON_SHA256=9120e0a653868f6e3698d36cdd99e5a58903ec9469e448f21d98f7b16d8fa290
2026-10-27 04:52:15 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 ; 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-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"; 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 install --disable-pip-version-check --no-cache-dir --no-compile 'setuptools==79.0.1' 'wheel==0.46.3' ; pip3 --version # buildkit
2026-10-27 04:52:15 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-27 04:52:15 UTC (buildkit.dockerfile.v0)CMD ["python3"]
2026-10-28 18:24:16 UTC (buildkit.dockerfile.v0)ARG TARGETARCH=ppc64le
2026-10-28 18:24:16 UTC (buildkit.dockerfile.v0)ARG TARGETVARIANT=
2026-10-28 18:24:16 UTC (buildkit.dockerfile.v0)ARG QL_MAINTAINER=whyour
2026-10-28 18:24:16 UTC (buildkit.dockerfile.v0)LABEL maintainer=whyour
2026-10-28 18:24:16 UTC (buildkit.dockerfile.v0)ARG QL_URL=https://github.com/whyour/qinglong.git
2026-10-28 18:24:16 UTC (buildkit.dockerfile.v0)ARG QL_BRANCH=master
2026-10-28 18:24:16 UTC (buildkit.dockerfile.v0)ARG PYTHON_SHORT_VERSION=3.11
2026-10-28 18:24:16 UTC (buildkit.dockerfile.v0)ENV QL_DIR=/ql QL_BRANCH=master QL_CONTAINER=true LANG=C.UTF-8 SHELL=/bin/bash PS1=\u@\h:\w $
2026-10-28 18:24:16 UTC (buildkit.dockerfile.v0)VOLUME [/ql/data]
2026-10-28 18:24:16 UTC (buildkit.dockerfile.v0)EXPOSE [5700/tcp]
2026-10-28 18:24:16 UTC (buildkit.dockerfile.v0)COPY /opt/node-global/lib/node_modules/. /usr/local/lib/node_modules/ # buildkit
2026-10-28 18:24:17 UTC (buildkit.dockerfile.v0)COPY /opt/node-global/bin/. /usr/local/bin/ # buildkit
2026-10-28 18:24:38 UTC (buildkit.dockerfile.v0)RUN |6 TARGETARCH=ppc64le TARGETVARIANT= QL_MAINTAINER=whyour QL_URL=https://github.com/whyour/qinglong.git QL_BRANCH=master PYTHON_SHORT_VERSION=3.11 /bin/sh -c set -x && apk update -f && apk upgrade && apk --no-cache add -f bash coreutils git curl wget tzdata perl openssl nodejs jq openssh procps netcat-openbsd unzip npm && if [ "$TARGETARCH" = amd64 ]; then cp /tmp/node-runtime-amd64 /usr/local/bin/node; ln -sf /usr/local/bin/node /usr/bin/node; fi && node --version | grep -E '^v24\.' && rm -rf /var/cache/apk/* && apk update && ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime && echo "Asia/Shanghai" > /etc/timezone && git config --global user.email "qinglong@users.noreply.github.com" && git config --global user.name "qinglong" && git config --global http.postBuffer 524288000 && rm -rf /root/.cache && ulimit -c 0 # buildkit
2026-10-28 18:24:38 UTC (buildkit.dockerfile.v0)ARG SOURCE_COMMIT=6e26899a235a955713edfb490f6ae538d0baf612
2026-10-28 18:24:38 UTC (buildkit.dockerfile.v0)LABEL org.opencontainers.image.revision=6e26899a235a955713edfb490f6ae538d0baf612
2026-10-28 19:05:39 UTC (buildkit.dockerfile.v0)RUN |7 TARGETARCH=ppc64le TARGETVARIANT= QL_MAINTAINER=whyour QL_URL=https://github.com/whyour/qinglong.git QL_BRANCH=master PYTHON_SHORT_VERSION=3.11 SOURCE_COMMIT=6e26899a235a955713edfb490f6ae538d0baf612 /bin/sh -c git clone --depth=1 -b ${QL_BRANCH} ${QL_URL} ${QL_DIR} && cd ${QL_DIR} && if [ -n "${SOURCE_COMMIT}" ]; then git fetch --depth=1 origin "${SOURCE_COMMIT}" && git reset --hard FETCH_HEAD; fi && cp -f .env.example .env && chmod 777 ${QL_DIR}/shell/*.sh && chmod 777 ${QL_DIR}/docker/*.sh # buildkit
2026-10-28 19:05:39 UTC (buildkit.dockerfile.v0)COPY static/ /ql/static/ # buildkit
2026-10-28 19:05:40 UTC (buildkit.dockerfile.v0)COPY docker/verify-build.cjs docker/build-manifest.cjs /tmp/ # buildkit
2026-10-28 19:05:54 UTC (buildkit.dockerfile.v0)COPY /tmp/build/pnpm-lock.yaml /tmp/dependency-lock.yaml # buildkit
2026-10-28 19:06:06 UTC (buildkit.dockerfile.v0)RUN |7 TARGETARCH=ppc64le TARGETVARIANT= QL_MAINTAINER=whyour QL_URL=https://github.com/whyour/qinglong.git QL_BRANCH=master PYTHON_SHORT_VERSION=3.11 SOURCE_COMMIT=6e26899a235a955713edfb490f6ae538d0baf612 /bin/sh -c cd ${QL_DIR} && node /tmp/verify-build.cjs /tmp/dependency-lock.yaml # buildkit
2026-10-28 19:06:43 UTC (buildkit.dockerfile.v0)RUN |7 TARGETARCH=ppc64le TARGETVARIANT= QL_MAINTAINER=whyour QL_URL=https://github.com/whyour/qinglong.git QL_BRANCH=master PYTHON_SHORT_VERSION=3.11 SOURCE_COMMIT=6e26899a235a955713edfb490f6ae538d0baf612 /bin/sh -c if [ "$TARGETARCH" = arm ] && [ "${TARGETVARIANT:-}" = v6 ]; then QEMU_CPU=arm1176 node --jitless ${QL_DIR}/shell/node-runtime-probe.cjs; else node ${QL_DIR}/shell/node-runtime-probe.cjs; fi # buildkit
2026-10-28 19:06:43 UTC (buildkit.dockerfile.v0)ENV PNPM_HOME=/ql/data/dep_cache/node PYTHON_HOME=/ql/data/dep_cache/python3 PYTHONUSERBASE=/ql/data/dep_cache/python3 HOME=/root
2026-10-28 19:06:43 UTC (buildkit.dockerfile.v0)ENV PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/ql/data/dep_cache/node:/ql/data/dep_cache/python3/bin:/root/bin NODE_PATH=/usr/local/bin:/usr/local/lib/node_modules PIP_CACHE_DIR=/ql/data/dep_cache/python3/pip PYTHONPATH=/ql/data/dep_cache/python3:/ql/data/dep_cache/python3/lib/python3.11:/ql/data/dep_cache/python3/lib/python3.11/site-packages
2026-10-28 19:07:33 UTC (buildkit.dockerfile.v0)RUN |7 TARGETARCH=ppc64le TARGETVARIANT= QL_MAINTAINER=whyour QL_URL=https://github.com/whyour/qinglong.git QL_BRANCH=master PYTHON_SHORT_VERSION=3.11 SOURCE_COMMIT=6e26899a235a955713edfb490f6ae538d0baf612 /bin/sh -c pip3 install --prefix ${PYTHON_HOME} requests # buildkit
2026-10-28 19:07:37 UTC (buildkit.dockerfile.v0)COPY /tmp/build/node_modules/. /ql/node_modules/ # buildkit
2026-10-28 19:07:38 UTC (buildkit.dockerfile.v0)RUN |7 TARGETARCH=ppc64le TARGETVARIANT= QL_MAINTAINER=whyour QL_URL=https://github.com/whyour/qinglong.git QL_BRANCH=master PYTHON_SHORT_VERSION=3.11 SOURCE_COMMIT=6e26899a235a955713edfb490f6ae538d0baf612 /bin/sh -c ln -sf ${QL_DIR}/shell/task.sh /usr/local/bin/task && ln -sf ${QL_DIR}/shell/update.sh /usr/local/bin/ql && chmod +x /usr/local/bin/task /usr/local/bin/ql # buildkit
2026-10-28 19:07:38 UTC (buildkit.dockerfile.v0)WORKDIR /ql
2026-10-28 19:07:38 UTC (buildkit.dockerfile.v0)HEALTHCHECK {Test:[CMD-SHELL curl -sf --noproxy '*' http://localhost:${QlPort:-5700}/api/health || exit 1] Interval:5s Timeout:2s StartPeriod:0s StartInterval:0s Retries:20}
2026-10-28 19:07:38 UTC (buildkit.dockerfile.v0)ENTRYPOINT ["./docker/docker-entrypoint.sh"]
2026-10-28 19:07:44 UTC
132 MB
A035C8C19219BA821ECEA86B64E628F8D684696D
HOME/root
LANGC.UTF-8
NODE_PATH/usr/local/bin:/usr/local/lib/node_modules
PATH/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/ql/data/dep_cache/node:/ql/data/dep_cache/python3/bin:/root/bin
PIP_CACHE_DIR/ql/data/dep_cache/python3/pip
PNPM_HOME/ql/data/dep_cache/node
PS1\u@\h:\w $
PYTHONPATH/ql/data/dep_cache/python3:/ql/data/dep_cache/python3/lib/python3.11:/ql/data/dep_cache/python3/lib/python3.11/site-packages
PYTHONUSERBASE/ql/data/dep_cache/python3
PYTHON_HOME/ql/data/dep_cache/python3
PYTHON_SHA2569120e0a653868f6e3698d36cdd99e5a58903ec9469e448f21d98f7b16d8fa290
PYTHON_VERSION3.11.18
QL_BRANCHmaster
QL_CONTAINERtrue
QL_DIR/ql
SHELL/bin/bash
[#000] sha256:2272b0c2085ed29d31c21595617f773cb42db2e52c3b366debca9d4689770412 - 2.68% (3.55 MB)
[#001] sha256:77c1bc473c6fa284c3e70053419acdf8029a009f56a88e8b627d81ffa71abdf9 - 0.3% (404 KB)
[#002] sha256:2e33052ad314785dbff9362b8df27759f838dcc356c24ccdfb2de3a4e8be85b3 - 11.95% (15.8 MB)
[#003] sha256:c55dfa414664d9e00ae17da5725a6b1408b53ca18f4196c65da8e51b44109a8c - 0.0% (250 Bytes)
[#004] sha256:9e4c780b0714db31112937e30f7337119f7c5ceb7e4402a9b8a774319d58a7ac - 7.67% (10.1 MB)
[#005] sha256:7152246348bbf027b66c8ba60fe1f10ade5cb4f311b5d1c33fb784089b224d4c - 0.0% (473 Bytes)
[#006] sha256:4113ac4a929b4f82fc3712569d5627d5e100b21f2951dec4e880da123ce4e9b5 - 38.17% (50.5 MB)
[#007] sha256:87e410ca8c27a9c6f5bfb760f3bcf072ba462e2af14aa1843402f7db0825dcd5 - 2.09% (2.77 MB)
[#008] sha256:c7f602c6bfe665ee60b7ea55c1a79d9dd5c6bdd664241b8c71301f7b3aeaf757 - 9.09% (12 MB)
[#009] sha256:cfc195947cb8ec3ad8e78cb8b0a766a107aa9fe81524c14485e8fd44382b38cd - 0.0% (1.15 KB)
[#010] sha256:590ddf1399da9f00fe3ded96f01f670695d81281fb2dce2002e79f4832563e53 - 0.13% (181 KB)
[#011] sha256:4f4fb700ef54461cfa02571ae0db9a0dc1e0cdb5577484a6d75e68dc38e8acc1 - 0.0% (32 Bytes)
[#012] sha256:4f4fb700ef54461cfa02571ae0db9a0dc1e0cdb5577484a6d75e68dc38e8acc1 - 0.0% (32 Bytes)
[#013] sha256:abbb7489d1f3da21fce4f56790909be86e85ed14c814d826dd6854078230e655 - 4.6% (6.08 MB)
[#014] sha256:874b1c6cbe7410cddd1ca49c2aeea8f656f00d1579f25fd96daf24801ba91bb5 - 23.31% (30.8 MB)
[#015] sha256:565b55245e99d5bb2ff56327640dc855419762fe8817a2ad74337ebf20a2cbd6 - 0.0% (200 Bytes)
[#016] sha256:4f4fb700ef54461cfa02571ae0db9a0dc1e0cdb5577484a6d75e68dc38e8acc1 - 0.0% (32 Bytes)
ADD alpine-minirootfs-3.24.3-s390x.tar.gz / # buildkit
2026-10-21 22:34:15 UTC (buildkit.dockerfile.v0)CMD ["/bin/sh"]
2026-10-21 23:54:33 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:54:33 UTC (buildkit.dockerfile.v0)ENV LANG=C.UTF-8
2026-10-21 23:54:33 UTC (buildkit.dockerfile.v0)RUN /bin/sh -c set -eux; apk add --no-cache ca-certificates tzdata ; # buildkit
2026-10-21 23:54:33 UTC (buildkit.dockerfile.v0)ENV GPG_KEY=A035C8C19219BA821ECEA86B64E628F8D684696D
2026-10-21 23:54:33 UTC (buildkit.dockerfile.v0)ENV PYTHON_VERSION=3.11.18
2026-10-21 23:54:33 UTC (buildkit.dockerfile.v0)ENV PYTHON_SHA256=9120e0a653868f6e3698d36cdd99e5a58903ec9469e448f21d98f7b16d8fa290
2026-10-26 23:29:17 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 ; 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-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"; 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 install --disable-pip-version-check --no-cache-dir --no-compile 'setuptools==79.0.1' 'wheel==0.46.3' ; pip3 --version # buildkit
2026-10-26 23:29:18 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-26 23:29:18 UTC (buildkit.dockerfile.v0)CMD ["python3"]
2026-10-28 18:24:18 UTC (buildkit.dockerfile.v0)ARG TARGETARCH=s390x
2026-10-28 18:24:18 UTC (buildkit.dockerfile.v0)ARG TARGETVARIANT=
2026-10-28 18:24:18 UTC (buildkit.dockerfile.v0)ARG QL_MAINTAINER=whyour
2026-10-28 18:24:18 UTC (buildkit.dockerfile.v0)LABEL maintainer=whyour
2026-10-28 18:24:18 UTC (buildkit.dockerfile.v0)ARG QL_URL=https://github.com/whyour/qinglong.git
2026-10-28 18:24:18 UTC (buildkit.dockerfile.v0)ARG QL_BRANCH=master
2026-10-28 18:24:18 UTC (buildkit.dockerfile.v0)ARG PYTHON_SHORT_VERSION=3.11
2026-10-28 18:24:18 UTC (buildkit.dockerfile.v0)ENV QL_DIR=/ql QL_BRANCH=master QL_CONTAINER=true LANG=C.UTF-8 SHELL=/bin/bash PS1=\u@\h:\w $
2026-10-28 18:24:18 UTC (buildkit.dockerfile.v0)VOLUME [/ql/data]
2026-10-28 18:24:18 UTC (buildkit.dockerfile.v0)EXPOSE [5700/tcp]
2026-10-28 18:24:18 UTC (buildkit.dockerfile.v0)COPY /opt/node-global/lib/node_modules/. /usr/local/lib/node_modules/ # buildkit
2026-10-28 18:24:18 UTC (buildkit.dockerfile.v0)COPY /opt/node-global/bin/. /usr/local/bin/ # buildkit
2026-10-28 18:24:57 UTC (buildkit.dockerfile.v0)RUN |6 TARGETARCH=s390x TARGETVARIANT= QL_MAINTAINER=whyour QL_URL=https://github.com/whyour/qinglong.git QL_BRANCH=master PYTHON_SHORT_VERSION=3.11 /bin/sh -c set -x && apk update -f && apk upgrade && apk --no-cache add -f bash coreutils git curl wget tzdata perl openssl nodejs jq openssh procps netcat-openbsd unzip npm && if [ "$TARGETARCH" = amd64 ]; then cp /tmp/node-runtime-amd64 /usr/local/bin/node; ln -sf /usr/local/bin/node /usr/bin/node; fi && node --version | grep -E '^v24\.' && rm -rf /var/cache/apk/* && apk update && ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime && echo "Asia/Shanghai" > /etc/timezone && git config --global user.email "qinglong@users.noreply.github.com" && git config --global user.name "qinglong" && git config --global http.postBuffer 524288000 && rm -rf /root/.cache && ulimit -c 0 # buildkit
2026-10-28 18:24:57 UTC (buildkit.dockerfile.v0)ARG SOURCE_COMMIT=6e26899a235a955713edfb490f6ae538d0baf612
2026-10-28 18:24:57 UTC (buildkit.dockerfile.v0)LABEL org.opencontainers.image.revision=6e26899a235a955713edfb490f6ae538d0baf612
2026-10-28 19:05:38 UTC (buildkit.dockerfile.v0)RUN |7 TARGETARCH=s390x TARGETVARIANT= QL_MAINTAINER=whyour QL_URL=https://github.com/whyour/qinglong.git QL_BRANCH=master PYTHON_SHORT_VERSION=3.11 SOURCE_COMMIT=6e26899a235a955713edfb490f6ae538d0baf612 /bin/sh -c git clone --depth=1 -b ${QL_BRANCH} ${QL_URL} ${QL_DIR} && cd ${QL_DIR} && if [ -n "${SOURCE_COMMIT}" ]; then git fetch --depth=1 origin "${SOURCE_COMMIT}" && git reset --hard FETCH_HEAD; fi && cp -f .env.example .env && chmod 777 ${QL_DIR}/shell/*.sh && chmod 777 ${QL_DIR}/docker/*.sh # buildkit
2026-10-28 19:05:39 UTC (buildkit.dockerfile.v0)COPY static/ /ql/static/ # buildkit
2026-10-28 19:05:40 UTC (buildkit.dockerfile.v0)COPY docker/verify-build.cjs docker/build-manifest.cjs /tmp/ # buildkit
2026-10-28 19:05:50 UTC (buildkit.dockerfile.v0)COPY /tmp/build/pnpm-lock.yaml /tmp/dependency-lock.yaml # buildkit
2026-10-28 19:05:59 UTC (buildkit.dockerfile.v0)RUN |7 TARGETARCH=s390x TARGETVARIANT= QL_MAINTAINER=whyour QL_URL=https://github.com/whyour/qinglong.git QL_BRANCH=master PYTHON_SHORT_VERSION=3.11 SOURCE_COMMIT=6e26899a235a955713edfb490f6ae538d0baf612 /bin/sh -c cd ${QL_DIR} && node /tmp/verify-build.cjs /tmp/dependency-lock.yaml # buildkit
2026-10-28 19:06:35 UTC (buildkit.dockerfile.v0)RUN |7 TARGETARCH=s390x TARGETVARIANT= QL_MAINTAINER=whyour QL_URL=https://github.com/whyour/qinglong.git QL_BRANCH=master PYTHON_SHORT_VERSION=3.11 SOURCE_COMMIT=6e26899a235a955713edfb490f6ae538d0baf612 /bin/sh -c if [ "$TARGETARCH" = arm ] && [ "${TARGETVARIANT:-}" = v6 ]; then QEMU_CPU=arm1176 node --jitless ${QL_DIR}/shell/node-runtime-probe.cjs; else node ${QL_DIR}/shell/node-runtime-probe.cjs; fi # buildkit
2026-10-28 19:06:35 UTC (buildkit.dockerfile.v0)ENV PNPM_HOME=/ql/data/dep_cache/node PYTHON_HOME=/ql/data/dep_cache/python3 PYTHONUSERBASE=/ql/data/dep_cache/python3 HOME=/root
2026-10-28 19:06:35 UTC (buildkit.dockerfile.v0)ENV PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/ql/data/dep_cache/node:/ql/data/dep_cache/python3/bin:/root/bin NODE_PATH=/usr/local/bin:/usr/local/lib/node_modules PIP_CACHE_DIR=/ql/data/dep_cache/python3/pip PYTHONPATH=/ql/data/dep_cache/python3:/ql/data/dep_cache/python3/lib/python3.11:/ql/data/dep_cache/python3/lib/python3.11/site-packages
2026-10-28 19:07:38 UTC (buildkit.dockerfile.v0)RUN |7 TARGETARCH=s390x TARGETVARIANT= QL_MAINTAINER=whyour QL_URL=https://github.com/whyour/qinglong.git QL_BRANCH=master PYTHON_SHORT_VERSION=3.11 SOURCE_COMMIT=6e26899a235a955713edfb490f6ae538d0baf612 /bin/sh -c pip3 install --prefix ${PYTHON_HOME} requests # buildkit
2026-10-28 19:07:43 UTC (buildkit.dockerfile.v0)COPY /tmp/build/node_modules/. /ql/node_modules/ # buildkit
2026-10-28 19:07:44 UTC (buildkit.dockerfile.v0)RUN |7 TARGETARCH=s390x TARGETVARIANT= QL_MAINTAINER=whyour QL_URL=https://github.com/whyour/qinglong.git QL_BRANCH=master PYTHON_SHORT_VERSION=3.11 SOURCE_COMMIT=6e26899a235a955713edfb490f6ae538d0baf612 /bin/sh -c ln -sf ${QL_DIR}/shell/task.sh /usr/local/bin/task && ln -sf ${QL_DIR}/shell/update.sh /usr/local/bin/ql && chmod +x /usr/local/bin/task /usr/local/bin/ql # buildkit
2026-10-28 19:07:44 UTC (buildkit.dockerfile.v0)WORKDIR /ql
2026-10-28 19:07:44 UTC (buildkit.dockerfile.v0)HEALTHCHECK {Test:[CMD-SHELL curl -sf --noproxy '*' http://localhost:${QlPort:-5700}/api/health || exit 1] Interval:5s Timeout:2s StartPeriod:0s StartInterval:0s Retries:20}
2026-10-28 19:07:44 UTC (buildkit.dockerfile.v0)ENTRYPOINT ["./docker/docker-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.