logo
ghcr.io/openhands/agent-canvas:1.12.0
linux/amd64 ghcr.io

ghcr.io/openhands/agent-canvas是OpenHands项目提供的Agent Canvas应用的容器镜像,用于部署和运行Agent Canvas服务,支持构建、管理智能代理相关的功能。

12
浏览次数
4.36GB
镜像大小
国内镜像
swr.cn-north-4.myhuaweicloud.com/ddn-k8s/ghcr.io/openhands/agent-canvas:1.12.0
源镜像
ghcr.io/openhands/agent-canvas:1.12.0
镜像ID
sha256:1fa4b32949567cf36ffa9be5b45677d043406651ddd2f2fc15065ee6a67a6f9a
镜像 TAG
1.12.0
镜像大小
4.36GB
平台架构
linux/amd64
镜像源
ghcr.io
CMD
启动入口
tini -- /opt/agent-canvas/entrypoint.sh
工作目录
/
OS/平台
linux/amd64
镜像创建
2026-08-07T19:35:08.297595608Z
同步时间
2026-08-11 10:39
浏览量
12 次
贡献者
🔌 开放端口 2
8000/tcp 8002/tcp
📁 目录挂载 2
 /home/openhands/.openhands  /projects
⚙️ 环境变量 28
KeyValue
PATH=/usr/local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin 0
GPG_KEY=7169605F62C751356D054A26A821E680E5FA6305 1
PYTHON_VERSION=3.13.14 2
PYTHON_SHA256=639e43243c620a308f968213df9e00f2f8f62332f7adbaa7a7eeb9783057c690 3
POETRY_HOME=/usr/local 4
OPENHANDS_BUILD_GIT_SHA=c1877b44129696cb99535c0e074d22a324cc7312 5
OPENHANDS_BUILD_GIT_REF=refs/tags/v1.40.1 6
ACP_NODE_DIR=/opt/acp-node 7
LC_ALL=C.UTF-8 8
LANG=C.UTF-8 9
OH_ENABLE_VNC=false 10
LOG_JSON=true 11
EDITOR=code 12
VISUAL=code 13
GIT_EDITOR=code --wait 14
OPENVSCODE_SERVER_ROOT=/openhands/.openvscode-server 15
NOVNC_WEB=/usr/share/novnc 16
NOVNC_PORT=8002 17
DISPLAY=:1 18
VNC_GEOMETRY=1280x800 19
CHROME_BIN=/usr/bin/chromium 20
PUPPETEER_EXECUTABLE_PATH=/usr/bin/chromium 21
CHROMIUM_FLAGS=--no-sandbox --disable-dev-shm-usage --disable-gpu 22
LD_LIBRARY_PATH=/usr/lib/aarch64-linux-gnu:/usr/lib:/usr/lib/x86_64-linux-gnu: 23
AGENT_CANVAS_BUILD_GIT_SHA=4d0fe4983b6b8e52c104c7ffa4b7be8c7ab5a364 24
AGENT_CANVAS_BUILD_GIT_REF=refs/tags/v1.12.0 25
AGENT_CANVAS_BASE_PATH=/canvas 26
VITE_POSTHOG_API_KEY=phc_BgzfxKdgsYMLFTmJqt424ZoyVHvKFfrwttLimzdYTKFK 27
🏷️ 镜像标签 6
KeyValue
Nikolai R Kristiansen <nikolaik@gmail.com> org.opencontainers.image.authors
All-in-one agent-canvas: Agent Server + Automation + Frontend org.opencontainers.image.description
4d0fe4983b6b8e52c104c7ffa4b7be8c7ab5a364 org.opencontainers.image.revision
https://github.com/OpenHands/OpenHands org.opencontainers.image.source
agent-canvas org.opencontainers.image.title
1.12.0 org.opencontainers.image.version
🛡️ 镜像安全扫描
debian 13.6 Trivy 2026-08-11 10:39 查看完整报告
852
低危 LOW
595
中危 MEDIUM
221
高危 HIGH
30
严重 CRITICAL
受影响目标 (14)
ghcr.io/openhands/agent-canvas:1.12.0 (debian 13.6) debian Node.js node-pkg Python python-pkg usr/bin/docker gobinary usr/bin/docker-proxy gobinary usr/bin/dockerd gobinary usr/bin/gh gobinary usr/bin/rootlesskit gobinary usr/bin/uv rustbinary usr/bin/uvx rustbinary usr/libexec/docker/cli-plugins/docker-buildx gobinary usr/libexec/docker/cli-plugins/docker-compose gobinary usr/local/bin/uv rustbinary usr/local/bin/uvx rustbinary

Docker拉取命令

docker pull swr.cn-north-4.myhuaweicloud.com/ddn-k8s/ghcr.io/openhands/agent-canvas:1.12.0
docker tag  swr.cn-north-4.myhuaweicloud.com/ddn-k8s/ghcr.io/openhands/agent-canvas:1.12.0  ghcr.io/openhands/agent-canvas:1.12.0

Containerd拉取命令

ctr images pull swr.cn-north-4.myhuaweicloud.com/ddn-k8s/ghcr.io/openhands/agent-canvas:1.12.0
ctr images tag  swr.cn-north-4.myhuaweicloud.com/ddn-k8s/ghcr.io/openhands/agent-canvas:1.12.0  ghcr.io/openhands/agent-canvas:1.12.0

Shell快速替换命令

sed -i 's#ghcr.io/openhands/agent-canvas:1.12.0#swr.cn-north-4.myhuaweicloud.com/ddn-k8s/ghcr.io/openhands/agent-canvas:1.12.0#' deployment.yaml

Ansible快速分发-Docker

#ansible k8s -m shell -a 'docker pull swr.cn-north-4.myhuaweicloud.com/ddn-k8s/ghcr.io/openhands/agent-canvas:1.12.0 && docker tag  swr.cn-north-4.myhuaweicloud.com/ddn-k8s/ghcr.io/openhands/agent-canvas:1.12.0  ghcr.io/openhands/agent-canvas:1.12.0'

Ansible快速分发-Containerd

#ansible k8s -m shell -a 'ctr images pull swr.cn-north-4.myhuaweicloud.com/ddn-k8s/ghcr.io/openhands/agent-canvas:1.12.0 && ctr images tag  swr.cn-north-4.myhuaweicloud.com/ddn-k8s/ghcr.io/openhands/agent-canvas:1.12.0  ghcr.io/openhands/agent-canvas:1.12.0'

镜像构建历史


# 2026-08-08 03:35:08  0.00B 配置容器启动时运行的命令
ENTRYPOINT ["tini" "--" "/opt/agent-canvas/entrypoint.sh"]
                        
# 2026-08-08 03:35:08  0.00B 声明容器运行时监听的端口
EXPOSE map[8000/tcp:{}]
                        
# 2026-08-08 03:35:08  0.00B 创建挂载点用于持久化数据或共享数据
VOLUME [/home/openhands/.openhands /projects]
                        
# 2026-08-08 03:35:08  0.00B 指定运行容器时使用的用户
USER openhands
                        
