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。
参数
名称 | 类型 | 描述 |
---|---|---|
options | never | (可选)。一个 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。
参数
名称 | 类型 | 描述 |
---|---|---|
options | never | (可选)。一个 JSON 对象,例如 { "all": true, "filters": JSON.stringify({ dangling: ["true"] }), "digests": true } 有关不同属性的更多信息,请参阅 Docker API 端点文档。 |
返回值
Promise
<unknown
>
继承自
DockerDesktopClientV0.listImages
导航方法
navigateToContainers
▸ navigateToContainers(): void
导航到 Docker Desktop 中的容器窗口。
window.ddClient.navigateToContainers();
警告
它将在未来的版本中移除。请改用 viewContainers。
返回值
void
继承自
DockerDesktopClientV0.navigateToContainers
navigateToContainer
▸ navigateToContainer(id
): Promise
<any
>
导航到 Docker Desktop 中的容器窗口。
await window.ddClient.navigateToContainer(id);
警告
它将在未来的版本中移除。
参数
名称 | 类型 | 描述 |
---|---|---|
id | string | 完整的容器 ID,例如 46b57e400d801762e9e115734bf902a2450d89669d85881058a46136520aca28 。你可以使用 docker ps 命令中的 --no-trunc 标志来显示完整的容器 ID。 |
返回值
Promise
<any
>
如果容器不存在,Promise 将会失败。
继承自
DockerDesktopClientV0.navigateToContainer
navigateToContainerLogs
▸ navigateToContainerLogs(id
): Promise
<any
>
导航到 Docker Desktop 中的容器日志窗口。
await window.ddClient.navigateToContainerLogs(id);
警告
它将在未来的版本中移除。
参数
名称 | 类型 | 描述 |
---|---|---|
id | string | 完整的容器 ID,例如 46b57e400d801762e9e115734bf902a2450d89669d85881058a46136520aca28 。你可以使用 docker ps 命令中的 --no-trunc 标志来显示完整的容器 ID。 |
返回值
Promise
<any
>
如果容器不存在,Promise 将会失败。
继承自
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
>
如果容器不存在,Promise 将会失败。
继承自
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
>
如果容器不存在,Promise 将会失败。
继承自
DockerDesktopClientV0.navigateToContainerStats
navigateToImages
▸ navigateToImages(): void
导航到 Docker Desktop 中的镜像窗口。
await window.ddClient.navigateToImages(id);
警告
它将在未来的版本中移除。请改用 viewImages。
返回值
void
继承自
DockerDesktopClientV0.navigateToImages
navigateToImage
▸ navigateToImage(id
, tag
): Promise
<any
>
导航到 Docker Desktop 中由 id
和 tag
引用的特定镜像。在此导航路径中,你可以找到镜像层、命令、创建时间和大小。
await window.ddClient.navigateToImage(id, tag);
警告
它将在未来的版本中移除。请改用 viewImage。
参数
名称 | 类型 | 描述 |
---|---|---|
id | string | 完整的镜像 ID(包括 sha),例如 sha256:34ab3ae068572f4e85c448b4035e6be5e19cc41f69606535cd4d768a63432673 。 |
tag | string | 镜像的 tag,例如 latest , 0.0.1 等。 |
返回值
Promise
<any
>
如果容器不存在,Promise 将会失败。
继承自
DockerDesktopClientV0.navigateToImage
navigateToVolumes
▸ navigateToVolumes(): void
导航到 Docker Desktop 中的卷窗口。
await window.ddClient.navigateToVolumes();
警告
它将在未来的版本中移除。请改用 viewVolumes。
返回值
void
继承自
DockerDesktopClientV0.navigateToVolumes
navigateToVolume
▸ navigateToVolume(volume
): void
导航到 Docker Desktop 中的特定卷。
window.ddClient.navigateToVolume(volume);
警告
它将在未来的版本中移除。请改用 viewVolume。
参数
名称 | 类型 | 描述 |
---|---|---|
volume | string | 卷的名称,例如 my-volume 。 |
返回值
void
继承自
DockerDesktopClientV0.navigateToVolume
navigateToDevEnvironments
▸ 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。
参数
名称 | 类型 | 描述 |
---|---|---|
cmd | string | 要执行的命令。 |
返回值
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。
参数
名称 | 类型 | 描述 |
---|---|---|
cmd | string | 要执行的命令。 |
args | string [] | 要执行命令的参数。 |
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。
参数
名称 | 类型 | 描述 |
---|---|---|
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
spawnDockerCmd
▸ spawnDockerCmd(cmd
, args
, callback
): void
警告
它将在未来的版本中移除。请改用 exec。
参数
名称 | 类型 |
---|---|
cmd | string |
args | string [] |
callback | (data : any , error : any ) => void |
返回值
void
继承自
DockerDesktopClientV0.spawnDockerCmd
openExternal
▸ openExternal(url
): void
使用系统默认浏览器打开外部 URL。
window.ddClient.openExternal("https://docker.net.cn");
警告
它将在未来的版本中移除。请改用 openExternal。
参数
名称 | 类型 | 描述 |
---|---|---|
url | string | 浏览器打开的 URL(必须使用 http 或 https 协议)。 |
返回值
void
继承自
DockerDesktopClientV0.openExternal
Toast 方法
toastSuccess
▸ toastSuccess(msg
): void
显示一个 success 类型的 toast 消息。
window.ddClient.toastSuccess("message");
警告`
它将在未来的版本中移除。请改用 success。
参数
名称 | 类型 | 描述 |
---|---|---|
msg | string | 在 toast 中显示的消息。 |
返回值
void
继承自
DockerDesktopClientV0.toastSuccess
toastWarning
▸ toastWarning(msg
): void
显示一个 warning 类型的 toast 消息。
window.ddClient.toastWarning("message");
警告
它将在未来的版本中移除。请改用 warning。
参数
名称 | 类型 | 描述 |
---|---|---|
msg | string | 在 toast 中显示的消息。 |
返回值
void
继承自
DockerDesktopClientV0.toastWarning
toastError
▸ toastError(msg
): void
显示一个 error 类型的 toast 消息。
window.ddClient.toastError("message");
警告
它将在未来的版本中移除。请改用 error。
参数
名称 | 类型 | 描述 |
---|---|---|
msg | string | 在 toast 中显示的消息。 |
返回值
void
继承自
DockerDesktopClientV0.toastError