从扩展后端使用 Docker socket


扩展可以使用 SDK 直接从前端调用 Docker 命令。

在某些情况下,从后端与 Docker Engine 交互也很有用。

扩展后端容器可以挂载 Docker socket 并使用它从扩展后端逻辑与 Docker Engine 交互。了解更多关于Docker Engine socket

但是,当从位于桌面虚拟机中的扩展容器挂载 Docker socket 时,您需要挂载 VM 内部的 Docker socket,而不是挂载主机的文件系统中的`/var/run/docker.sock`(使用主机的 Docker socket 可能会导致容器出现权限问题)。

为此,您可以使用`/var/run/docker.sock.raw`。Docker Desktop 挂载的是位于桌面 VM 中的 socket,而不是主机的 socket。

services:
  myExtension:
    image: ${DESKTOP_PLUGIN_IMAGE}
    volumes:
      - /var/run/docker.sock.raw:/var/run/docker.sock