# 2026-08-08 03:35:08  0.00B 执行命令并创建新的镜像层
RUN |7 AUTOMATION_VERSION=1.6.0 AGENT_SERVER_SDK_GIT_REF= OPENHANDS_BUILD_GIT_SHA=4d0fe4983b6b8e52c104c7ffa4b7be8c7ab5a364 OPENHANDS_BUILD_GIT_REF=refs/tags/v1.12.0 VITE_BASE_PATH=/canvas VITE_POSTHOG_API_KEY=phc_BgzfxKdgsYMLFTmJqt424ZoyVHvKFfrwttLimzdYTKFK AGENT_CANVAS_VERSION=1.12.0 /bin/bash -euo pipefail -c mkdir -p /home/openhands/.openhands/agent-canvas/conversations              /home/openhands/.openhands/agent-canvas/bash_events              /home/openhands/.openhands/automation              /projects &&     chown -R openhands:openhands /home/openhands/.openhands /projects # buildkit
                        
# 2026-08-08 03:35:08  16.10KB 执行命令并创建新的镜像层
RUN |7 AUTOMATION_VERSION=1.6.0 AGENT_SERVER_SDK_GIT_REF= OPENHANDS_BUILD_GIT_SHA=4d0fe4983b6b8e52c104c7ffa4b7be8c7ab5a364 OPENHANDS_BUILD_GIT_REF=refs/tags/v1.12.0 VITE_BASE_PATH=/canvas VITE_POSTHOG_API_KEY=phc_BgzfxKdgsYMLFTmJqt424ZoyVHvKFfrwttLimzdYTKFK AGENT_CANVAS_VERSION=1.12.0 /bin/bash -euo pipefail -c chmod +x /opt/agent-canvas/entrypoint.sh # buildkit
                        
# 2026-08-08 03:35:08  16.10KB 复制新文件或目录到容器中
COPY docker/entrypoint.sh /opt/agent-canvas/entrypoint.sh # buildkit
                        
# 2026-08-08 03:35:08  404.00B 复制新文件或目录到容器中
COPY /tmp/defaults.env /opt/agent-canvas/defaults.env # buildkit
                        
# 2026-08-08 03:35:08  5.39KB 复制新文件或目录到容器中
COPY tools/ /opt/agent-canvas/tools/ # buildkit
                        
# 2026-08-08 03:35:08  8.56KB 复制新文件或目录到容器中
COPY scripts/runtime-services-info.mjs /opt/agent-canvas/runtime-services-info.mjs # buildkit
                        
# 2026-08-08 03:35:08  7.46KB 复制新文件或目录到容器中
COPY /build/node_modules/totalist /opt/agent-canvas/node_modules/totalist # buildkit
                        
# 2026-08-08 03:35:08  33.01KB 复制新文件或目录到容器中
COPY /build/node_modules/mrmime /opt/agent-canvas/node_modules/mrmime # buildkit
                        
# 2026-08-08 03:35:08  4.82KB 复制新文件或目录到容器中
COPY /build/node_modules/@polka /opt/agent-canvas/node_modules/@polka # buildkit
                        
# 2026-08-08 03:35:08  21.88KB 复制新文件或目录到容器中
COPY /build/node_modules/sirv /opt/agent-canvas/node_modules/sirv # buildkit
                        
# 2026-08-08 03:35:08  59.12KB 复制新文件或目录到容器中
COPY /build/node_modules/httpxy /opt/agent-canvas/node_modules/httpxy # buildkit
                        
# 2026-08-08 03:35:08  8.60KB 复制新文件或目录到容器中
COPY scripts/proxy-utils.mjs /opt/agent-canvas/proxy-utils.mjs # buildkit
                        
# 2026-08-08 03:35:08  22.71KB 复制新文件或目录到容器中
COPY scripts/static-server.mjs /opt/agent-canvas/static-server.mjs # buildkit
                        
# 2026-08-08 03:35:08  7.79MB 复制新文件或目录到容器中
COPY /build/build /opt/agent-canvas/frontend # buildkit
                        
# 2026-08-08 03:34:58  0.00B 执行命令并创建新的镜像层
RUN |7 AUTOMATION_VERSION=1.6.0 AGENT_SERVER_SDK_GIT_REF= OPENHANDS_BUILD_GIT_SHA=4d0fe4983b6b8e52c104c7ffa4b7be8c7ab5a364 OPENHANDS_BUILD_GIT_REF=refs/tags/v1.12.0 VITE_BASE_PATH=/canvas VITE_POSTHOG_API_KEY=phc_BgzfxKdgsYMLFTmJqt424ZoyVHvKFfrwttLimzdYTKFK AGENT_CANVAS_VERSION=1.12.0 /bin/bash -euo pipefail -c if [ -n "${AGENT_SERVER_SDK_GIT_REF}" ]; then       BASE_GIT_URL="git+https://github.com/OpenHands/software-agent-sdk@${AGENT_SERVER_SDK_GIT_REF}" &&       uv pip install --system --force-reinstall         "${BASE_GIT_URL}#subdirectory=openhands-sdk"         "${BASE_GIT_URL}#subdirectory=openhands-tools"         "${BASE_GIT_URL}#subdirectory=openhands-workspace";     fi # buildkit
                        
# 2026-08-08 03:34:57  374.78MB 执行命令并创建新的镜像层
RUN |7 AUTOMATION_VERSION=1.6.0 AGENT_SERVER_SDK_GIT_REF= OPENHANDS_BUILD_GIT_SHA=4d0fe4983b6b8e52c104c7ffa4b7be8c7ab5a364 OPENHANDS_BUILD_GIT_REF=refs/tags/v1.12.0 VITE_BASE_PATH=/canvas VITE_POSTHOG_API_KEY=phc_BgzfxKdgsYMLFTmJqt424ZoyVHvKFfrwttLimzdYTKFK AGENT_CANVAS_VERSION=1.12.0 /bin/bash -euo pipefail -c uv pip install --system "openhands-automation==${AUTOMATION_VERSION}" 2>/dev/null     || pip install --no-cache-dir "openhands-automation==${AUTOMATION_VERSION}" # buildkit
                        
