Compartir comentarios
Las respuestas se generan en base a la documentación.

Interfaz: DockerDesktopClient

Una amalgama de las interfaces v0 y v1 del cliente de la API de Docker Desktop, provista por razones de compatibilidad con versiones anteriores. A menos que estés trabajando con una extensión heredada (legacy), usa el tipo v1 en su lugar.

Propiedades

backend

Readonly backend: undefined | BackendV0

El objeto window.ddClient.backend se puede usar para comunicarse con el backend definido en la sección vm de los metadatos de la extensión. El cliente ya está conectado al backend.

Warning

Se eliminará en una versión futura. Usa extension en su lugar.

Heredado de

DockerDesktopClientV0.backend


extension

Readonly extension: Extension

El objeto ddClient.extension se puede usar para comunicarse con el backend definido en la sección vm de los metadatos de la extensión. El cliente ya está conectado al backend.

Heredado de

DockerDesktopClientV1.extension


desktopUI

Readonly desktopUI: DesktopUI

Heredado de

DockerDesktopClientV1.desktopUI


host

Readonly host: Host

Heredado de

DockerDesktopClientV1.host


docker

Readonly docker: Docker

Heredado de

DockerDesktopClientV1.docker

Métodos de contenedor

listContainers

listContainers(options): Promise<unknown>

Obtiene la lista de contenedores en ejecución (igual que docker ps).

Por defecto, esto no enumerará los contenedores detenidos. Puedes usar la opción {"all": true} para enumerar todos los contenedores en ejecución y detenidos.

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

Se eliminará en una versión futura. Usa listContainers en su lugar.

Parámetros

NombreTipoDescripción
optionsnever(Opcional). Un JSON como { "all": true, "limit": 10, "size": true, "filters": JSON.stringify({ status: ["exited"] }), }. Para obtener más información sobre las diferentes propiedades, consulta la documentación del endpoint de la API de Docker.

Devuelve

Promise<unknown>

Heredado de

DockerDesktopClientV0.listContainers


Métodos de imagen

listImages

listImages(options): Promise<unknown>

Obtiene la lista de imágenes

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

Se eliminará en una versión futura. Usa listImages en su lugar.

Parámetros

NombreTipoDescripción
optionsnever(Opcional). Un JSON como { "all": true, "filters": JSON.stringify({ dangling: ["true"] }), "digests": true }. Para obtener más información sobre las diferentes propiedades, consulta la documentación del endpoint de la API de Docker.

Devuelve

Promise<unknown>

Heredado de

DockerDesktopClientV0.listImages


Métodos de navegación

navigateToContainers(): void

Navega a la ventana de contenedores en Docker Desktop.

window.ddClient.navigateToContainers();
Warning

Se eliminará en una versión futura. Usa viewContainers en su lugar.

Devuelve

void

Heredado de

DockerDesktopClientV0.navigateToContainers


navigateToContainer(id): Promise<any>

Navega a la ventana del contenedor en Docker Desktop.

await window.ddClient.navigateToContainer(id);
Warning

Se eliminará en una versión futura.

Parámetros

NombreTipoDescripción
idstringEl id completo del contenedor, por ejemplo, 46b57e400d801762e9e115734bf902a2450d89669d85881058a46136520aca28. Puedes usar la opción --no-trunc como parte del comando docker ps para mostrar el id completo del contenedor.

Devuelve

Promise<any>

Una promesa que falla si el contenedor no existe.

Heredado de

DockerDesktopClientV0.navigateToContainer


navigateToContainerLogs(id): Promise<any>

Navega a la ventana de logs del contenedor en Docker Desktop.

await window.ddClient.navigateToContainerLogs(id);
Warning

Se eliminará en una versión futura.

Parámetros

NombreTipoDescripción
idstringEl id completo del contenedor, por ejemplo, 46b57e400d801762e9e115734bf902a2450d89669d85881058a46136520aca28. Puedes usar la opción --no-trunc como parte del comando docker ps para mostrar el id completo del contenedor.

Devuelve

Promise<any>

Una promesa que falla si el contenedor no existe.

Heredado de

DockerDesktopClientV0.navigateToContainerLogs


navigateToContainerInspect(id): Promise<any>

Navega a la ventana de inspección (inspect) del contenedor en Docker Desktop.

await window.ddClient.navigateToContainerInspect(id);
Warning

Se eliminará en una versión futura.

Parámetros

NombreTipoDescripción
idstringEl id completo del contenedor, por ejemplo, 46b57e400d801762e9e115734bf902a2450d89669d85881058a46136520aca28. Puedes usar la opción --no-trunc como parte del comando docker ps para mostrar el id completo del contenedor.

Devuelve

Promise<any>

Una promesa que falla si el contenedor no existe.

Heredado de

DockerDesktopClientV0.navigateToContainerInspect


navigateToContainerStats(id): Promise<any>

Navega a las estadísticas del contenedor para ver el uso de CPU, memoria, lectura/escritura de disco e E/S de red.

await window.ddClient.navigateToContainerStats(id);
Warning

Se eliminará en una versión futura.

Parámetros

NombreTipoDescripción
idstringEl id completo del contenedor, por ejemplo, 46b57e400d801762e9e115734bf902a2450d89669d85881058a46136520aca28. Puedes usar la opción --no-trunc como parte del comando docker ps para mostrar el id completo del contenedor.

Devuelve

Promise<any>

Una promesa que falla si el contenedor no existe.

Heredado de

DockerDesktopClientV0.navigateToContainerStats


navigateToImages(): void

Navega a la ventana de imágenes en Docker Desktop.

await window.ddClient.navigateToImages(id);
Warning

Se eliminará en una versión futura. Usa viewImages en su lugar.

Devuelve

