界面:DockerDesktopClient

为了向后兼容,这里融合了 Docker Desktop API 客户端的 v0 和 v1 接口。除非您正在使用旧版扩展,否则请改用 v1 类型。

属性

backend

只读 backend: undefined | BackendV0

window.ddClient.backend 对象可用于与扩展元数据 vm 部分中定义的后端进行通信。客户端已连接到后端。

警告

它将在未来版本中移除。请改用 extension

继承自

DockerDesktopClientV0.backend


extension

只读 extension: Extension

ddClient.extension 对象可用于与扩展元数据 vm 部分中定义的后端进行通信。客户端已连接到后端。

继承自

DockerDesktopClientV1.extension


desktopUI

只读 desktopUI: DesktopUI

继承自

DockerDesktopClientV1.desktopUI


host

只读 host: Host

继承自

DockerDesktopClientV1.host


docker

只读 docker: Docker

继承自

DockerDesktopClientV1.docker

容器方法

listContainers

listContainers(options): Promise<unknown>

获取正在运行的容器列表(与docker ps相同)。

默认情况下,这不会列出已停止的容器。您可以使用选项{"all": true}来列出所有正在运行和已停止的容器。

const containers = await window.ddClient.listContainers();

警告

它将在未来版本中移除。请改用 listContainers

参数

名称类型描述
optionsnever(可选)。类似于 JSON 的{ "all": true, "limit": 10, "size": true, "filters": JSON.stringify({ status: ["exited"] }), } 有关不同属性的更多信息,请参阅 Docker API 端点文档

返回

Promise<unknown>

继承自

DockerDesktopClientV0.listContainers


镜像方法

listImages

listImages(options): Promise<unknown>

获取镜像列表

const images = await window.ddClient.listImages();

警告

它将在未来版本中移除。请改用 listImages

参数

名称类型描述
optionsnever(可选)。类似于 JSON 的{ "all": true, "filters": JSON.stringify({ dangling: ["true"] }), "digests": true } 有关不同属性的更多信息,请参阅 Docker API 端点文档

返回

Promise<unknown>

继承自

DockerDesktopClientV0.listImages


navigateToContainers(): void

导航到 Docker Desktop 中的容器窗口。

window.ddClient.navigateToContainers();

警告

它将在未来版本中移除。请改用 viewContainers

返回

void

继承自

DockerDesktopClientV0.navigateToContainers


navigateToContainer(id): Promise<any>

导航到 Docker Desktop 中的容器窗口。

await window.ddClient.navigateToContainer(id);

警告

它将在未来版本中移除。

参数

名称类型描述
idstring完整的容器 ID,例如 46b57e400d801762e9e115734bf902a2450d89669d85881058a46136520aca28。您可以使用--no-trunc标志作为docker ps命令的一部分来显示完整的容器 ID。

返回

Promise<any>

如果容器不存在,则此 Promise 将失败。

继承自

DockerDesktopClientV0.navigateToContainer


navigateToContainerLogs(id): Promise<any>

导航到 Docker Desktop 中的容器日志窗口。

await window.ddClient.navigateToContainerLogs(id);

警告

它将在未来版本中移除。

参数

名称类型描述
idstring完整的容器 ID,例如 46b57e400d801762e9e115734bf902a2450d89669d85881058a46136520aca28。您可以使用--no-trunc标志作为docker ps命令的一部分来显示完整的容器 ID。

返回

Promise<any>

如果容器不存在,则此 Promise 将失败。

继承自

DockerDesktopClientV0.navigateToContainerLogs


navigateToContainerInspect(id): Promise<any>

导航到 Docker Desktop 中的容器检查窗口。

await window.ddClient.navigateToContainerInspect(id);

警告

它将在未来版本中移除。

参数

名称类型描述
idstring完整的容器 ID,例如 46b57e400d801762e9e115734bf902a2450d89669d85881058a46136520aca28。您可以使用--no-trunc标志作为docker ps命令的一部分来显示完整的容器 ID。

返回

Promise<any>

如果容器不存在,则此 Promise 将失败。

继承自

DockerDesktopClientV0.navigateToContainerInspect


navigateToContainerStats(id): Promise<any>

导航到容器统计信息以查看 CPU、内存、磁盘读/写和网络 I/O 使用情况。

await window.ddClient.navigateToContainerStats(id);

警告

它将在未来版本中移除。

参数

名称类型描述
idstring完整的容器 ID,例如 46b57e400d801762e9e115734bf902a2450d89669d85881058a46136520aca28。您可以使用--no-trunc标志作为docker ps命令的一部分来显示完整的容器 ID。

返回

Promise<any>

如果容器不存在,则此 Promise 将失败。

继承自

DockerDesktopClientV0.navigateToContainerStats


navigateToImages(): void

导航到 Docker Desktop 中的镜像窗口。

await window.ddClient.navigateToImages(id);

警告

它将在未来版本中移除。请改用 viewImages

返回

void

继承自

DockerDesktopClientV0.navigateToImages


navigateToImage(id, tag): Promise<any>

导航到 Docker Desktop 中由idtag引用的特定镜像。在此导航路径中,您可以找到镜像层、命令、创建时间和大小。

await window.ddClient.navigateToImage(id, tag);

警告

它将在未来版本中移除。请改用 viewImage