# 2026-08-08 03:34:51  18.49MB 执行命令并创建新的镜像层
RUN |7 AUTOMATION_VERSION=1.6.0 AGENT_SERVER_SDK_GIT_REF= OPENHANDS_BUILD_GIT_SHA=4d0fe4983b6b8e52c104c7ffa4b7be8c7ab5a364 OPENHANDS_BUILD_GIT_REF=refs/tags/v1.12.0 VITE_BASE_PATH=/canvas VITE_POSTHOG_API_KEY=phc_BgzfxKdgsYMLFTmJqt424ZoyVHvKFfrwttLimzdYTKFK AGENT_CANVAS_VERSION=1.12.0 /bin/bash -euo pipefail -c if command -v apt-get >/dev/null 2>&1; then       apt-get update &&       apt-get install -y --no-install-recommends libpq-dev &&       rm -rf /var/lib/apt/lists/*;     fi # buildkit
                        
# 2026-08-08 03:34:51  0.00B 指定运行容器时使用的用户
USER root
                        
# 2026-08-08 03:34:51  0.00B 设置环境变量 VITE_POSTHOG_API_KEY
ENV VITE_POSTHOG_API_KEY=phc_BgzfxKdgsYMLFTmJqt424ZoyVHvKFfrwttLimzdYTKFK
                        
# 2026-08-08 03:34:51  0.00B 设置环境变量 AGENT_CANVAS_BASE_PATH
ENV AGENT_CANVAS_BASE_PATH=/canvas
                        
# 2026-08-08 03:34:51  0.00B 设置环境变量 AGENT_CANVAS_BUILD_GIT_REF
ENV AGENT_CANVAS_BUILD_GIT_REF=refs/tags/v1.12.0
                        
# 2026-08-08 03:34:51  0.00B 设置环境变量 AGENT_CANVAS_BUILD_GIT_SHA
ENV AGENT_CANVAS_BUILD_GIT_SHA=4d0fe4983b6b8e52c104c7ffa4b7be8c7ab5a364
                        
# 2026-08-08 03:34:51  0.00B 添加元数据标签
LABEL org.opencontainers.image.revision=4d0fe4983b6b8e52c104c7ffa4b7be8c7ab5a364
                        
# 2026-08-08 03:34:51  0.00B 添加元数据标签
LABEL org.opencontainers.image.version=1.12.0
                        
# 2026-08-08 03:34:51  0.00B 添加元数据标签
LABEL org.opencontainers.image.source=https://github.com/OpenHands/OpenHands
                        
# 2026-08-08 03:34:51  0.00B 添加元数据标签
LABEL org.opencontainers.image.description=All-in-one agent-canvas: Agent Server + Automation + Frontend
                        
# 2026-08-08 03:34:51  0.00B 添加元数据标签
LABEL org.opencontainers.image.title=agent-canvas
                        
# 2026-08-08 03:34:51  0.00B 定义构建参数
ARG AGENT_CANVAS_VERSION=dev
                        
# 2026-08-08 03:34:51  0.00B 定义构建参数
ARG VITE_POSTHOG_API_KEY=
                        
# 2026-08-08 03:34:51  0.00B 定义构建参数
ARG VITE_BASE_PATH=/canvas
                        
# 2026-08-08 03:34:51  0.00B 定义构建参数
ARG OPENHANDS_BUILD_GIT_REF=unknown
                        
# 2026-08-08 03:34:51  0.00B 定义构建参数
ARG OPENHANDS_BUILD_GIT_SHA=unknown
                        
# 2026-08-08 03:34:51  0.00B 定义构建参数
ARG AGENT_SERVER_SDK_GIT_REF=
                        
# 2026-08-08 03:34:51  0.00B 定义构建参数
ARG AUTOMATION_VERSION
                        
# 2026-08-05 19:08:32  0.00B 配置容器启动时运行的命令
ENTRYPOINT ["tini" "--" "/usr/local/bin/openhands-agent-server"]
                        
# 2026-08-05 19:08:32  0.00B 设置环境变量 LD_LIBRARY_PATH
ENV LD_LIBRARY_PATH=/usr/lib/aarch64-linux-gnu:/usr/lib:/usr/lib/x86_64-linux-gnu:
                        
# 2026-08-05 19:08:32  0.00B 执行命令并创建新的镜像层
RUN |1 USERNAME=openhands /bin/bash -euo pipefail -c chmod +x /usr/local/bin/openhands-agent-server # buildkit
                        
# 2026-08-05 19:08:31  112.59MB 复制新文件或目录到容器中
COPY --chown=openhands:openhands /agent-server/dist/openhands-agent-server /usr/local/bin/openhands-agent-server # buildkit
                        
# 2026-08-05 19:05:55  0.00B 定义构建参数
ARG USERNAME
                        
# 2026-08-05 19:05:55  0.00B 声明容器运行时监听的端口
EXPOSE map[8000/tcp:{} 8002/tcp:{}]
                        
# 2026-08-05 19:05:55  0.00B 设置环境变量 LOG_JSON
ENV LOG_JSON=true
                        
# 2026-08-05 19:05:55  0.00B 设置环境变量 OH_ENABLE_VNC
ENV OH_ENABLE_VNC=false
                        
# 2026-08-05 19:05:55  0.00B 设置工作目录为/
WORKDIR /
                        
# 2026-08-05 19:05:55  0.00B 指定运行容器时使用的用户
USER openhands
                        
# 2026-08-05 19:05:55  11.53KB 复制新文件或目录到容器中
COPY --chown=openhands:openhands openhands-agent-server/openhands/agent_server/docker/wallpaper.svg /usr/share/backgrounds/xfce/xfce-shapes.svg # buildkit
                        
# 2026-08-05 19:05:55  1.35MB 执行命令并创建新的镜像层
RUN |3 USERNAME=openhands RELEASE_TAG=openvscode-server-v1.98.2 RELEASE_ORG=gitpod-io /bin/bash -euo pipefail -c chown -R ${USERNAME}:${USERNAME} ${NOVNC_WEB} # buildkit
                        
# 2026-08-05 19:05:55  0.00B 设置环境变量 NOVNC_WEB NOVNC_PORT DISPLAY VNC_GEOMETRY CHROME_BIN PUPPETEER_EXECUTABLE_PATH CHROMIUM_FLAGS
ENV NOVNC_WEB=/usr/share/novnc NOVNC_PORT=8002 DISPLAY=:1 VNC_GEOMETRY=1280x800 CHROME_BIN=/usr/bin/chromium PUPPETEER_EXECUTABLE_PATH=/usr/bin/chromium CHROMIUM_FLAGS=--no-sandbox --disable-dev-shm-usage --disable-gpu
                        
# 2026-08-05 19:05:55  912.01MB 执行命令并创建新的镜像层
RUN |3 USERNAME=openhands RELEASE_TAG=openvscode-server-v1.98.2 RELEASE_ORG=gitpod-io /bin/bash -euo pipefail -c set -eux;   apt-get update;   apt-get install -y --no-install-recommends     tigervnc-standalone-server xfce4 dbus-x11 novnc websockify     $(if grep -q "ubuntu" /etc/os-release; then echo "chromium-browser"; else echo "chromium"; fi);   apt-get clean; rm -rf /var/lib/apt/lists/* # buildkit
                        
# 2026-08-05 19:05:22  41.87MB 执行命令并创建新的镜像层
RUN |3 USERNAME=openhands RELEASE_TAG=openvscode-server-v1.98.2 RELEASE_ORG=gitpod-io /bin/bash -euo pipefail -c set -eux;     mkdir -p -m 755 /etc/apt/keyrings;     wget -nv -O /etc/apt/keyrings/githubcli-archive-keyring.gpg         https://cli.github.com/packages/githubcli-archive-keyring.gpg;     chmod go+r /etc/apt/keyrings/githubcli-archive-keyring.gpg;     echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/githubcli-archive-keyring.gpg] https://cli.github.com/packages stable main"         > /etc/apt/sources.list.d/github-cli.list;     apt-get update;     apt-get install -y gh;     apt-get clean;     rm -rf /var/lib/apt/lists/* # buildkit
                        
# 2026-08-05 19:05:18  14.00B 执行命令并创建新的镜像层
RUN |3 USERNAME=openhands RELEASE_TAG=openvscode-server-v1.98.2 RELEASE_ORG=gitpod-io /bin/bash -euo pipefail -c mkdir -p /etc/docker &&     echo '{"mtu": 1450}' > /etc/docker/daemon.json # buildkit
                        
# 2026-08-05 19:05:18  426.74MB 执行命令并创建新的镜像层
RUN |3 USERNAME=openhands RELEASE_TAG=openvscode-server-v1.98.2 RELEASE_ORG=gitpod-io /bin/bash -euo pipefail -c set -eux;     if grep -q "ubuntu" /etc/os-release; then         install -m 0755 -d /etc/apt/keyrings;         curl -fsSL https://download.docker.com/linux/ubuntu/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/ubuntu $(lsb_release -cs) stable" | tee /etc/apt/sources.list.d/docker.list > /dev/null;     else         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" | tee /etc/apt/sources.list.d/docker.list > /dev/null;     fi;     apt-get update;     apt-get install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin;     apt-get clean;     rm -rf /var/lib/apt/lists/* # buildkit
                        
# 2026-08-05 19:05:07  1.15KB 复制新文件或目录到容器中
COPY --chown=openhands:openhands /agent-server/openhands-agent-server/openhands/agent_server/vscode_extensions /openhands/.openvscode-server/extensions # buildkit
                        
# 2026-08-05 19:05:07  190.33MB 执行命令并创建新的镜像层
RUN |3 USERNAME=openhands RELEASE_TAG=openvscode-server-v1.98.2 RELEASE_ORG=gitpod-io /bin/bash -euo pipefail -c set -eux;     mkdir -p $(dirname ${OPENVSCODE_SERVER_ROOT});         arch=$(uname -m);     if [ "${arch}" = "x86_64" ]; then         arch="x64";     elif [ "${arch}" = "aarch64" ]; then         arch="arm64";     elif [ "${arch}" = "armv7l" ]; then         arch="armhf";     fi;         wget https://github.com/${RELEASE_ORG}/openvscode-server/releases/download/${RELEASE_TAG}/${RELEASE_TAG}-linux-${arch}.tar.gz;     tar -xzf ${RELEASE_TAG}-linux-${arch}.tar.gz;     if [ -d "${OPENVSCODE_SERVER_ROOT}" ]; then rm -rf "${OPENVSCODE_SERVER_ROOT}"; fi;     mv ${RELEASE_TAG}-linux-${arch} ${OPENVSCODE_SERVER_ROOT};     cp ${OPENVSCODE_SERVER_ROOT}/bin/remote-cli/openvscode-server ${OPENVSCODE_SERVER_ROOT}/bin/remote-cli/code;     rm -f ${RELEASE_TAG}-linux-${arch}.tar.gz;         chown -R ${USERNAME}:${USERNAME} ${OPENVSCODE_SERVER_ROOT} # buildkit
                        
# 2026-08-05 19:05:04  0.00B 定义构建参数
ARG RELEASE_ORG=gitpod-io
                        
# 2026-08-05 19:05:04  0.00B 定义构建参数
ARG RELEASE_TAG=openvscode-server-v1.98.2
                        
# 2026-08-05 19:05:04  0.00B 设置环境变量 EDITOR VISUAL GIT_EDITOR OPENVSCODE_SERVER_ROOT
ENV EDITOR=code VISUAL=code GIT_EDITOR=code --wait OPENVSCODE_SERVER_ROOT=/openhands/.openvscode-server
                        
# 2026-08-05 19:05:04  0.00B 指定运行容器时使用的用户
USER root
                        
# 2026-08-05 19:05:04  0.00B 定义构建参数
ARG USERNAME
                        
# 2026-08-05 19:05:04  0.00B 声明容器运行时监听的端口
EXPOSE map[8000/tcp:{}]
                        
# 2026-08-05 19:05:04  0.00B 设置环境变量 LOG_JSON
ENV LOG_JSON=true
                        
# 2026-08-05 19:05:04  0.00B 设置环境变量 OH_ENABLE_VNC
ENV OH_ENABLE_VNC=false
                        
# 2026-08-05 19:05:04  0.00B 设置环境变量 LANG
ENV LANG=C.UTF-8
                        
# 2026-08-05 19:05:04  0.00B 设置环境变量 LC_ALL
ENV LC_ALL=C.UTF-8
                        
# 2026-08-05 19:05:04  0.00B 设置工作目录为/
WORKDIR /
                        
# 2026-08-05 19:05:04  0.00B 指定运行容器时使用的用户
USER openhands
                        
# 2026-08-05 19:05:04  58.39MB 复制新文件或目录到容器中
COPY /uv /uvx /bin/ # buildkit
                        
# 2026-08-05 19:05:04  49.00B 执行命令并创建新的镜像层
RUN |6 USERNAME=openhands UID=10001 GID=10001 PORT=8000 OPENHANDS_BUILD_GIT_SHA=c1877b44129696cb99535c0e074d22a324cc7312 OPENHANDS_BUILD_GIT_REF=refs/tags/v1.40.1 /bin/bash -euo pipefail -c mkdir -p /etc/claude-code &&     echo '{"permissions":{"allow":["Edit","Read","Bash"]}}' > /etc/claude-code/managed-settings.json # buildkit
                        
# 2026-08-05 19:05:03  1.33GB 执行命令并创建新的镜像层
RUN |6 USERNAME=openhands UID=10001 GID=10001 PORT=8000 OPENHANDS_BUILD_GIT_SHA=c1877b44129696cb99535c0e074d22a324cc7312 OPENHANDS_BUILD_GIT_REF=refs/tags/v1.40.1 /bin/bash -euo pipefail -c set -ux;     mkdir -p "$ACP_NODE_DIR";     ARCH=$(uname -m);     NARCH="";     NODE_SHA256="";     case "$ARCH" in       x86_64|amd64) NARCH=x64; NODE_SHA256=69b09dba5c8dcb05c4e4273a4340db1005abeafe3927efda2bc5b249e80437ec;;       aarch64|arm64) NARCH=arm64; NODE_SHA256=08bfbf538bad0e8cbb0269f0173cca28d705874a67a22f60b57d99dc99e30050;;     esac;     NODE_TARBALL="";     if [ -z "$NARCH" ]; then       echo "Skipping ACP Node install: unsupported architecture '$ARCH'" >&2;     else       NODE_TARBALL="/tmp/node-v22.14.0-linux-${NARCH}.tar.xz";       if curl -fsSL --retry 5 --retry-delay 2 --retry-connrefused "https://nodejs.org/dist/v22.14.0/node-v22.14.0-linux-${NARCH}.tar.xz" -o "$NODE_TARBALL"          && echo "$NODE_SHA256  $NODE_TARBALL" | sha256sum -c -          && tar -xJ --strip-components=1 -C "$ACP_NODE_DIR" -f "$NODE_TARBALL"          && "$ACP_NODE_DIR/bin/node" --version; then         PATH="$ACP_NODE_DIR/bin:$PATH";         if "$ACP_NODE_DIR/bin/npm" install -g             @agentclientprotocol/claude-agent-acp@0.44.0             @agentclientprotocol/codex-acp@1.1.2             @google/gemini-cli@0.46.0; then           for bin in claude-agent-acp codex-acp gemini; do             if [ -e "$ACP_NODE_DIR/bin/$bin" ]; then               printf '#!/bin/sh\nPATH="%s/bin:$PATH" exec "%s/bin/%s" "$@"\n'                 "$ACP_NODE_DIR" "$ACP_NODE_DIR" "$bin"                 > /usr/local/bin/"$bin";               chmod +x /usr/local/bin/"$bin";             fi;           done;         else           echo "Warning: ACP npm install failed; ACP agents will not be available on this image" >&2;           rm -rf "$ACP_NODE_DIR"/*;         fi;       else         echo "Warning: ACP Node 22 runtime is not compatible with this base image (likely older glibc or musl libc); ACP agents will not be available" >&2;         rm -rf "$ACP_NODE_DIR"/*;       fi;     fi;     rm -f "$NODE_TARBALL" 2>/dev/null || true # buildkit
                        
# 2026-08-05 19:04:44  0.00B 设置环境变量 ACP_NODE_DIR
ENV ACP_NODE_DIR=/opt/acp-node
                        
# 2026-08-05 19:04:44  352.18MB 执行命令并创建新的镜像层
RUN |6 USERNAME=openhands UID=10001 GID=10001 PORT=8000 OPENHANDS_BUILD_GIT_SHA=c1877b44129696cb99535c0e074d22a324cc7312 OPENHANDS_BUILD_GIT_REF=refs/tags/v1.40.1 /bin/bash -euo pipefail -c set -eux;     if command -v apt-get >/dev/null 2>&1; then         apt-get -o Acquire::Retries=5 update;         apt-get -o Acquire::Retries=5 install -y --no-install-recommends             bash ca-certificates curl wget sudo apt-utils git jq tmux tar             build-essential coreutils util-linux procps findutils grep sed             tini apt-transport-https gnupg lsb-release xz-utils;         rm -rf /var/lib/apt/lists/*;     elif command -v apk >/dev/null 2>&1; then         apk add --no-cache             bash ca-certificates curl wget sudo git jq tmux tar build-base             coreutils util-linux procps findutils grep sed tini gnupg shadow xz;     elif command -v microdnf >/dev/null 2>&1; then         microdnf install -y             bash ca-certificates curl wget sudo git jq tmux tar make gcc gcc-c++             coreutils util-linux procps-ng findutils grep sed shadow-utils             gnupg2 xz;         microdnf clean all;     elif command -v dnf >/dev/null 2>&1; then         dnf install -y             bash ca-certificates curl wget sudo git jq tmux tar make gcc gcc-c++             coreutils util-linux procps-ng findutils grep sed shadow-utils             gnupg2 xz;         dnf clean all;     elif command -v yum >/dev/null 2>&1; then         yum install -y             bash ca-certificates curl wget sudo git jq tmux tar make gcc gcc-c++             coreutils util-linux procps-ng findutils grep sed shadow-utils             gnupg2 xz;         yum clean all;     elif command -v zypper >/dev/null 2>&1; then         zypper --non-interactive install --no-recommends             bash ca-certificates curl wget sudo git jq tmux tar make gcc gcc-c++             coreutils util-linux procps findutils grep sed shadow gpg2 xz;         zypper clean --all;     else         echo "Unsupported base image: no known package manager found" >&2;         exit 1;     fi;     grep -Eq "^[^:]*:[^:]*:${GID}:" /etc/group || groupadd -g "${GID}" "${USERNAME}";     grep -Eq "^${USERNAME}:" /etc/passwd ||         useradd -m -u "${UID}" -g "${GID}" -s /bin/bash "${USERNAME}";     usermod -aG sudo "${USERNAME}" 2>/dev/null || true;     echo "${USERNAME} ALL=(ALL) NOPASSWD:ALL" >> /etc/sudoers;     mkdir -p /workspace/project;     chown -R "${USERNAME}:${USERNAME}" /workspace # buildkit
                        
# 2026-08-05 19:04:44  0.00B 设置环境变量 OPENHANDS_BUILD_GIT_REF
ENV OPENHANDS_BUILD_GIT_REF=refs/tags/v1.40.1
                        
# 2026-08-05 19:04:44  0.00B 设置环境变量 OPENHANDS_BUILD_GIT_SHA
ENV OPENHANDS_BUILD_GIT_SHA=c1877b44129696cb99535c0e074d22a324cc7312
                        
# 2026-08-05 19:04:44  0.00B 定义构建参数
ARG OPENHANDS_BUILD_GIT_REF=unknown
                        
# 2026-08-05 19:04:44  0.00B 定义构建参数
ARG OPENHANDS_BUILD_GIT_SHA=unknown
                        
# 2026-08-05 19:04:44  0.00B 定义构建参数
ARG USERNAME UID GID PORT
                        
# 2026-07-30 00:51:16  196.78MB 执行命令并创建新的镜像层
RUN /bin/bash -euo pipefail -c pip install --no-cache-dir -U pip pipenv uv &&   curl -fsSL --compressed https://install.python-poetry.org | python - # buildkit
                        
# 2026-07-30 00:51:02  2.37MB 执行命令并创建新的镜像层
RUN /bin/bash -euo pipefail -c npm install -g corepack && corepack enable yarn # buildkit
                        
# 2026-07-30 00:51:01  196.83MB 执行命令并创建新的镜像层
RUN /bin/bash -euo pipefail -c NODE_VERSION="v22.23.2"   ARCH= && dpkgArch="$(dpkg --print-architecture)"   && case "${dpkgArch##*-}" in     amd64) ARCH='x64';;     arm64) ARCH='arm64';;     *) echo "unsupported architecture"; exit 1 ;;   esac   && for key in $(curl -sL https://raw.githubusercontent.com/nodejs/docker-node/HEAD/keys/node.keys); do     gpg --batch --keyserver hkps://keys.openpgp.org --recv-keys "$key" ||     gpg --batch --keyserver keyserver.ubuntu.com --recv-keys "$key" ;   done   && curl -fsSLO --compressed "https://nodejs.org/dist/$NODE_VERSION/node-$NODE_VERSION-linux-$ARCH.tar.xz"   && curl -fsSLO --compressed "https://nodejs.org/dist/$NODE_VERSION/SHASUMS256.txt.asc"   && gpg --batch --decrypt --output SHASUMS256.txt SHASUMS256.txt.asc   && grep " node-$NODE_VERSION-linux-$ARCH.tar.xz\$" SHASUMS256.txt | sha256sum -c -   && tar -xJf "node-$NODE_VERSION-linux-$ARCH.tar.xz" -C /usr/local --strip-components=1 --no-same-owner   && rm "node-$NODE_VERSION-linux-$ARCH.tar.xz" SHASUMS256.txt.asc SHASUMS256.txt   && ln -s /usr/local/bin/node /usr/local/bin/nodejs # buildkit
                        
# 2026-07-30 00:50:53  20.06MB 执行命令并创建新的镜像层
RUN /bin/bash -euo pipefail -c apt-get update && apt-get install --no-install-recommends -yqq libatomic1 curl gnupg2 xz-utils &&   apt-get upgrade -yqq &&   rm -rf /var/lib/apt/lists/* # buildkit
                        
# 2026-07-30 00:50:47  0.00B 设置环境变量 POETRY_HOME
ENV POETRY_HOME=/usr/local
                        
# 2026-07-30 00:50:47  8.88KB 执行命令并创建新的镜像层
RUN /bin/bash -euo pipefail -c groupadd --gid 1000 pn && useradd --uid 1000 --gid pn --shell /bin/bash --create-home pn # buildkit
                        
# 2026-07-30 00:50:47  0.00B 
SHELL [/bin/bash -euo pipefail -c]
                        
# 2026-07-30 00:50:47  0.00B 添加元数据标签
LABEL org.opencontainers.image.authors=Nikolai R Kristiansen <nikolaik@gmail.com>
                        
# 2026-07-14 10:11:07  0.00B 设置默认要执行的命令
CMD ["python3"]
                        
# 2026-07-14 10:11:07  36.00B 执行命令并创建新的镜像层
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-07-14 10:11:06  35.48MB 执行命令并创建新的镜像层
RUN /bin/sh -c set -eux; 		savedAptMark="$(apt-mark showmanual)"; 	apt-get update; 	apt-get install -y --no-install-recommends 		dpkg-dev 		gcc 		gnupg 		libbluetooth-dev 		libbz2-dev 		libc6-dev 		libdb-dev 		libffi-dev 		libgdbm-dev 		liblzma-dev 		libncursesw5-dev 		libreadline-dev 		libsqlite3-dev 		libssl-dev 		make 		tk-dev 		uuid-dev 		wget 		xz-utils 		zlib1g-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-optimizations 		--enable-option-checking=fatal 		--enable-shared 		$(test "${gnuArch%%-*}" != 'riscv64' && echo '--with-lto') 		--with-ensurepip 	; 	nproc="$(nproc)"; 	EXTRA_CFLAGS="$(dpkg-buildflags --get CFLAGS)"; 	LDFLAGS="$(dpkg-buildflags --get LDFLAGS)"; 	LDFLAGS="${LDFLAGS:-} -Wl,--strip-all"; 	arch="$(dpkg --print-architecture)"; arch="${arch##*-}"; 	case "$arch" in 		amd64|arm64) 			EXTRA_CFLAGS="${EXTRA_CFLAGS:-} -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer"; 			;; 		i386) 			;; 		*) 			EXTRA_CFLAGS="${EXTRA_CFLAGS:-} -fno-omit-frame-pointer"; 			;; 	esac; 	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 '{}' + 	; 		ldconfig; 		apt-mark auto '.*' > /dev/null; 	apt-mark manual $savedAptMark; 	find /usr/local -type f -executable -not \( -name '*tkinter*' \) -exec ldd '{}' ';' 		| awk '/=>/ { so = $(NF-1); if (index(so, "/usr/local/") == 1) { next }; gsub("^/(usr/)?", "", so); printf "*%s\n", so }' 		| sort -u 		| xargs -rt dpkg-query --search 		| awk 'sub(":$", "", $1) { print $1 }' 		| sort -u 		| xargs -r apt-mark manual 	; 	apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false; 	apt-get dist-clean; 		export PYTHONDONTWRITEBYTECODE=1; 	python3 --version; 	pip3 --version # buildkit
                        
# 2026-07-14 10:00:10  0.00B 设置环境变量 PYTHON_SHA256
ENV PYTHON_SHA256=639e43243c620a308f968213df9e00f2f8f62332f7adbaa7a7eeb9783057c690
                        
# 2026-07-14 10:00:10  0.00B 设置环境变量 PYTHON_VERSION
ENV PYTHON_VERSION=3.13.14
                        
# 2026-07-14 10:00:10  0.00B 设置环境变量 GPG_KEY
ENV GPG_KEY=7169605F62C751356D054A26A821E680E5FA6305
                        
# 2026-07-14 10:00:10  3.81MB 执行命令并创建新的镜像层
RUN /bin/sh -c set -eux; 	apt-get update; 	apt-get install -y --no-install-recommends 		ca-certificates 		netbase 		tzdata 	; 	apt-get dist-clean # buildkit
                        
# 2026-07-14 10:00:10  0.00B 设置环境变量 PATH
ENV PATH=/usr/local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
                        
# 2026-07-13 08:00:00  78.62MB 
# debian.sh --arch 'amd64' out/ 'trixie' '@1783900800'
                        
                    

镜像信息

{
    "Id": "sha256:1fa4b32949567cf36ffa9be5b45677d043406651ddd2f2fc15065ee6a67a6f9a",
    "RepoTags": [
        "ghcr.io/openhands/agent-canvas:1.12.0",
        "swr.cn-north-4.myhuaweicloud.com/ddn-k8s/ghcr.io/openhands/agent-canvas:1.12.0"
    ],
    "RepoDigests": [
        "ghcr.io/openhands/agent-canvas@sha256:2c31423cdc1ec6007959790535682f3f7a1c141cd5b9d66e1344ac013d31223b",
        "swr.cn-north-4.myhuaweicloud.com/ddn-k8s/ghcr.io/openhands/agent-canvas@sha256:01e7f19113486da170fbeabecb8fdf4a81b926f696b87a39e7799bd225e63ba2"
    ],
    "Parent": "",
    "Comment": "buildkit.dockerfile.v0",
    "Created": "2026-08-07T19:35:08.297595608Z",
    "Container": "",
    "ContainerConfig": null,
    "DockerVersion": "",
    "Author": "",
    "Config": {
        "Hostname": "",
        "Domainname": "",
        "User": "openhands",
        "AttachStdin": false,
        "AttachStdout": false,
        "AttachStderr": false,
        "ExposedPorts": {
            "8000/tcp": {},
            "8002/tcp": {}
        },
        "Tty": false,
        "OpenStdin": false,
        "StdinOnce": false,
        "Env": [
            "PATH=/usr/local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin",
            "GPG_KEY=7169605F62C751356D054A26A821E680E5FA6305",
            "PYTHON_VERSION=3.13.14",
            "PYTHON_SHA256=639e43243c620a308f968213df9e00f2f8f62332f7adbaa7a7eeb9783057c690",
            "POETRY_HOME=/usr/local",
            "OPENHANDS_BUILD_GIT_SHA=c1877b44129696cb99535c0e074d22a324cc7312",
            "OPENHANDS_BUILD_GIT_REF=refs/tags/v1.40.1",
            "ACP_NODE_DIR=/opt/acp-node",
            "LC_ALL=C.UTF-8",
            "LANG=C.UTF-8",
            "OH_ENABLE_VNC=false",
            "LOG_JSON=true",
            "EDITOR=code",
            "VISUAL=code",
            "GIT_EDITOR=code --wait",
            "OPENVSCODE_SERVER_ROOT=/openhands/.openvscode-server",
            "NOVNC_WEB=/usr/share/novnc",
            "NOVNC_PORT=8002",
            "DISPLAY=:1",
            "VNC_GEOMETRY=1280x800",
            "CHROME_BIN=/usr/bin/chromium",
            "PUPPETEER_EXECUTABLE_PATH=/usr/bin/chromium",
            "CHROMIUM_FLAGS=--no-sandbox --disable-dev-shm-usage --disable-gpu",
            "LD_LIBRARY_PATH=/usr/lib/aarch64-linux-gnu:/usr/lib:/usr/lib/x86_64-linux-gnu:",
            "AGENT_CANVAS_BUILD_GIT_SHA=4d0fe4983b6b8e52c104c7ffa4b7be8c7ab5a364",
            "AGENT_CANVAS_BUILD_GIT_REF=refs/tags/v1.12.0",
            "AGENT_CANVAS_BASE_PATH=/canvas",
            "VITE_POSTHOG_API_KEY=phc_BgzfxKdgsYMLFTmJqt424ZoyVHvKFfrwttLimzdYTKFK"
        ],
        "Cmd": null,
        "Image": "",
        "Volumes": {
            "/home/openhands/.openhands": {},
            "/projects": {}
        },
        "WorkingDir": "/",
        "Entrypoint": [
            "tini",
            "--",
            "/opt/agent-canvas/entrypoint.sh"
        ],
        "OnBuild": null,
        "Labels": {
            "org.opencontainers.image.authors": "Nikolai R Kristiansen \u003cnikolaik@gmail.com\u003e",
            "org.opencontainers.image.description": "All-in-one agent-canvas: Agent Server + Automation + Frontend",
            "org.opencontainers.image.revision": "4d0fe4983b6b8e52c104c7ffa4b7be8c7ab5a364",
            "org.opencontainers.image.source": "https://github.com/OpenHands/OpenHands",
            "org.opencontainers.image.title": "agent-canvas",
            "org.opencontainers.image.version": "1.12.0"
        },
        "Shell": [
            "/bin/bash",
            "-euo",
            "pipefail",
            "-c"
        ]
    },
    "Architecture": "amd64",
    "Os": "linux",
    "Size": 4361230691,
    "GraphDriver": {
        "Data": {
            "LowerDir": "/var/lib/docker/overlay2/e46303876537af6901caeaf9799108c369aee5e40c6bc68f375936d8faf92376/diff:/var/lib/docker/overlay2/bb213e93691644ec97793501442be4fbd949c8320771483117a44d5b8e76947d/diff:/var/lib/docker/overlay2/2b31033da9bc14e0a819706d7fc71aad65bea66092437b6022104d88ef1bb203/diff:/var/lib/docker/overlay2/c8a2fd07fd31712666767272c8626360b46e3c9fbc8f7b614c48f88acf3cd85d/diff:/var/lib/docker/overlay2/64a183a2365f20dd12784c9e19a7ca184d8f9d9757c90308eb5c490ba3293a91/diff:/var/lib/docker/overlay2/3119c949ed9814197852491de1507b4e2513ac0658d02409933ccac5ef73ee64/diff:/var/lib/docker/overlay2/de0a238d7b0ee3c00129abee91b1d7c22a3c5bcd6027cd152d42de1a300b6003/diff:/var/lib/docker/overlay2/12295de1d306624d293c35e67be006ff7b276d1ac2f5c428b3f3ed300d4e74d6/diff:/var/lib/docker/overlay2/d116a0547bd6339426f4d6ecb9adf2e998a426800b9092101ccee956df5f65dc/diff:/var/lib/docker/overlay2/59a08ee2cc51d92aedbb11133dc6fa36d068288bb72cc11fc6bb1032733b4dbb/diff:/var/lib/docker/overlay2/573d0c389fd225862c684ef91f82dd65f9ab58a2cb39975b44756c2c01688e48/diff:/var/lib/docker/overlay2/03f8470132456345f4554d1607aa1e8c916076f94ba0eb010133649f982de094/diff:/var/lib/docker/overlay2/d1c79c35a6eea1ced8946a69b35bd91e27921eff18af6e8d3717d1c98c765c12/diff:/var/lib/docker/overlay2/86fb292f974a41cd04d2a672043d0004bfba84dc96fd1908e6ee8122e06d4fb5/diff:/var/lib/docker/overlay2/477ab9305d6cb59b6b26b9b95a6edbb5dd44a5bdeeb187e4f9849a71b4b348dd/diff:/var/lib/docker/overlay2/6177964097f18998eab6e7001289bf2be793c1307095c8179445d3accdd1039a/diff:/var/lib/docker/overlay2/a630aa4cbd65bef0574946c4fb851bee7a36f3e088ab2fe73d2bbceefdf6cf7e/diff:/var/lib/docker/overlay2/d6374227d01f2d76c6c3b1cf91f90ddb7bec234ac291b70b7bab9c8b5ffd29ae/diff:/var/lib/docker/overlay2/bc742e276bf3005e4d1865a5964e77bd915dd79c175836f923d85fe65131cb6f/diff:/var/lib/docker/overlay2/ebc6bb20110db219b0392ed2d10b9a5d7f06a896d315380309ef7893a760107c/diff:/var/lib/docker/overlay2/92ead988618f5c9d878b3d97cddcbeeba21b85b2559e18b2cd8eb5e9a989156d/diff:/var/lib/docker/overlay2/3e03541ce06808312cd1da1f4c5a6ed433785f9cf9ed18d4398cc51d9a08a4b4/diff:/var/lib/docker/overlay2/73a8c1770d61a289576d40b2c1c66923b49ccd6eba73a46a7f2dcb7e37d12352/diff:/var/lib/docker/overlay2/82fa15b93cf1ae757a9bc0314a40ea88dbc7103479f7f964b3ce757a60deb2f3/diff:/var/lib/docker/overlay2/cfb3f52983afae387a9b3eb61769acf19480ba1c27308a71c698d82aa98bcbda/diff:/var/lib/docker/overlay2/7e650b9c8abc0e2eb01c3dab3eaf74848b409326417bf49937a8bd0c4bcd12ee/diff:/var/lib/docker/overlay2/c5b87d6c2b7dbb8a6106a0a340d016d5225aef0b4429be4792ddba4947ec1820/diff:/var/lib/docker/overlay2/28704eff93f596335e8e1e25fa7e718d40192d3ed12372a340cb025cc01351ce/diff:/var/lib/docker/overlay2/344b06baf4bacb1713a5bfcbb6b29867c7bbe38ed5b63f2102dd8d81cc9313aa/diff:/var/lib/docker/overlay2/4048643ff48f20fbda21810950bb9a5d34eb961689ca66e43c55f365b5177657/diff:/var/lib/docker/overlay2/1e566eb8871c681a215a89764bfdf78d0d91a9439f3bf327630aab1f5d26ea7b/diff:/var/lib/docker/overlay2/d41253ab5bbbc560a444a891bba905f56325446665f9bc8d26127bb7c76f651f/diff:/var/lib/docker/overlay2/0905900c22cbfd2a4b0bf27ee50e16650a53140c64c186596b459ce62e3c6ef8/diff:/var/lib/docker/overlay2/f7ff084115087dce35037a576275e7f722e27e5463a3889e9386190a1cdf67a2/diff:/var/lib/docker/overlay2/fd549121ac40b4871c5d48c8d969f3dd7a2e42de2fbd72bd25c864944c42c53d/diff:/var/lib/docker/overlay2/58d6eae774330b70948d953857587170f3cfccf2c69afedc980996f8f0a26687/diff:/var/lib/docker/overlay2/4b821558455700d784e75b04c4e76dea61ac887c369a72a00c66cc70a946da77/diff:/var/lib/docker/overlay2/373824bebbe9f5709640427b60c7260dfbf20dcbd92babe51f094300a2c5d54b/diff:/var/lib/docker/overlay2/f24ade665d94e6f8ff29f06c32243f0eb4e1ac8da4feddb1b4ad6020791e6a90/diff",
            "MergedDir": "/var/lib/docker/overlay2/47abd97061e5c7d0e7713789e8ebc53bc368e9abced13b6451d94712a1194ba0/merged",
            "UpperDir": "/var/lib/docker/overlay2/47abd97061e5c7d0e7713789e8ebc53bc368e9abced13b6451d94712a1194ba0/diff",
            "WorkDir": "/var/lib/docker/overlay2/47abd97061e5c7d0e7713789e8ebc53bc368e9abced13b6451d94712a1194ba0/work"
        },
        "Name": "overlay2"
    },
    "RootFS": {
        "Type": "layers",
        "Layers": [
            "sha256:f2ec4de84f559f5c7be4233b589cdbdbb5507807e05621b77320edd55a1f2a0f",
            "sha256:5b21fa92fbc32b17b9dcc0b309e2f3a61dadd435438f81612e72350dd36e2d60",
            "sha256:6172d147f215473d048503aa932b65dc0c16e79ab0af6f9b5ec0ef83fd9d026e",
            "sha256:f60c57f8bc619df480314a980724b4443dd4b2bc49451e9ee2880481c1b834fa",
            "sha256:483804f5d1e0471ee1cca29b2251343a08cf1e6a0f1329c17b816aa5bab1be28",
            "sha256:2e5e378b6d6961f590224f67f1932de7bdcb3d379273589a9f2d81f9b59ef09d",
            "sha256:e24655058e794a0849c90952d7062a1152a849b3ee1bc4d77b813b7b1bdec01f",
            "sha256:3fef013270980004b952db6c5972a50330df8851fb998c2cadb36badd853b651",
            "sha256:f356ded1ce0cc566e6e2be1821cd0a2a0ba8c6078c922767f1a4e40d85951d53",
            "sha256:15dc9bb19148a4363b5ccbd464d4773f9e478afe9f9a9a27ddd60bd8cea9c6b1",
            "sha256:ce26f2d871bd45a55fdfb9f4d9682462245d45260d6e792c1f2ae93cce0fac66",
            "sha256:e3cb27f4e1582667944952b805293982627c6c0fbda5727d8d2820e9e3be621a",
            "sha256:e55a48e3c71103e03f6df9839c156dd18dd5c5be0c6e0ff4a24fb45ca3832a66",
            "sha256:893fe3e27aaf701538307ad990834c53ae591f175b206f513166e28e051a3b12",
            "sha256:3829d6469da69cca32b98d85ff02f4c5cddf7d1fc6bdb7a373d3cf0499812b2e",
            "sha256:c55c0320a25fd48ed8b78a01900c586d972b07ac16a3b68524682b93cb3a76d0",
            "sha256:33940388a56c27b2516e2a71b6cb9704ed6b0e6525ba194c03e4a103af74a98f",
            "sha256:56ec42a6c5beaa0e96993d9be625cbcfcdbaac4ff1a3a0c67cd7280e9a3e560c",
            "sha256:bdc512aceeffc24ea0bd65eb75140bd19fa6c7d5dca24c3d65ddf49369056260",
            "sha256:05147a1e6c4735747f39fbba3ace08415b952a6e10d06c1ff52fd7a7f4dae197",
            "sha256:7f38ca2fa43e7d910777c546d7464fd604c0217941a3856560c32812a3b7363d",
            "sha256:bbf7ebc4e20a089d08446e0a48851b270ec32dd35d4acb082f0caacc71e538ce",
            "sha256:5f70bf18a086007016e948b04aed3b82103a36bea41755b6cddfaf10ace3c6ef",
            "sha256:35410a61a7a99d39602475570743f57d90ab725e2545f21a3a57acfbca12f18a",
            "sha256:4b9d7e43bf27830e2fc20f9df047fb44b60c2162e4198a7ff3aa72a9a70c7625",
            "sha256:5f70bf18a086007016e948b04aed3b82103a36bea41755b6cddfaf10ace3c6ef",
            "sha256:8c6b6afc1870eb2ed67eddf08db3f86a66e809c2a5893aabaa373485c58bb8d0",
            "sha256:6ee43177d1772699b7ed1e3739918945d0e81c831958d502c761d4341d579545",
            "sha256:2d898a042369cb97127fb8c439ea6b0b3b7ce184516b1965af45b67964860f9c",
            "sha256:b696e08ff69487d860c0b17b3227b6d09b92cdea478476ee81e4f1da6232db93",
            "sha256:f601ea511b70781057af31dfee7d31c543aac607208748d3f3bc407cb85217fe",
            "sha256:39c61be1ab1b3c2fee063eddf85c1dbb3500ce6007c378c9d03ab5fcdd79cb1f",
            "sha256:c92f1f12cf1e40a55a5ba89d2f1d698696c6bdbf2b4c5127ee17b141d1708958",
            "sha256:7f970135562ab30aff5c61c4d31243be407151766521ccac8c6747155d3112e8",
            "sha256:afeea076ddcd613d35de24d1e684e7996b0183a5d1a7d20cc33fa1241fc128e7",
            "sha256:e94cf916b5a76a25d88deda502ffd132cfc048e3505311a8d90ff9bc4335dcf9",
            "sha256:06ddab41b53506ec501cf9fab9d08f5ad82b7a3211d46cd26bc56ef97af607c3",
            "sha256:c3c766dbbfa7400c35028377b7888eb0a6d77c674cb105d3b250b42d44c1ff1c",
            "sha256:b5646b59abaf7211bd018acb3cb0e628abe0171c616df02b83463861a0813060",
            "sha256:fdbf2081fd0020d662cffc863d5ec2e2867e9d12789e29ef61703880dda536de"
        ]
    },
    "Metadata": {
        "LastTagTime": "2026-08-11T10:36:43.842532019+08:00"
    }
}

更多版本

ghcr.io/openhands/agent-canvas:1.12.0

linux/amd64 ghcr.io4.36GB2026-08-11 10:39
11
检测到您正在使用广告拦截插件,本站为公益站点,依赖广告维持运转 🙏 查看如何关闭 ×