界面:DockerDesktopClient

Docker Desktop API 客户端 v0 和 v1 接口的混合体,提供它是为了向后兼容。除非您正在处理旧版扩展,否则请使用 v1 类型。

属性

后端

Readonly 后端: undefined | BackendV0

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

警告

它将在未来的版本中被移除。请使用 扩展代替。

继承自

DockerDesktopClientV0.backend


扩展

Readonly 扩展: Extension

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

继承自

DockerDesktopClientV1.extension


DesktopUI

Readonly desktopUI: DesktopUI

继承自

DockerDesktopClientV1.desktopUI


主机

Readonly 主机: Host

继承自

DockerDesktopClientV1.host


Docker

Readonly docker: Docker

继承自

DockerDesktopClientV1.docker

容器方法

列出容器

listContainers(options): Promise<unknown>

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

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

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

警告

它将在未来的版本中被移除。请使用 listContainers 代替。

参数

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

返回

Promise<unknown>

继承自

DockerDesktopClientV0.listContainers


镜像方法

列出镜像

listImages(options): Promise<unknown>

获取镜像列表

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

警告

它将在未来的版本中被移除。请使用 listImages 代替。

参数

名称类型描述
optionsnever(可选)。一个类似 { "all": true, "filters": JSON.stringify({ dangling: ["true"] }), "digests": true } 的 JSON 有关不同属性的更多信息,请参阅 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>

如果容器不存在,则会失败的承诺。

继承自

DockerDesktopClientV0.navigateToContainer


navigateToContainerLogs(id): Promise<any>

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

await window.ddClient.navigateToContainerLogs(id);

警告

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

参数

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

返回

Promise<any>

如果容器不存在,则会失败的承诺。

继承自

DockerDesktopClientV0.navigateToContainerLogs


navigateToContainerInspect(id): Promise<any>

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

await window.ddClient.navigateToContainerInspect(id);

警告

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

参数

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

返回

Promise<any>

如果容器不存在,则会失败的承诺。

继承自

DockerDesktopClientV0.navigateToContainerInspect


navigateToContainerStats(id): Promise<any>

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

await window.ddClient.navigateToContainerStats(id);

警告

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

参数

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

返回

Promise<any>

如果容器不存在,则会失败的承诺。

继承自

DockerDesktopClientV0.navigateToContainerStats


navigateToImages(): void

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

await window.ddClient.navigateToImages(id);

警告

它将在未来的版本中移除。请使用 查看镜像代替。

返回

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>

如果容器不存在,则会失败的承诺。

继承自

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(cmd): Promise< ExecResultV0>

您可以在扩展元数据的主机部分中定义运行Binaries。

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

警告

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

参数

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

返回

Promise< ExecResultV0>

继承自

DockerDesktopClientV0.execHostCmd


生成主机命令

spawnHostCmd(cmd, args, callback): void

在您的主机上调用扩展Binaries并获取输出流。

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


执行Docker命令

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

您也可以直接执行 Docker Binaries。

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


生成Docker命令

spawnDockerCmd(cmd, args, callback): void

警告

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

参数

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

返回

void

继承自

DockerDesktopClientV0.spawnDockerCmd


打开外部

openExternal(url): void

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

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

警告

它将在未来的版本中被移除。请使用 openExternal 代替。

参数

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

返回

void

继承自

DockerDesktopClientV0.openExternal


Toast 方法

toastSuccess

toastSuccess(msg): void

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

window.ddClient.toastSuccess("message");

警告

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

参数

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

返回

void

继承自

DockerDesktopClientV0.toastSuccess


toastWarning

toastWarning(msg): void

显示一条警告类型的 toast 消息。

window.ddClient.toastWarning("message");

警告

它将在未来的版本中被移除。请使用 警告代替。

参数

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

返回

void

继承自

DockerDesktopClientV0.toastWarning


toast错误

toastError(msg): void

显示错误类型的提示消息。

window.ddClient.toastError("message");

警告

它将在未来的版本中被移除。请改用 错误

参数

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

返回

void

继承自

DockerDesktopClientV0.toastError