参数

名称类型描述
idstring完整的镜像 ID(包括 sha),例如 sha256:34ab3ae068572f4e85c448b4035e6be5e19cc41f69606535cd4d768a63432673
tagstring镜像的标签,例如latest0.0.1等。

返回

Promise<any>

如果容器不存在,则此 Promise 将失败。

继承自

DockerDesktopClientV0.navigateToImage


navigateToVolumes(): void

导航到 Docker Desktop 中的卷窗口。

await window.ddClient.navigateToVolumes();

警告

它将在未来版本中移除。请改用 viewVolumes

返回

void

继承自

DockerDesktopClientV0.navigateToVolumes


navigateToVolume(volume): void

导航到 Docker Desktop 中的特定卷。

window.ddClient.navigateToVolume(volume);

警告

它将在未来版本中移除。请改用 viewVolume

参数

名称类型描述
volumestring卷的名称,例如my-volume

返回

void

继承自

DockerDesktopClientV0.navigateToVolume


navigateToDevEnvironments(): void

导航到 Docker Desktop 中的开发环境窗口。

window.ddClient.navigateToDevEnvironments();

警告

它将在未来版本中移除。请改用 viewDevEnvironments

返回

void

继承自

DockerDesktopClientV0.navigateToDevEnvironments


其他方法

execHostCmd

execHostCmd(cmd): Promise< ExecResultV0>

您可以运行扩展元数据主机部分中定义的二进制文件。

window.ddClient.execHostCmd(`cliShippedOnHost xxx`).then((cmdResult: any) => {
 console.log(cmdResult);
});

警告

它将在未来版本中移除。请改用 exec

参数

名称类型描述
cmdstring要执行的命令。

返回

Promise< ExecResultV0>

继承自

DockerDesktopClientV0.execHostCmd


spawnHostCmd

spawnHostCmd(cmd, args, callback): void

在您的主机上调用扩展二进制文件并获取输出流。

window.ddClient.spawnHostCmd(
  `cliShippedOnHost`,
  [`arg1`, `arg2`],
  (data: any, err: any) => {
    console.log(data.stdout, data.stderr);
    // Once the command exits we get the status code
    if (data.code) {
      console.log(data.code);
    }
  }
);

警告

它将在未来版本中移除。请改用 exec

参数

名称类型描述
cmdstring要执行的命令。
argsstring[]要执行的命令的参数。
callback(data: any, error: any) => void用于监听命令输出数据和错误的回调函数。

返回

void

继承自

DockerDesktopClientV0.spawnHostCmd


execDockerCmd

execDockerCmd(cmd, ...args): Promise< ExecResultV0>

您也可以直接执行 Docker 二进制文件。

const output = await window.ddClient.execDockerCmd("info");

警告

它将在未来版本中移除。请改用 exec

参数

名称类型描述
cmdstring要执行的命令。
...argsstring[]要执行的命令的参数。

返回

Promise< ExecResultV0>

结果将包含执行命令的标准输出和标准错误

{
  "stderr": "...",
  "stdout": "..."
}

为方便起见,命令结果对象还具有根据输出格式轻松解析它的方法

  • output.lines(): string[] 拆分输出行。
  • output.parseJsonObject(): any 解析格式良好的 JSON 输出。
  • output.parseJsonLines(): any[] 将每行输出解析为 JSON 对象。

如果命令的输出过长,或者您需要将输出作为流获取,则可以使用

  • spawnDockerCmd 函数
window.ddClient.spawnDockerCmd("logs", ["-f", "..."], (data, error) => {
  console.log(data.stdout);
});

继承自

DockerDesktopClientV0.execDockerCmd


spawnDockerCmd

spawnDockerCmd(cmd, args, callback): void

警告

它将在未来版本中移除。请改用 exec

参数

名称类型
cmdstring
argsstring[]
callback(data: any, error: any) => void

返回

void

继承自

DockerDesktopClientV0.spawnDockerCmd


openExternal

openExternal(url): void

使用系统默认浏览器打开外部 URL。

window.ddClient.openExternal("https://dockerd.com.cn");

警告

它将在未来版本中移除。请改用 openExternal

参数

名称类型描述
urlstring浏览器打开的 URL(必须具有协议httphttps)。

返回

void

继承自

DockerDesktopClientV0.openExternal


提示消息方法

toastSuccess

toastSuccess(msg): void

显示成功类型的提示消息。

window.ddClient.toastSuccess("message");

警告`

此功能将在未来版本中移除。请使用 success 代替。

参数

名称类型描述
msgstring在吐司消息中显示的消息。

返回

void

继承自

DockerDesktopClientV0.toastSuccess


toastWarning

toastWarning(msg): void

显示警告类型的吐司消息。

window.ddClient.toastWarning("message");

警告

此功能将在未来版本中移除。请使用 warning 代替。

参数

名称类型描述
msgstring在吐司消息中显示的消息。

返回

void

继承自

DockerDesktopClientV0.toastWarning


toastError

toastError(msg): void

显示错误类型的吐司消息。

window.ddClient.toastError("message");

警告

此功能将在未来版本中移除。请使用 error 代替。

参数

名称类型描述
msgstring在吐司消息中显示的消息。

返回

void

继承自

DockerDesktopClientV0.toastError