2026-03-29 14:44:35 UTC
1.3 GB
/usr/local
DEBIAN_FRONTENDnoninteractive
HOME/home/node
HOMEBREW_NO_AUTO_UPDATE1
HOMEBREW_NO_INSTALL_CLEANUP1
LANGen_US.UTF-8
LANGUAGEen_US:en
LC_ALLen_US.UTF-8
NODE_ENVproduction
NODE_PATH/usr/local/lib/node_modules
NODE_VERSION22.22.2
PATH/home/node/.linuxbrew/bin:/home/node/.linuxbrew/sbin:/usr/local/lib/node_modules/.bin:/usr/local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
TERMxterm-256color
YARN_VERSION1.22.22
[#000] sha256:6db0909c4473287ed4d1f950d26b8bc5b7b4206d365a0e7740cb89e46979153e - 2.03% (26.9 MB)
[#001] sha256:7723618b139f747dbb585f9a357b6f4bad37e18969badd36995d7295695d11dd - 0.0% (3.24 KB)
[#002] sha256:eb2c6bc01a10394071f6bf5c4b1f13f2fc01bf5e67699ebd9f6cad7c6614e316 - 3.58% (47.5 MB)
[#003] sha256:93f73fef6895aa5cfc0d4c21d29ab9f1a469fe36be478b68965c9a219cbcad96 - 0.12% (1.63 MB)
[#004] sha256:71ff01535b69cedc0a8573f143aa48be03c4d32a5070b443596441eef19fbe6d - 0.0% (447 Bytes)
[#005] sha256:b11286207430327378d9b0118560eaeb5e29b89c399caafd6ab84238916bdbf8 - 0.0% (93 Bytes)
[#006] sha256:e70f531b67b3fce35a58b4b5b237946f853e6bd27ad3b2ea1b8a6327870b1aa6 - 83.8% (1.09 GB)
[#007] sha256:0615f4e3720e3a49fb30f7cc9c3e22ef1680ac21388dbb8b8dda548300502ea4 - 0.0% (190 Bytes)
[#008] sha256:4f4fb700ef54461cfa02571ae0db9a0dc1e0cdb5577484a6d75e68dc38e8acc1 - 0.0% (32 Bytes)
[#009] sha256:70d5e2bb70674a935ae7bccb8eecb463f84b776508ff8143aaf9e836ce31e204 - 0.56% (7.39 MB)
[#010] sha256:647ec85af5f8f07c4def6b761c6b8c7db00f7e7ac7b3a9286a2cac2e98d29813 - 9.91% (132 MB)
[#011] sha256:520074a1a9f5a4e9709a11c4570ac7b0070e958b975f84981fe35a766995ba4f - 0.0% (19.9 KB)
[#012] sha256:8e9913e58fbd501db0a28d7512af5da99816f9560c43225295add7d699bece63 - 0.0% (19.9 KB)
[#013] sha256:4f4fb700ef54461cfa02571ae0db9a0dc1e0cdb5577484a6d75e68dc38e8acc1 - 0.0% (32 Bytes)
# debian.sh --arch 'amd64' out/ 'bookworm' '@1773619200'
2026-03-25 13:30:00 UTC (buildkit.dockerfile.v0)RUN /bin/sh -c groupadd --gid 1000 node && useradd --uid 1000 --gid node --shell /bin/bash --create-home node # buildkit
2026-03-25 13:31:12 UTC (buildkit.dockerfile.v0)ENV NODE_VERSION=22.22.2
2026-03-25 13:31:12 UTC (buildkit.dockerfile.v0)RUN /bin/sh -c ARCH= OPENSSL_ARCH= && dpkgArch="$(dpkg --print-architecture)" && case "${dpkgArch##*-}" in amd64) ARCH='x64' OPENSSL_ARCH='linux-x86_64';; ppc64el) ARCH='ppc64le' OPENSSL_ARCH='linux-ppc64le';; s390x) ARCH='s390x' OPENSSL_ARCH='linux*-s390x';; arm64) ARCH='arm64' OPENSSL_ARCH='linux-aarch64';; armhf) ARCH='armv7l' OPENSSL_ARCH='linux-armv4';; i386) ARCH='x86' OPENSSL_ARCH='linux-elf';; *) echo "unsupported architecture"; exit 1 ;; esac && set -ex && apt-get update && apt-get install -y ca-certificates curl wget gnupg dirmngr xz-utils libatomic1 --no-install-recommends && rm -rf /var/lib/apt/lists/* && export GNUPGHOME="$(mktemp -d)" && for key in 5BE8A3F6C8A5C01D106C0AD820B1A390B168D356 DD792F5973C6DE52C432CBDAC77ABFA00DDBF2B7 CC68F5A3106FF448322E48ED27F5E38D5B0A215F 8FCCA13FEF1D0C2E91008E09770F7A9A5AE15600 890C08DB8579162FEE0DF9DB8BEAB4DFCF555EF4 C82FA3AE1CBEDC6BE46B9360C43CEC45C17AB93C 108F52B48DB57BB0CC439B2997B01419BD92F80A A363A499291CBBC940DD62E41F10027AF002F8B0 ; do { gpg --batch --keyserver hkps://keys.openpgp.org --recv-keys "$key" && gpg --batch --fingerprint "$key"; } || { gpg --batch --keyserver keyserver.ubuntu.com --recv-keys "$key" && gpg --batch --fingerprint "$key"; } ; done && curl -fsSLO --compressed "https://nodejs.org/dist/v$NODE_VERSION/node-v$NODE_VERSION-linux-$ARCH.tar.xz" && curl -fsSLO --compressed "https://nodejs.org/dist/v$NODE_VERSION/SHASUMS256.txt.asc" && gpg --batch --decrypt --output SHASUMS256.txt SHASUMS256.txt.asc && gpgconf --kill all && rm -rf "$GNUPGHOME" && grep " node-v$NODE_VERSION-linux-$ARCH.tar.xz\$" SHASUMS256.txt | sha256sum -c - && tar -xJf "node-v$NODE_VERSION-linux-$ARCH.tar.xz" -C /usr/local --strip-components=1 --no-same-owner && rm "node-v$NODE_VERSION-linux-$ARCH.tar.xz" SHASUMS256.txt.asc SHASUMS256.txt && find /usr/local/include/node/openssl/archs -mindepth 1 -maxdepth 1 ! -name "$OPENSSL_ARCH" -exec rm -rf {} \; && apt-mark auto '.*' > /dev/null && find /usr/local -type f -executable -exec ldd '{}' ';' | awk '/=>/ { so = $(NF-1); if (index(so, "/usr/local/") == 1) { next }; gsub("^/(usr/)?", "", so); print so }' | sort -u | xargs -r dpkg-query --search | cut -d: -f1 | sort -u | xargs -r apt-mark manual && apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false && ln -s /usr/local/bin/node /usr/local/bin/nodejs && node --version && npm --version && rm -rf /tmp/* # buildkit
2026-03-25 13:31:12 UTC (buildkit.dockerfile.v0)ENV YARN_VERSION=1.22.22
2026-03-25 13:31:23 UTC (buildkit.dockerfile.v0)RUN /bin/sh -c set -ex && savedAptMark="$(apt-mark showmanual)" && apt-get update && apt-get install -y ca-certificates curl wget gnupg dirmngr --no-install-recommends && rm -rf /var/lib/apt/lists/* && export GNUPGHOME="$(mktemp -d)" && for key in 6A010C5166006599AA17F08146C2130DFD2497F5 ; do { gpg --batch --keyserver hkps://keys.openpgp.org --recv-keys "$key" && gpg --batch --fingerprint "$key"; } || { gpg --batch --keyserver keyserver.ubuntu.com --recv-keys "$key" && gpg --batch --fingerprint "$key"; } ; done && curl -fsSLO --compressed "https://yarnpkg.com/downloads/$YARN_VERSION/yarn-v$YARN_VERSION.tar.gz" && curl -fsSLO --compressed "https://yarnpkg.com/downloads/$YARN_VERSION/yarn-v$YARN_VERSION.tar.gz.asc" && gpg --batch --verify yarn-v$YARN_VERSION.tar.gz.asc yarn-v$YARN_VERSION.tar.gz && gpgconf --kill all && rm -rf "$GNUPGHOME" && mkdir -p /opt && tar -xzf yarn-v$YARN_VERSION.tar.gz -C /opt/ && ln -s /opt/yarn-v$YARN_VERSION/bin/yarn /usr/local/bin/yarn && ln -s /opt/yarn-v$YARN_VERSION/bin/yarnpkg /usr/local/bin/yarnpkg && rm yarn-v$YARN_VERSION.tar.gz.asc yarn-v$YARN_VERSION.tar.gz && apt-mark auto '.*' > /dev/null && { [ -z "$savedAptMark" ] || apt-mark manual $savedAptMark > /dev/null; } && find /usr/local -type f -executable -exec ldd '{}' ';' | awk '/=>/ { so = $(NF-1); if (index(so, "/usr/local/") == 1) { next }; gsub("^/(usr/)?", "", so); print so }' | sort -u | xargs -r dpkg-query --search | cut -d: -f1 | sort -u | xargs -r apt-mark manual && apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false && yarn --version && rm -rf /tmp/* # buildkit
2026-03-25 13:31:23 UTC (buildkit.dockerfile.v0)COPY docker-entrypoint.sh /usr/local/bin/ # buildkit
2026-03-25 13:31:23 UTC (buildkit.dockerfile.v0)ENTRYPOINT ["docker-entrypoint.sh"]
2026-03-25 13:31:23 UTC (buildkit.dockerfile.v0)CMD ["node"]
2026-03-27 10:41:58 UTC (buildkit.dockerfile.v0)WORKDIR /app
2026-03-29 11:52:35 UTC (buildkit.dockerfile.v0)ENV BUN_INSTALL=/usr/local PATH=/usr/local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin DEBIAN_FRONTEND=noninteractive
2026-03-29 11:52:35 UTC (buildkit.dockerfile.v0)RUN /bin/sh -c apt-get update && apt-get install -y --no-install-recommends bash ca-certificates chromium curl docker.io build-essential ffmpeg fonts-liberation fonts-noto-cjk fonts-noto-color-emoji git gosu jq locales openssh-client procps python3 socat tini unzip pipx python3-venv websockify && sed -i 's/^# *en_US.UTF-8 UTF-8$/en_US.UTF-8 UTF-8/' /etc/locale.gen && locale-gen && printf 'LANG=en_US.UTF-8\nLANGUAGE=en_US:en\nLC_ALL=en_US.UTF-8\n' > /etc/default/locale && git config --system url."https://github.com/".insteadOf ssh://git@github.com/ && npm config set registry https://registry.npmmirror.com && npm install -g openclaw@2026.3.28 opencode-ai@latest clawhub playwright playwright-extra puppeteer-extra-plugin-stealth @steipete/bird && curl -fsSL https://bun.sh/install | BUN_INSTALL=/usr/local bash && curl -LsSf https://astral.sh/uv/install.sh | env UV_INSTALL_DIR=/usr/local/bin sh && npm install -g @tobilu/qmd@1.1.6 && npx playwright install chromium --with-deps && apt-get purge -y --auto-remove && apt-get clean && rm -rf /var/lib/apt/lists/* /tmp/* /root/.npm /root/.cache # buildkit
2026-03-29 11:52:36 UTC (buildkit.dockerfile.v0)RUN /bin/sh -c mkdir -p /home/node/.openclaw/workspace /home/node/.openclaw/extensions && chown -R node:node /home/node # buildkit
2026-03-29 11:52:36 UTC (buildkit.dockerfile.v0)USER node
2026-03-29 11:52:36 UTC (buildkit.dockerfile.v0)ENV HOME=/home/node
2026-03-29 11:53:55 UTC (buildkit.dockerfile.v0)WORKDIR /home/node
2026-03-29 11:52:37 UTC (buildkit.dockerfile.v0)RUN /bin/sh -c mkdir -p /home/node/.linuxbrew/Homebrew && git clone --depth 1 https://github.com/Homebrew/brew /home/node/.linuxbrew/Homebrew && mkdir -p /home/node/.linuxbrew/bin && ln -s /home/node/.linuxbrew/Homebrew/bin/brew /home/node/.linuxbrew/bin/brew && chown -R node:node /home/node/.linuxbrew && chmod -R g+rwX /home/node/.linuxbrew # buildkit
2026-03-29 11:53:54 UTC (buildkit.dockerfile.v0)RUN /bin/sh -c cd /home/node/.openclaw/extensions && git clone --depth 1 -b v4.17.25 https://github.com/Daiyimo/openclaw-napcat.git napcat && cd napcat && npm install --production && timeout 300 openclaw plugins install -l . || true && cd /home/node/.openclaw/extensions && timeout 300 openclaw plugins install @soimy/dingtalk || true && timeout 300 openclaw plugins install @tencent-connect/openclaw-qqbot@latest || true && timeout 300 openclaw plugins install @sunnoy/wecom || true && mkdir -p /home/node/.openclaw /home/node/.openclaw-seed && find /home/node/.openclaw/extensions -name ".git" -type d -exec rm -rf {} + && mv /home/node/.openclaw/extensions /home/node/.openclaw-seed/ && printf '%s\n' '2026.3.28' > /home/node/.openclaw-seed/extensions/.seed-version && rm -rf /tmp/* /home/node/.npm /home/node/.cache # buildkit
2026-03-29 11:53:54 UTC (buildkit.dockerfile.v0)USER root
2026-03-29 14:44:35 UTC (buildkit.dockerfile.v0)COPY ./init.sh /usr/local/bin/init.sh # buildkit
2026-03-29 14:44:35 UTC (buildkit.dockerfile.v0)RUN /bin/sh -c sed -i 's/\r$//' /usr/local/bin/init.sh && chmod +x /usr/local/bin/init.sh # buildkit
2026-03-29 14:44:35 UTC (buildkit.dockerfile.v0)ENV HOME=/home/node TERM=xterm-256color NODE_PATH=/usr/local/lib/node_modules LANG=en_US.UTF-8 LANGUAGE=en_US:en LC_ALL=en_US.UTF-8 NODE_ENV=production PATH=/home/node/.linuxbrew/bin:/home/node/.linuxbrew/sbin:/usr/local/lib/node_modules/.bin:/usr/local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin HOMEBREW_NO_AUTO_UPDATE=1 HOMEBREW_NO_INSTALL_CLEANUP=1
2026-03-29 14:44:35 UTC (buildkit.dockerfile.v0)EXPOSE [18789/tcp 18790/tcp]
2026-03-29 14:44:35 UTC (buildkit.dockerfile.v0)WORKDIR /home/node
2026-03-29 14:44:35 UTC (buildkit.dockerfile.v0)ENTRYPOINT ["/bin/bash" "/usr/local/bin/init.sh"]
2026-03-29 14:44:19 UTC
1.03 GB
/usr/local
DEBIAN_FRONTENDnoninteractive
HOME/home/node
HOMEBREW_NO_AUTO_UPDATE1
HOMEBREW_NO_INSTALL_CLEANUP1
LANGen_US.UTF-8
LANGUAGEen_US:en
LC_ALLen_US.UTF-8
NODE_ENVproduction
NODE_PATH/usr/local/lib/node_modules
NODE_VERSION22.22.2
PATH/home/node/.linuxbrew/bin:/home/node/.linuxbrew/sbin:/usr/local/lib/node_modules/.bin:/usr/local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
TERMxterm-256color
YARN_VERSION1.22.22
[#000] sha256:d997cc310c981ac52155d0d9fe28888b261a7746a3877bb0ca848fd1a83d319a - 2.54% (26.8 MB)
[#001] sha256:6d5696cc4f598196f64e92c83a2255e0deb8c0706d979797245c4d3fa8e17c41 - 0.0% (3.23 KB)
[#002] sha256:a80a7242a1f1fdba87cb4417d5861f8c9426eaac71aad8080d10ad0dae541e78 - 4.52% (47.7 MB)
[#003] sha256:c2ef8308e721080b9b12e37d71fc2c0a752b23654673c43f1ceede9f3d033129 - 0.15% (1.63 MB)
[#004] sha256:2f8bddafdb246bbd6ee74b5ced03310ef00f71bf89369a08c9eba11ffc3c2294 - 0.0% (449 Bytes)
[#005] sha256:b11286207430327378d9b0118560eaeb5e29b89c399caafd6ab84238916bdbf8 - 0.0% (93 Bytes)
[#006] sha256:a3870b80a37a9b7e8985a043ddfcf554cec092b783fd30682bbdd447951c69da - 91.94% (970 MB)
[#007] sha256:d969dcd94052cfd2ccbcf2b844b5ed4c75eaa8da1bdb4d4b821b0592b7aaeb07 - 0.0% (190 Bytes)
[#008] sha256:4f4fb700ef54461cfa02571ae0db9a0dc1e0cdb5577484a6d75e68dc38e8acc1 - 0.0% (32 Bytes)
[#009] sha256:5596005d2da5055aa45a332145988d99f4ad7f59ac015f13808ffb8cd4def945 - 0.7% (7.4 MB)
[#010] sha256:429d059e46a9600c351e7be1da16568323de362d7aa6030577310ffaf77c3e18 - 0.15% (1.53 MB)
[#011] sha256:4ce471c4b62e79b22e63ec0cf3e03c8f5822dcd1924b179f116f0731c602c19f - 0.0% (19.9 KB)
[#012] sha256:a690c0ad6ed6792c581db539b4967153e2737164c8a00cb062ee8342125be948 - 0.0% (19.9 KB)
[#013] sha256:4f4fb700ef54461cfa02571ae0db9a0dc1e0cdb5577484a6d75e68dc38e8acc1 - 0.0% (32 Bytes)
# debian.sh --arch 'arm64' out/ 'bookworm' '@1773619200'
2026-03-25 13:30:33 UTC (buildkit.dockerfile.v0)RUN /bin/sh -c groupadd --gid 1000 node && useradd --uid 1000 --gid node --shell /bin/bash --create-home node # buildkit
2026-03-25 13:30:52 UTC (buildkit.dockerfile.v0)ENV NODE_VERSION=22.22.2
2026-03-25 13:30:52 UTC (buildkit.dockerfile.v0)RUN /bin/sh -c ARCH= OPENSSL_ARCH= && dpkgArch="$(dpkg --print-architecture)" && case "${dpkgArch##*-}" in amd64) ARCH='x64' OPENSSL_ARCH='linux-x86_64';; ppc64el) ARCH='ppc64le' OPENSSL_ARCH='linux-ppc64le';; s390x) ARCH='s390x' OPENSSL_ARCH='linux*-s390x';; arm64) ARCH='arm64' OPENSSL_ARCH='linux-aarch64';; armhf) ARCH='armv7l' OPENSSL_ARCH='linux-armv4';; i386) ARCH='x86' OPENSSL_ARCH='linux-elf';; *) echo "unsupported architecture"; exit 1 ;; esac && set -ex && apt-get update && apt-get install -y ca-certificates curl wget gnupg dirmngr xz-utils libatomic1 --no-install-recommends && rm -rf /var/lib/apt/lists/* && export GNUPGHOME="$(mktemp -d)" && for key in 5BE8A3F6C8A5C01D106C0AD820B1A390B168D356 DD792F5973C6DE52C432CBDAC77ABFA00DDBF2B7 CC68F5A3106FF448322E48ED27F5E38D5B0A215F 8FCCA13FEF1D0C2E91008E09770F7A9A5AE15600 890C08DB8579162FEE0DF9DB8BEAB4DFCF555EF4 C82FA3AE1CBEDC6BE46B9360C43CEC45C17AB93C 108F52B48DB57BB0CC439B2997B01419BD92F80A A363A499291CBBC940DD62E41F10027AF002F8B0 ; do { gpg --batch --keyserver hkps://keys.openpgp.org --recv-keys "$key" && gpg --batch --fingerprint "$key"; } || { gpg --batch --keyserver keyserver.ubuntu.com --recv-keys "$key" && gpg --batch --fingerprint "$key"; } ; done && curl -fsSLO --compressed "https://nodejs.org/dist/v$NODE_VERSION/node-v$NODE_VERSION-linux-$ARCH.tar.xz" && curl -fsSLO --compressed "https://nodejs.org/dist/v$NODE_VERSION/SHASUMS256.txt.asc" && gpg --batch --decrypt --output SHASUMS256.txt SHASUMS256.txt.asc && gpgconf --kill all && rm -rf "$GNUPGHOME" && grep " node-v$NODE_VERSION-linux-$ARCH.tar.xz\$" SHASUMS256.txt | sha256sum -c - && tar -xJf "node-v$NODE_VERSION-linux-$ARCH.tar.xz" -C /usr/local --strip-components=1 --no-same-owner && rm "node-v$NODE_VERSION-linux-$ARCH.tar.xz" SHASUMS256.txt.asc SHASUMS256.txt && find /usr/local/include/node/openssl/archs -mindepth 1 -maxdepth 1 ! -name "$OPENSSL_ARCH" -exec rm -rf {} \; && apt-mark auto '.*' > /dev/null && find /usr/local -type f -executable -exec ldd '{}' ';' | awk '/=>/ { so = $(NF-1); if (index(so, "/usr/local/") == 1) { next }; gsub("^/(usr/)?", "", so); print so }' | sort -u | xargs -r dpkg-query --search | cut -d: -f1 | sort -u | xargs -r apt-mark manual && apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false && ln -s /usr/local/bin/node /usr/local/bin/nodejs && node --version && npm --version && rm -rf /tmp/* # buildkit
2026-03-25 13:30:52 UTC (buildkit.dockerfile.v0)ENV YARN_VERSION=1.22.22
2026-03-25 13:31:04 UTC (buildkit.dockerfile.v0)RUN /bin/sh -c set -ex && savedAptMark="$(apt-mark showmanual)" && apt-get update && apt-get install -y ca-certificates curl wget gnupg dirmngr --no-install-recommends && rm -rf /var/lib/apt/lists/* && export GNUPGHOME="$(mktemp -d)" && for key in 6A010C5166006599AA17F08146C2130DFD2497F5 ; do { gpg --batch --keyserver hkps://keys.openpgp.org --recv-keys "$key" && gpg --batch --fingerprint "$key"; } || { gpg --batch --keyserver keyserver.ubuntu.com --recv-keys "$key" && gpg --batch --fingerprint "$key"; } ; done && curl -fsSLO --compressed "https://yarnpkg.com/downloads/$YARN_VERSION/yarn-v$YARN_VERSION.tar.gz" && curl -fsSLO --compressed "https://yarnpkg.com/downloads/$YARN_VERSION/yarn-v$YARN_VERSION.tar.gz.asc" && gpg --batch --verify yarn-v$YARN_VERSION.tar.gz.asc yarn-v$YARN_VERSION.tar.gz && gpgconf --kill all && rm -rf "$GNUPGHOME" && mkdir -p /opt && tar -xzf yarn-v$YARN_VERSION.tar.gz -C /opt/ && ln -s /opt/yarn-v$YARN_VERSION/bin/yarn /usr/local/bin/yarn && ln -s /opt/yarn-v$YARN_VERSION/bin/yarnpkg /usr/local/bin/yarnpkg && rm yarn-v$YARN_VERSION.tar.gz.asc yarn-v$YARN_VERSION.tar.gz && apt-mark auto '.*' > /dev/null && { [ -z "$savedAptMark" ] || apt-mark manual $savedAptMark > /dev/null; } && find /usr/local -type f -executable -exec ldd '{}' ';' | awk '/=>/ { so = $(NF-1); if (index(so, "/usr/local/") == 1) { next }; gsub("^/(usr/)?", "", so); print so }' | sort -u | xargs -r dpkg-query --search | cut -d: -f1 | sort -u | xargs -r apt-mark manual && apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false && yarn --version && rm -rf /tmp/* # buildkit
2026-03-25 13:31:04 UTC (buildkit.dockerfile.v0)COPY docker-entrypoint.sh /usr/local/bin/ # buildkit
2026-03-25 13:31:04 UTC (buildkit.dockerfile.v0)ENTRYPOINT ["docker-entrypoint.sh"]
2026-03-25 13:31:04 UTC (buildkit.dockerfile.v0)CMD ["node"]
2026-03-27 10:41:58 UTC (buildkit.dockerfile.v0)WORKDIR /app
2026-03-29 12:03:54 UTC (buildkit.dockerfile.v0)ENV BUN_INSTALL=/usr/local PATH=/usr/local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin DEBIAN_FRONTEND=noninteractive
2026-03-29 12:03:54 UTC (buildkit.dockerfile.v0)RUN /bin/sh -c apt-get update && apt-get install -y --no-install-recommends bash ca-certificates chromium curl docker.io build-essential ffmpeg fonts-liberation fonts-noto-cjk fonts-noto-color-emoji git gosu jq locales openssh-client procps python3 socat tini unzip pipx python3-venv websockify && sed -i 's/^# *en_US.UTF-8 UTF-8$/en_US.UTF-8 UTF-8/' /etc/locale.gen && locale-gen && printf 'LANG=en_US.UTF-8\nLANGUAGE=en_US:en\nLC_ALL=en_US.UTF-8\n' > /etc/default/locale && git config --system url."https://github.com/".insteadOf ssh://git@github.com/ && npm config set registry https://registry.npmmirror.com && npm install -g openclaw@2026.3.28 opencode-ai@latest clawhub playwright playwright-extra puppeteer-extra-plugin-stealth @steipete/bird && curl -fsSL https://bun.sh/install | BUN_INSTALL=/usr/local bash && curl -LsSf https://astral.sh/uv/install.sh | env UV_INSTALL_DIR=/usr/local/bin sh && npm install -g @tobilu/qmd@1.1.6 && npx playwright install chromium --with-deps && apt-get purge -y --auto-remove && apt-get clean && rm -rf /var/lib/apt/lists/* /tmp/* /root/.npm /root/.cache # buildkit
2026-03-29 12:03:55 UTC (buildkit.dockerfile.v0)RUN /bin/sh -c mkdir -p /home/node/.openclaw/workspace /home/node/.openclaw/extensions && chown -R node:node /home/node # buildkit
2026-03-29 12:03:55 UTC (buildkit.dockerfile.v0)USER node
2026-03-29 12:03:55 UTC (buildkit.dockerfile.v0)ENV HOME=/home/node
2026-03-29 11:53:55 UTC (buildkit.dockerfile.v0)WORKDIR /home/node
2026-03-29 12:03:58 UTC (buildkit.dockerfile.v0)RUN /bin/sh -c mkdir -p /home/node/.linuxbrew/Homebrew && git clone --depth 1 https://github.com/Homebrew/brew /home/node/.linuxbrew/Homebrew && mkdir -p /home/node/.linuxbrew/bin && ln -s /home/node/.linuxbrew/Homebrew/bin/brew /home/node/.linuxbrew/bin/brew && chown -R node:node /home/node/.linuxbrew && chmod -R g+rwX /home/node/.linuxbrew # buildkit
2026-03-29 12:11:18 UTC (buildkit.dockerfile.v0)RUN /bin/sh -c cd /home/node/.openclaw/extensions && git clone --depth 1 -b v4.17.25 https://github.com/Daiyimo/openclaw-napcat.git napcat && cd napcat && npm install --production && timeout 300 openclaw plugins install -l . || true && cd /home/node/.openclaw/extensions && timeout 300 openclaw plugins install @soimy/dingtalk || true && timeout 300 openclaw plugins install @tencent-connect/openclaw-qqbot@latest || true && timeout 300 openclaw plugins install @sunnoy/wecom || true && mkdir -p /home/node/.openclaw /home/node/.openclaw-seed && find /home/node/.openclaw/extensions -name ".git" -type d -exec rm -rf {} + && mv /home/node/.openclaw/extensions /home/node/.openclaw-seed/ && printf '%s\n' '2026.3.28' > /home/node/.openclaw-seed/extensions/.seed-version && rm -rf /tmp/* /home/node/.npm /home/node/.cache # buildkit
2026-03-29 12:11:18 UTC (buildkit.dockerfile.v0)USER root
2026-03-29 14:44:18 UTC (buildkit.dockerfile.v0)COPY ./init.sh /usr/local/bin/init.sh # buildkit
2026-03-29 14:44:19 UTC (buildkit.dockerfile.v0)RUN /bin/sh -c sed -i 's/\r$//' /usr/local/bin/init.sh && chmod +x /usr/local/bin/init.sh # buildkit
2026-03-29 14:44:19 UTC (buildkit.dockerfile.v0)ENV HOME=/home/node TERM=xterm-256color NODE_PATH=/usr/local/lib/node_modules LANG=en_US.UTF-8 LANGUAGE=en_US:en LC_ALL=en_US.UTF-8 NODE_ENV=production PATH=/home/node/.linuxbrew/bin:/home/node/.linuxbrew/sbin:/usr/local/lib/node_modules/.bin:/usr/local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin HOMEBREW_NO_AUTO_UPDATE=1 HOMEBREW_NO_INSTALL_CLEANUP=1
2026-03-29 14:44:19 UTC (buildkit.dockerfile.v0)EXPOSE [18789/tcp 18790/tcp]
2026-03-29 14:44:19 UTC (buildkit.dockerfile.v0)WORKDIR /home/node
2026-03-29 14:44:19 UTC (buildkit.dockerfile.v0)ENTRYPOINT ["/bin/bash" "/usr/local/bin/init.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.