界面: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 代替。
参数
| 名称 | 类型 | 描述 |
|---|---|---|
options | never | (可选)。一个类似 { "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 代替。
参数
| 名称 | 类型 | 描述 |
|---|---|---|
options | never | (可选)。一个类似 { "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);警告
它将在未来的版本中被移除。
参数
| 名称 | 类型 | 描述 |
|---|---|---|
id | string | 完整的容器 ID,例如 46b57e400d801762e9e115734bf902a2450d89669d85881058a46136520aca28。您可以在 docker ps 命令中使用 --no-trunc 标志来显示完整的容器 ID。 |
返回
Promise<any>
如果容器不存在,则会失败的承诺。
继承自
DockerDesktopClientV0.navigateToContainer
跳转到容器日志
▸ navigateToContainerLogs(id): Promise<any>
在 Docker Desktop 中导航到容器日志窗口。
await window.ddClient.navigateToContainerLogs(id);警告
它将在未来的版本中被移除。
参数
| 名称 | 类型 | 描述 |
|---|---|---|
id | string | 完整的容器 ID,例如 46b57e400d801762e9e115734bf902a2450d89669d85881058a46136520aca28。您可以在 docker ps 命令中使用 --no-trunc 标志来显示完整的容器 ID。 |
返回
Promise<any>
如果容器不存在,则会失败的承诺。
继承自
DockerDesktopClientV0.navigateToContainerLogs
navigateToContainerInspect
▸ navigateToContainerInspect(id): Promise<any>
导航到 Docker Desktop 中的容器检查窗口。
await window.ddClient.navigateToContainerInspect(id);警告
它将在未来的版本中被移除。
参数
| 名称 | 类型 | 描述 |
|---|---|---|
id | string | 完整的容器 ID,例如 46b57e400d801762e9e115734bf902a2450d89669d85881058a46136520aca28。您可以在 docker ps 命令中使用 --no-trunc 标志来显示完整的容器 ID。 |
返回
Promise<any>
如果容器不存在,则会失败的承诺。
继承自
DockerDesktopClientV0.navigateToContainerInspect
navigateToContainerStats
▸ navigateToContainerStats(id): Promise<any>
导航到容器统计信息页面,查看 CPU、内存、磁盘读写和网络 I/O 使用情况。
await window.ddClient.navigateToContainerStats(id);警告
它将在未来的版本中被移除。
参数
| 名称 | 类型 | 描述 |
|---|---|---|
id | string | 完整的容器 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 中由 id 和 tag 引用的特定镜像。
在此导航路径中,您可以找到镜像层、命令、创建时间和大小。
await window.ddClient.navigateToImage(id, tag);警告
它将在未来的版本中被移除。请改用 viewImage。
参数
| 名称 | 类型 | 描述 |
|---|---|---|
id | string | 完整的镜像 ID(包括 sha),例如 sha256:34ab3ae068572f4e85c448b4035e6be5e19cc41f69606535cd4d768a63432673。 |
tag | string | 镜像的标签,例如 latest、0.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。
参数
| 名称 | 类型 | 描述 |
|---|---|---|
volume | string | 卷的名称,例如 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。
参数
| 名称 | 类型 | 描述 |
|---|---|---|
cmd | string | 要执行的命令。 |
返回
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。
参数
| 名称 | 类型 | 描述 |
|---|---|---|
cmd | string | 要执行的命令。 |
args | string[] | 要执行的命令的参数。 |
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。
参数
| 名称 | 类型 | 描述 |
|---|---|---|
cmd | string | 要执行的命令。 |
...args | string[] | 要执行的命令的参数。 |
返回
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。
参数
| 名称 | 类型 |
|---|---|
cmd | string |
args | string[] |
callback | (data: any, error: any) => void |
返回
void
继承自
DockerDesktopClientV0.spawnDockerCmd
打开外部
▸ openExternal(url): void
使用系统默认浏览器打开外部 URL。
window.ddClient.openExternal("https://docker.com");警告
它将在未来的版本中被移除。请使用 openExternal 代替。
参数
| 名称 | 类型 | 描述 |
|---|---|---|
url | string | 浏览器打开的 URL(必须具有协议 http 或 https)。 |
返回
void
继承自
DockerDesktopClientV0.openExternal
Toast 方法
toastSuccess
▸ toastSuccess(msg): void
显示类型为成功的提示消息。
window.ddClient.toastSuccess("message");警告
它将在未来的版本中被移除。请改用 success。
参数
| 名称 | 类型 | 描述 |
|---|---|---|
msg | string | 在提示框中显示的消息。 |
返回
void
继承自
DockerDesktopClientV0.toastSuccess
toastWarning
▸ toastWarning(msg): void
显示一条警告类型的 toast 消息。
window.ddClient.toastWarning("message");警告
它将在未来的版本中被移除。请使用 警告代替。
参数
| 名称 | 类型 | 描述 |
|---|---|---|
msg | string | 在提示框中显示的消息。 |
返回
void
继承自
DockerDesktopClientV0.toastWarning
toast错误
▸ toastError(msg): void
显示错误类型的提示消息。
window.ddClient.toastError("message");警告
它将在未来的版本中被移除。请改用 错误。
参数
| 名称 | 类型 | 描述 |
|---|---|---|
msg | string | 在提示框中显示的消息。 |
返回
void
继承自
DockerDesktopClientV0.toastError