Block a user
claudequeue-worker (sha256:9fc2a1a3a18b328b484d219d376aa5759012ecb92a359e1570db2f45c1d81812)
Published 2026-08-08 14:06:45 +00:00 by josh
Installation
docker pull git2.hesed.sbs/josh/claudequeue-worker@sha256:9fc2a1a3a18b328b484d219d376aa5759012ecb92a359e1570db2f45c1d81812sha256:9fc2a1a3a18b328b484d219d376aa5759012ecb92a359e1570db2f45c1d81812Image Layers
| # debian.sh --arch 'amd64' out/ 'bookworm' '@1776729600' |
| RUN /bin/sh -c groupadd --gid 1000 node && useradd --uid 1000 --gid node --shell /bin/bash --create-home node # buildkit |
| ENV NODE_VERSION=20.20.2 |
| 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 |
| ENV YARN_VERSION=1.22.22 |
| 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 |
| COPY docker-entrypoint.sh /usr/local/bin/ # buildkit |
| ENTRYPOINT ["docker-entrypoint.sh"] |
| CMD ["node"] |
| ENV DEBIAN_FRONTEND=noninteractive |
| RUN /bin/sh -c apt-get update && apt-get install -y --no-install-recommends ca-certificates curl wget gnupg git openssh-client bash jq unzip default-mysql-client redis-tools gosu && rm -rf /var/lib/apt/lists/* && ln -sf "$(command -v gosu)" /usr/local/bin/su-exec # buildkit |
| RUN /bin/sh -c install -m 0755 -d /etc/apt/keyrings && curl -fsSL https://download.docker.com/linux/debian/gpg -o /etc/apt/keyrings/docker.asc && chmod a+r /etc/apt/keyrings/docker.asc && echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/debian bookworm stable" > /etc/apt/sources.list.d/docker.list && apt-get update && apt-get install -y --no-install-recommends docker-ce-cli docker-compose-plugin docker-buildx-plugin rsync && rm -rf /var/lib/apt/lists/* # buildkit |
| RUN /bin/sh -c curl -sSLo /usr/share/keyrings/php-sury.gpg https://packages.sury.org/php/apt.gpg && echo "deb [signed-by=/usr/share/keyrings/php-sury.gpg] https://packages.sury.org/php/ bookworm main" > /etc/apt/sources.list.d/php-sury.list && apt-get update && apt-get install -y --no-install-recommends php8.3-cli php8.3-common php8.3-curl php8.3-mbstring php8.3-xml php8.3-zip php8.3-bcmath php8.3-intl php8.3-gd php8.3-mysql php8.3-sqlite3 php8.3-pgsql php8.3-redis php8.3-opcache php8.3-soap && rm -rf /var/lib/apt/lists/* && update-alternatives --install /usr/bin/php php /usr/bin/php8.3 1 # buildkit |
| RUN /bin/sh -c apt-get update && apt-get install -y --no-install-recommends php8.3-swoole && rm -rf /var/lib/apt/lists/* && php -m | grep -qi swoole # buildkit |
| RUN /bin/sh -c curl -sSL https://getcomposer.org/installer | php -- --install-dir=/usr/local/bin --filename=composer && composer --version # buildkit |
| RUN /bin/sh -c set -eux; curl -sSLo /usr/local/bin/phpstan https://github.com/phpstan/phpstan/releases/latest/download/phpstan.phar; curl -sSLo /usr/local/bin/php-cs-fixer https://cs.symfony.com/download/php-cs-fixer-v3.phar; curl -sSLo /usr/local/bin/phpcs https://github.com/PHPCSStandards/PHP_CodeSniffer/releases/latest/download/phpcs.phar; curl -sSLo /usr/local/bin/phpcbf https://github.com/PHPCSStandards/PHP_CodeSniffer/releases/latest/download/phpcbf.phar; curl -sSLo /usr/local/bin/psalm https://github.com/vimeo/psalm/releases/latest/download/psalm.phar; chmod +x /usr/local/bin/phpstan /usr/local/bin/php-cs-fixer /usr/local/bin/phpcs /usr/local/bin/phpcbf /usr/local/bin/psalm # buildkit |
| ENV UV_TOOL_DIR=/opt/uv-tools UV_TOOL_BIN_DIR=/usr/local/bin |
| RUN /bin/sh -c apt-get update && apt-get install -y --no-install-recommends python3 python3-venv && rm -rf /var/lib/apt/lists/* && curl -LsSf https://astral.sh/uv/install.sh | env UV_INSTALL_DIR=/usr/local/bin sh && uv tool install --python python3 "graphifyy[anthropic]==0.8.44" && chmod -R a+rX /opt/uv-tools # buildkit |
| ENV PLAYWRIGHT_BROWSERS_PATH=/ms-playwright |
| RUN /bin/sh -c npm install -g @anthropic-ai/claude-code playwright && playwright install --with-deps chromium firefox webkit && chmod -R a+rx /ms-playwright && npm cache clean --force # buildkit |
| ENV BUN_INSTALL=/opt/bun |
| RUN /bin/sh -c curl -fsSL https://bun.sh/install | bash -s "bun-v1.3.14" && ln -s /opt/bun/bin/bun /usr/local/bin/bun && npm install -g claude-mem@13.12.4 && ln -s "$(npm root -g)/claude-mem/plugin" /opt/claude-mem && chmod -R a+rX /opt/bun "$(npm root -g)/claude-mem" # buildkit |
| RUN /bin/sh -c userdel -r node 2>/dev/null || true && useradd --create-home --uid 1000 --home-dir /home/worker --shell /bin/bash worker # buildkit |
| RUN /bin/sh -c git config --global init.defaultBranch main && git config --global user.email "claude-worker@claudequeue" && git config --global user.name "Claude Worker" && su worker -s /bin/bash -c ' git config --global init.defaultBranch main && git config --global user.email "claude-worker@claudequeue" && git config --global user.name "Claude Worker"' # buildkit |
| RUN /bin/sh -c mkdir -p /home/worker/.ssh && chmod 700 /home/worker/.ssh && printf "Host git2.hesed.sbs\n Port 6612\n StrictHostKeyChecking no\n\nHost git.hesed.sbs\n Port 6611\n StrictHostKeyChecking no\n" > /home/worker/.ssh/config && chmod 600 /home/worker/.ssh/config && mkdir -p /home/worker/.claude && chown -R worker:worker /home/worker # buildkit |
| WORKDIR /worker |
| WORKDIR /worker |
| COPY worker/ ./ # buildkit |
| RUN /bin/sh -c chmod +x entrypoint.sh load-settings.sh watchdog.sh mcp-json.sh skills-sync.sh push-guard-hook.sh cq-save-output.sh cq-log.sh cq-audit.sh cq-claim.sh cq-done.sh cq-fail.sh cq-cancel.sh cq-widget.sh cq-ask.sh cq-plan-save.sh cq-learning.sh cq-diff-publish.sh cq-boot-gate.sh cq-screenshot.sh cq-pdf.sh cq-playground.sh cq-vision.sh cq-agent-model.sh && ln -sf /worker/cq-save-output.sh /usr/local/bin/cq-save-output && for c in cq-log cq-audit cq-claim cq-done cq-fail cq-cancel cq-widget cq-ask cq-plan-save cq-learning cq-diff-publish cq-boot-gate cq-screenshot cq-pdf cq-playground cq-vision cq-agent-model; do ln -sf "/worker/$c.sh" "/usr/local/bin/$c"; done # buildkit |
| CMD ["/worker/entrypoint.sh"] |
Details
2026-08-08 14:06:45 +00:00
Versions (103)
View all
Container
1
OCI / Docker
linux/amd64
1.2 GiB
sha-8635ebf3e9c0
2026-08-08
latest
2026-08-08
sha-ac30c86da40e
2026-08-08
sha-62657688fd2b
2026-08-08
visiontest
2026-08-08