void

Heredado de

DockerDesktopClientV0.navigateToImages


navigateToImage(id, tag): Promise<any>

Navega a una imagen específica referenciada por id y tag en Docker Desktop. En esta ruta de navegación puedes encontrar las capas de la imagen, los comandos, la fecha de creación y el tamaño.

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

Se eliminará en una versión futura. Usa viewImage en su lugar.

Parámetros

NombreTipoDescripción
idstringEl id completo de la imagen (incluyendo el sha), por ejemplo, sha256:34ab3ae068572f4e85c448b4035e6be5e19cc41f69606535cd4d768a63432673.
tagstringLa etiqueta de la imagen, por ejemplo, latest, 0.0.1, etc.

Devuelve

Promise<any>

Una promesa que falla si el contenedor no existe.

Heredado de

DockerDesktopClientV0.navigateToImage


navigateToVolumes(): void

Navega a la ventana de volúmenes en Docker Desktop.

await window.ddClient.navigateToVolumes();
Warning

Se eliminará en una versión futura. Usa viewVolumes en su lugar.

Devuelve

void

Heredado de

DockerDesktopClientV0.navigateToVolumes


navigateToVolume(volume): void

Navega a un volumen específico en Docker Desktop.

window.ddClient.navigateToVolume(volume);
Warning

Se eliminará en una versión futura. Usa viewVolume en su lugar.

Parámetros

NombreTipoDescripción
volumestringEl nombre del volumen, por ejemplo, my-volume.

Devuelve

void

Heredado de

DockerDesktopClientV0.navigateToVolume


Otros métodos

execHostCmd

execHostCmd(cmd): Promise<ExecResultV0>

Invoca un binario en el host. El binario generalmente se incluye con tu extensión usando la sección host en los metadatos de la extensión. Ten en cuenta que las extensiones se ejecutan con derechos de acceso de usuario; esta API no está restringida a los binarios enumerados en la sección host de los metadatos de la extensión (algunas extensiones podrían instalar software durante la interacción del usuario e invocar binarios recién instalados incluso si no están enumerados en los metadatos de la extensión).

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

Se eliminará en una versión futura. Usa exec en su lugar.

Parámetros

NombreTipoDescripción
cmdstringEl comando a ejecutar.

Devuelve

Promise<ExecResultV0>

Heredado de

DockerDesktopClientV0.execHostCmd


spawnHostCmd

spawnHostCmd(cmd, args, callback): void

Invoca un binario de extensión en tu host y obtiene el flujo de salida.

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);
    }
  },
);
Warning

Se eliminará en una versión futura. Usa exec en su lugar.

Parámetros

NombreTipoDescripción
cmdstringEl comando a ejecutar.
argsstring[]Los argumentos del comando a ejecutar.
callback(data: any, error: any) => voidLa función de callback para escuchar los datos de salida del comando y los errores.

Devuelve

void

Heredado de

DockerDesktopClientV0.spawnHostCmd


execDockerCmd

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

También puedes ejecutar directamente el binario de Docker.

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

Se eliminará en una versión futura. Usa exec en su lugar.

Parámetros

NombreTipoDescripción
cmdstringEl comando a ejecutar.
...argsstring[]Los argumentos del comando a ejecutar.

Devuelve

Promise<ExecResultV0>

El resultado contendrá tanto la salida estándar como el error estándar del comando ejecutado:

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

Para mayor comodidad, el objeto de resultado del comando también tiene métodos para analizarlo fácilmente según el formato de salida:

  • output.lines(): string[] divide las líneas de salida.
  • output.parseJsonObject(): any analiza una salida JSON bien formateada.
  • output.parseJsonLines(): any[] analiza cada línea de salida como un objeto JSON.

Si la salida del comando es demasiado larga o necesitas obtener la salida en forma de flujo, puedes usar la

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

Heredado de

DockerDesktopClientV0.execDockerCmd


spawnDockerCmd

spawnDockerCmd(cmd, args, callback): void

Warning

Se eliminará en una versión futura. Usa exec en su lugar.

Parámetros

NombreTipo
cmdstring
argsstring[]
callback(data: any, error: any) => void

Devuelve

void

Heredado de

DockerDesktopClientV0.spawnDockerCmd


openExternal

openExternal(url): void

Abre una URL externa con el navegador predeterminado del sistema.

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

Se eliminará en una versión futura. Usa openExternal en su lugar.

Parámetros

NombreTipoDescripción
urlstringLa URL que abre el navegador (debe tener el protocolo http o https).

Devuelve

void

Heredado de

DockerDesktopClientV0.openExternal


Métodos de toast

toastSuccess

toastSuccess(msg): void

Muestra un mensaje toast de tipo éxito.

window.ddClient.toastSuccess("message");
Warning

Se eliminará en una versión futura. Usa success en su lugar.

Parámetros

NombreTipoDescripción
msgstringEl mensaje a mostrar en el toast.

Devuelve

void

Heredado de

DockerDesktopClientV0.toastSuccess


toastWarning

toastWarning(msg): void

Muestra un mensaje toast de tipo advertencia.

window.ddClient.toastWarning("message");
Warning

Se eliminará en una versión futura. Usa warning en su lugar.

Parámetros

NombreTipoDescripción
msgstringEl mensaje a mostrar en el toast.

Devuelve

void

Heredado de

DockerDesktopClientV0.toastWarning


toastError

toastError(msg): void

Muestra un mensaje toast de tipo error.

window.ddClient.toastError("message");
Warning

Se eliminará en una versión futura. Usa error en su lugar.

Parámetros

NombreTipoDescripción
msgstringEl mensaje a mostrar en el toast.

Devuelve

void

Heredado de

DockerDesktopClientV0.toastError