Interface: 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。你可以使用 docker ps 命令中的 --no-trunc 标志来显示完整的容器 ID。

返回值

Promise<any>

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

继承自

DockerDesktopClientV0.navigateToContainer


navigateToContainerLogs(id): Promise<any>

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

await window.ddClient.navigateToContainerLogs(id);

警告

它将在未来的版本中移除。

参数

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

返回值

Promise<any>

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

继承自

DockerDesktopClientV0.navigateToContainerLogs


navigateToContainerInspect(id): Promise<any>

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

await window.ddClient.navigateToContainerInspect(id);

警告

它将在未来的版本中移除。

参数

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

返回值

Promise<any>

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

继承自

DockerDesktopClientV0.navigateToContainerInspect


navigateToContainerStats(id): Promise<any>

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

await window.ddClient.navigateToContainerStats(id);

警告

它将在未来的版本中移除。

参数

名称类型描述
idstring完整的容器 ID,例如 46b57e400d801762e9e115734bf902a2450d89669d85881058a46136520aca28。你可以使用 docker ps 命令中的 --no-trunc 标志来显示完整的容器 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镜像的 tag,例如 latest, 0.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>

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

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用于监听命令输出数据和错误的 callback 函数。

返回值

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://docker.net.cn");

警告

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

参数

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

返回值

void

继承自

DockerDesktopClientV0.openExternal


Toast 方法

toastSuccess

toastSuccess(msg): void

显示一个 success 类型的 toast 消息。

window.ddClient.toastSuccess("message");

警告`

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

参数

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

返回值

void

继承自

DockerDesktopClientV0.toastSuccess


toastWarning

toastWarning(msg): void

显示一个 warning 类型的 toast 消息。

window.ddClient.toastWarning("message");

警告

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

参数

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

返回值

void

继承自

DockerDesktopClientV0.toastWarning


toastError

toastError(msg): void

显示一个 error 类型的 toast 消息。

window.ddClient.toastError("message");

警告

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

参数

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

返回值

void

继承自

DockerDesktopClientV0.toastError

页面选项