openclaw-sandbox (96a6839ddf76)
Published 2026-10-25 07:57:12 -05:00 by treyturner
Installation
docker pull forgejo.treyturner.info/treyturner/openclaw-sandbox:96a6839ddf76sha256:87fc08e8a7ab52b8ac1ee6c109e16558513aa649e0ab89e7fd9c1648f7e29f14About this package
dev tools, env vars, task runner
Image layers
| # debian.sh --arch 'amd64' out/ 'trixie' '@1789689600' |
| ARG TARGETARCH=amd64 |
| LABEL maintainer=jdx |
| LABEL org.opencontainers.image.source=https://github.com/jdx/mise |
| LABEL org.opencontainers.image.description=mise is a tool for managing your development environment |
| LABEL org.opencontainers.image.licenses=MIT |
| SHELL [/bin/bash -o pipefail -c] |
| RUN |1 TARGETARCH=amd64 /bin/bash -o pipefail -c apt-get update && apt-get install -y --no-install-recommends ca-certificates curl git libatomic1 && rm -rf /var/lib/apt/lists/* # buildkit |
| ENV MISE_DATA_DIR=/mise |
| ENV MISE_CONFIG_DIR=/mise |
| ENV MISE_CACHE_DIR=/mise/cache |
| ENV PATH=/mise/shims:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin |
| COPY --chmod=755 linux-amd64/mise /usr/local/bin/mise # buildkit |
| RUN |1 TARGETARCH=amd64 /bin/bash -o pipefail -c mise --version # buildkit |
| WORKDIR /mise |
| CMD ["mise" "--help"] |
| SHELL [/bin/bash -euo pipefail -c] |
| USER root |
| RUN /bin/bash -euo pipefail -c groupadd --gid 1000 sandbox && useradd --uid 1000 --gid sandbox --create-home --shell /bin/bash sandbox && install -d -o sandbox -g sandbox /workspace # buildkit |
| ENV HOME=/home/sandbox TERM=xterm-256color MISE_CACHE_DIR=/tmp/.cache/mise MISE_STATE_DIR=/tmp/.local/state/mise PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin |
| COPY --chmod=0644 sandbox/mise.toml /mise/config.toml # buildkit |
| COPY --chmod=0644 sandbox/mise.lock /mise/mise.lock # buildkit |
| RUN /bin/bash -euo pipefail -c mise install --locked && for tool in node npx uv uvx; do ln -s "$(mise which "$tool")" "/usr/local/bin/$tool"; done && ln -s "$(mise where node)/lib/node_modules/npm/bin/npm-cli.js" /usr/local/bin/npm && node --version && npm --version && uv --version # buildkit |
| USER sandbox |
| WORKDIR /workspace |
| ENTRYPOINT [] |
| CMD ["sleep" "infinity"] |
| ARG EXTRA_APT_PKGS= EXTRA_NPM_LOCAL_PKGS= EXTRA_NPM_GLOBAL_PKGS= EXTRA_PIP_PKGS= |
| USER root |
| ENV HOME=/root NPM_CONFIG_PREFIX=/usr/local PLAYWRIGHT_BROWSERS_PATH=/opt/playwright-browsers |
| WORKDIR /app |
| RUN |4 EXTRA_APT_PKGS= EXTRA_NPM_LOCAL_PKGS= EXTRA_NPM_GLOBAL_PKGS= EXTRA_PIP_PKGS= /bin/bash -euo pipefail -c export DEBIAN_FRONTEND=noninteractive && apt-get update && apt-get upgrade -y --no-install-recommends && apt-get install -y --no-install-recommends bash ca-certificates coreutils curl ffmpeg git imagemagick jq python3 python3-venv ripgrep rsync yq ${EXTRA_APT_PKGS} && rm -rf /var/lib/apt/lists/* # buildkit |
| RUN |4 EXTRA_APT_PKGS= EXTRA_NPM_LOCAL_PKGS= EXTRA_NPM_GLOBAL_PKGS= EXTRA_PIP_PKGS= /bin/bash -euo pipefail -c npm i -g mcporter@0.16.0 @playwright/mcp@0.0.83 && install -d -m 0755 /opt/npm-global /opt/npm-local && if [[ -n "${EXTRA_NPM_GLOBAL_PKGS}" ]]; then (cd /opt/npm-global && npm i -g --prefix /opt/npm-global ${EXTRA_NPM_GLOBAL_PKGS}); fi && if [[ -n "${EXTRA_NPM_LOCAL_PKGS}" ]]; then (cd /opt/npm-local && npm i --prefix /opt/npm-local ${EXTRA_NPM_LOCAL_PKGS}); fi && printf '%s\n' 'export PATH="$PATH:/opt/npm-global/bin:/opt/npm-local/node_modules/.bin"' > /etc/profile.d/npm-extras.sh # buildkit |
| ENV PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/opt/npm-global/bin:/opt/npm-local/node_modules/.bin |
| RUN |4 EXTRA_APT_PKGS= EXTRA_NPM_LOCAL_PKGS= EXTRA_NPM_GLOBAL_PKGS= EXTRA_PIP_PKGS= /bin/bash -euo pipefail -c playwright_dir="$(node -p 'require("path").dirname(require.resolve("playwright/package.json", { paths: [process.argv[1]] }))' "$(npm root -g)/@playwright/mcp")" && PLAYWRIGHT_BROWSERS_PATH=/pw-cache node "$playwright_dir/cli.js" install --with-deps --no-shell chromium && mkdir -p "$PLAYWRIGHT_BROWSERS_PATH" && rsync -a --delete /pw-cache/ "$PLAYWRIGHT_BROWSERS_PATH/" && chmod -R a+rX "$PLAYWRIGHT_BROWSERS_PATH" && ln -sf "$(node -e 'console.log(require(process.argv[1]).chromium.executablePath())' "$playwright_dir")" /usr/local/bin/chromium && test -x /usr/local/bin/chromium && rm -rf /var/lib/apt/lists/* # buildkit |
| ENV PATH=/opt/python/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/opt/npm-global/bin:/opt/npm-local/node_modules/.bin |
| RUN |4 EXTRA_APT_PKGS= EXTRA_NPM_LOCAL_PKGS= EXTRA_NPM_GLOBAL_PKGS= EXTRA_PIP_PKGS= /bin/bash -euo pipefail -c uv venv --python /usr/bin/python3 /opt/python && printf '%s\n' 'export PATH="/opt/python/bin:$PATH"' > /etc/profile.d/python-tools.sh && if [[ -n "${EXTRA_PIP_PKGS}" ]]; then uv pip install --python /opt/python/bin/python ${EXTRA_PIP_PKGS}; fi # buildkit |
| RUN |4 EXTRA_APT_PKGS= EXTRA_NPM_LOCAL_PKGS= EXTRA_NPM_GLOBAL_PKGS= EXTRA_PIP_PKGS= /bin/bash -euo pipefail -c install -d -m 0755 /etc/mcporter # buildkit |
| COPY --chmod=0644 config/mcporter.sandbox.json /etc/mcporter/mcporter.json # buildkit |
| ENV MCPORTER_CONFIG=/etc/mcporter/mcporter.json MCPORTER_OAUTH_NO_BROWSER=1 |
| USER sandbox |
| ENV HOME=/home/sandbox XDG_CACHE_HOME=/tmp/.cache |
| WORKDIR /workspace |
Labels
| Key | Value |
|---|---|
| maintainer | jdx |
| org.opencontainers.image.created | 2026-10-21T01:30:11.112Z |
| org.opencontainers.image.description | dev tools, env vars, task runner |
| org.opencontainers.image.licenses | MIT |
| org.opencontainers.image.revision | f0636505badf917a68cf5d5ed815c046593eaed4 |
| org.opencontainers.image.source | https://github.com/jdx/mise |
| org.opencontainers.image.title | mise |
| org.opencontainers.image.url | https://github.com/jdx/mise |
| org.opencontainers.image.version | 2026.10.17 |
Details
2026-10-25 07:57:12 -05:00
Versions (9)
View all
Container
0
OCI / Docker
linux/amd64
MIT
631 MiB
2026.10.17
2026-10-25
96a6839ddf76
2026-10-25
base-dfa047d38d4b
2026-10-25
daily
2026-10-25
20261025
2026-10-25