{"architecture":"amd64","config":{"Env":["PATH=/opt/venv/bin:/usr/local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin","LANG=C.UTF-8","GPG_KEY=A035C8C19219BA821ECEA86B64E628F8D684696D","PYTHON_VERSION=3.11.15","PYTHON_SHA256=272179ddd9a2e41a0fc8e42e33dfbdca0b3711aa5abf372d3f2d51543d09b625","PYTHONDONTWRITEBYTECODE=1","PYTHONUNBUFFERED=1","UV_LINK_MODE=copy","UV_PROJECT_ENVIRONMENT=/opt/venv"],"Cmd":["python","-m","govcrawler","schedule"],"WorkingDir":"/app","Labels":{"com.docker.compose.project":"docker","com.docker.compose.service":"scheduler","com.docker.compose.version":"2.20.2"},"ArgsEscaped":true,"OnBuild":null},"created":"2026-05-13T12:09:28.018091463+08:00","history":[{"created":"2026-05-05T00:00:00Z","created_by":"# debian.sh --arch 'amd64' out/ 'trixie' '@1777939200'","comment":"debuerreotype 0.17"},{"created":"2026-05-08T20:01:41.95510187Z","created_by":"ENV PATH=/usr/local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin","comment":"buildkit.dockerfile.v0","empty_layer":true},{"created":"2026-05-08T20:01:41.95510187Z","created_by":"ENV LANG=C.UTF-8","comment":"buildkit.dockerfile.v0","empty_layer":true},{"created":"2026-05-08T20:01:41.95510187Z","created_by":"RUN /bin/sh -c set -eux; \tapt-get update; \tapt-get install -y --no-install-recommends \t\tca-certificates \t\tnetbase \t\ttzdata \t; \tapt-get dist-clean # buildkit","comment":"buildkit.dockerfile.v0"},{"created":"2026-05-08T20:01:41.95510187Z","created_by":"ENV GPG_KEY=A035C8C19219BA821ECEA86B64E628F8D684696D","comment":"buildkit.dockerfile.v0","empty_layer":true},{"created":"2026-05-08T20:01:41.95510187Z","created_by":"ENV PYTHON_VERSION=3.11.15","comment":"buildkit.dockerfile.v0","empty_layer":true},{"created":"2026-05-08T20:01:41.95510187Z","created_by":"ENV PYTHON_SHA256=272179ddd9a2e41a0fc8e42e33dfbdca0b3711aa5abf372d3f2d51543d09b625","comment":"buildkit.dockerfile.v0","empty_layer":true},{"created":"2026-05-08T20:09:58.698817223Z","created_by":"RUN /bin/sh -c set -eux; \t\tsavedAptMark=\"$(apt-mark showmanual)\"; \tapt-get update; \tapt-get install -y --no-install-recommends \t\tdpkg-dev \t\tgcc \t\tgnupg \t\tlibbluetooth-dev \t\tlibbz2-dev \t\tlibc6-dev \t\tlibdb-dev \t\tlibffi-dev \t\tlibgdbm-dev \t\tliblzma-dev \t\tlibncursesw5-dev \t\tlibreadline-dev \t\tlibsqlite3-dev \t\tlibssl-dev \t\tmake \t\ttk-dev \t\tuuid-dev \t\twget \t\txz-utils \t\tzlib1g-dev \t; \t\twget -O python.tar.xz \"https://www.python.org/ftp/python/${PYTHON_VERSION%%[a-z]*}/Python-$PYTHON_VERSION.tar.xz\"; \techo \"$PYTHON_SHA256 *python.tar.xz\" | sha256sum -c -; \twget -O python.tar.xz.asc \"https://www.python.org/ftp/python/${PYTHON_VERSION%%[a-z]*}/Python-$PYTHON_VERSION.tar.xz.asc\"; \tGNUPGHOME=\"$(mktemp -d)\"; export GNUPGHOME; \tgpg --batch --keyserver hkps://keys.openpgp.org --recv-keys \"$GPG_KEY\"; \tgpg --batch --verify python.tar.xz.asc python.tar.xz; \tgpgconf --kill all; \trm -rf \"$GNUPGHOME\" python.tar.xz.asc; \tmkdir -p /usr/src/python; \ttar --extract --directory /usr/src/python --strip-components=1 --file python.tar.xz; \trm python.tar.xz; \t\tcd /usr/src/python; \tgnuArch=\"$(dpkg-architecture --query DEB_BUILD_GNU_TYPE)\"; \t./configure \t\t--build=\"$gnuArch\" \t\t--enable-loadable-sqlite-extensions \t\t--enable-optimizations \t\t--enable-option-checking=fatal \t\t--enable-shared \t\t$(test \"${gnuArch%%-*}\" != 'riscv64' \u0026\u0026 echo '--with-lto') \t\t--with-ensurepip \t; \tnproc=\"$(nproc)\"; \tEXTRA_CFLAGS=\"$(dpkg-buildflags --get CFLAGS)\"; \tLDFLAGS=\"$(dpkg-buildflags --get LDFLAGS)\"; \tLDFLAGS=\"${LDFLAGS:-} -Wl,--strip-all\"; \tmake -j \"$nproc\" \t\t\"EXTRA_CFLAGS=${EXTRA_CFLAGS:-}\" \t\t\"LDFLAGS=${LDFLAGS:-}\" \t; \trm python; \tmake -j \"$nproc\" \t\t\"EXTRA_CFLAGS=${EXTRA_CFLAGS:-}\" \t\t\"LDFLAGS=${LDFLAGS:-} -Wl,-rpath='\\$\\$ORIGIN/../lib'\" \t\tpython \t; \tmake install; \t\tcd /; \trm -rf /usr/src/python; \t\tfind /usr/local -depth \t\t\\( \t\t\t\\( -type d -a \\( -name test -o -name tests -o -name idle_test \\) \\) \t\t\t-o \\( -type f -a \\( -name '*.pyc' -o -name '*.pyo' -o -name 'libpython*.a' \\) \\) \t\t\\) -exec rm -rf '{}' + \t; \t\tldconfig; \t\tapt-mark auto '.*' \u003e /dev/null; \tapt-mark manual $savedAptMark; \tfind /usr/local -type f -executable -not \\( -name '*tkinter*' \\) -exec ldd '{}' ';' \t\t| awk '/=\u003e/ { so = $(NF-1); if (index(so, \"/usr/local/\") == 1) { next }; gsub(\"^/(usr/)?\", \"\", so); printf \"*%s\\n\", so }' \t\t| sort -u \t\t| xargs -rt dpkg-query --search \t\t| awk 'sub(\":$\", \"\", $1) { print $1 }' \t\t| sort -u \t\t| xargs -r apt-mark manual \t; \tapt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false; \tapt-get dist-clean; \t\texport PYTHONDONTWRITEBYTECODE=1; \tpython3 --version; \t\tpip3 install \t\t--disable-pip-version-check \t\t--no-cache-dir \t\t--no-compile \t\t'setuptools==79.0.1' \t\t'wheel\u003c0.46' \t; \tpip3 --version # buildkit","comment":"buildkit.dockerfile.v0"},{"created":"2026-05-08T20:09:58.829108366Z","created_by":"RUN /bin/sh -c set -eux; \tfor src in idle3 pip3 pydoc3 python3 python3-config; do \t\tdst=\"$(echo \"$src\" | tr -d 3)\"; \t\t[ -s \"/usr/local/bin/$src\" ]; \t\t[ ! -e \"/usr/local/bin/$dst\" ]; \t\tln -svT \"$src\" \"/usr/local/bin/$dst\"; \tdone # buildkit","comment":"buildkit.dockerfile.v0"},{"created":"2026-05-08T20:09:58.829108366Z","created_by":"CMD [\"python3\"]","comment":"buildkit.dockerfile.v0","empty_layer":true},{"created":"2026-05-09T14:05:52.045368207+08:00","created_by":"ENV PYTHONDONTWRITEBYTECODE=1 PYTHONUNBUFFERED=1 UV_LINK_MODE=copy UV_PROJECT_ENVIRONMENT=/opt/venv PATH=/opt/venv/bin:/usr/local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin","comment":"buildkit.dockerfile.v0","empty_layer":true},{"created":"2026-05-09T14:05:52.045368207+08:00","created_by":"RUN /bin/sh -c sed -i \"s|deb.debian.org|mirrors.aliyun.com|g; s|security.debian.org|mirrors.aliyun.com|g\" /etc/apt/sources.list.d/debian.sources \u0026\u0026 apt-get update \u0026\u0026 apt-get install -y --no-install-recommends       ca-certificates curl git libxml2 libxslt1.1 unzip       fonts-noto-cjk       libnss3 libatk1.0-0 libatk-bridge2.0-0 libcups2 libdrm2 libxkbcommon0       libxcomposite1 libxdamage1 libxrandr2 libgbm1 libpango-1.0-0 libcairo2       libasound2 libatspi2.0-0 libxfixes3 libxshmfence1     \u0026\u0026 rm -rf /var/lib/apt/lists/* # buildkit","comment":"buildkit.dockerfile.v0"},{"created":"2026-05-13T11:30:02.643899549+08:00","created_by":"COPY /uv /uvx /usr/local/bin/ # buildkit","comment":"buildkit.dockerfile.v0"},{"created":"2026-05-13T11:30:03.543838914+08:00","created_by":"WORKDIR /app","comment":"buildkit.dockerfile.v0"},{"created":"2026-05-13T11:30:04.937105339+08:00","created_by":"COPY pyproject.toml uv.lock ./ # buildkit","comment":"buildkit.dockerfile.v0"},{"created":"2026-05-13T11:30:35.518353235+08:00","created_by":"RUN /bin/sh -c uv sync --frozen --no-install-project # buildkit","comment":"buildkit.dockerfile.v0"},{"created":"2026-05-13T11:30:35.518353235+08:00","created_by":"ARG SKIP_CHROMIUM=0","comment":"buildkit.dockerfile.v0","empty_layer":true},{"created":"2026-05-13T11:30:35.518353235+08:00","created_by":"ARG PLAYWRIGHT_DOWNLOAD_HOST=https://cdn.npmmirror.com/binaries/playwright","comment":"buildkit.dockerfile.v0","empty_layer":true},{"created":"2026-05-13T11:30:37.119444907+08:00","created_by":"RUN |2 SKIP_CHROMIUM=1 PLAYWRIGHT_DOWNLOAD_HOST= /bin/sh -c if [ \"$SKIP_CHROMIUM\" = \"1\" ]; then       echo \"\u003e\u003e\u003e SKIP_CHROMIUM=1 — chromium install skipped (playwright strategy disabled)\";     else       export PLAYWRIGHT_DOWNLOAD_HOST=\"$PLAYWRIGHT_DOWNLOAD_HOST\" \u0026\u0026       (timeout 900 uv run patchright install chromium --with-deps         || timeout 900 uv run patchright install chromium         || echo \"\u003e\u003e\u003e chromium install FAILED — continuing without it; playwright-strategy sites will error at runtime\");     fi # buildkit","comment":"buildkit.dockerfile.v0"},{"created":"2026-05-13T12:09:21.006109385+08:00","created_by":"COPY . . # buildkit","comment":"buildkit.dockerfile.v0"},{"created":"2026-05-13T12:09:28.018091463+08:00","created_by":"RUN |2 SKIP_CHROMIUM=1 PLAYWRIGHT_DOWNLOAD_HOST= /bin/sh -c uv sync --frozen # buildkit","comment":"buildkit.dockerfile.v0"},{"created":"2026-05-13T12:09:28.018091463+08:00","created_by":"CMD [\"python\" \"-m\" \"govcrawler\" \"schedule\"]","comment":"buildkit.dockerfile.v0","empty_layer":true}],"os":"linux","rootfs":{"type":"layers","diff_ids":["sha256:79dd1f4c855cd061f687a994426634cf5f84c8ecdbc66c7a7d118e828dd93c99","sha256:2e53cb234c597e3f6a8f896df5efafd6ceca83645632661f2e32cd7144b43738","sha256:799edc77eb3d21542943122b97c5ba1e80c2a1eb3d222e23196717126398ef61","sha256:94e760ec30748f73d19bcb5d4da140b8dde956299eac18e3372d89236f56c995","sha256:1d0ad590f4d64ce862f14bb71029c0295d0a9ddbcdf727744244a4a43e91b90b","sha256:118e6088344a51c435859495ae88f5da726b0ce1d3b36a48d796de6d29b6e26d","sha256:c4feb167aafde43aa999c678bb39df037fe3b659a86c904a065c01586a1976a0","sha256:ca2840e49caa3c87ad197554bff5f6f9b690ed78ab842d1589a9d05d04217bdc","sha256:c3fc3af22a9d4872dc004fc21c0bdf78c9983951ccf908e9c524405bf748a8ca","sha256:6424ce1ad7389cb23f2d168d15ccb0615c0635ce5a8132fbad61d8419489d367","sha256:2b53dd133de5b996614b76daef264718b100c7c79f4e3a99d2b00a21f9556e81","sha256:02d38b55bab948b3ee65ee22ab4ce44fffeeebd2e501ee8c0a1a5ddd53410cf9"]}}