Cómo usar el comando de estado de Docker Desktop para verificar su estado

DockerDockerBeginner
Practicar Ahora

💡 Este tutorial está traducido por IA desde la versión en inglés. Para ver la versión original, puedes hacer clic aquí

Introducción

En este laboratorio, aprenderás cómo verificar el estado de tu instalación de Docker Desktop utilizando el comando docker info. Exploraremos dos formatos diferentes de salida: el formato predeterminado legible para humanos y el formato JSON, ideal para scripting y automatización.

A través de pasos prácticos, ejecutarás el comando docker info para obtener información detallada sobre tu entorno Docker, incluyendo el número de contenedores e imágenes, la versión del servidor, el controlador de almacenamiento y otras configuraciones del sistema. Verás cómo el formato predeterminado proporciona una visión general rápida y cómo el formato JSON permite un procesamiento programático más sencillo de la información de estado de Docker.


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL docker(("Docker")) -.-> docker/SystemManagementGroup(["System Management"]) docker/SystemManagementGroup -.-> docker/info("Display System-Wide Information") subgraph Lab Skills docker/info -.-> lab-555149{{"Cómo usar el comando de estado de Docker Desktop para verificar su estado"}} end

Verificar el estado de Docker Desktop usando el formato predeterminado

En este paso, aprenderemos cómo verificar el estado del demonio de Docker utilizando el comando docker info con el formato de salida predeterminado. El comando docker info proporciona información detallada sobre la instalación de Docker, incluyendo el número de contenedores, imágenes, el controlador de almacenamiento y otra información a nivel del sistema.

Primero, abre la terminal en tu entorno de máquina virtual LabEx. Puedes hacer esto haciendo clic en el icono de la terminal en la barra de tareas o presionando Ctrl + Alt + T.

Ahora, ejecuta el siguiente comando para mostrar la información de Docker en el formato predeterminado:

docker info

Este comando mostrará mucha información sobre tu entorno Docker. Desplázate por la salida para ver detalles como la versión de Docker, el número de contenedores en ejecución y detenidos, el número de imágenes, el controlador de almacenamiento que se está utilizando y varias configuraciones del sistema.

Por ejemplo, deberías ver líneas similares a estas en la salida:

Containers: 0
 Running: 0
 Paused: 0
 Stopped: 0
Images: 0
Server Version: 20.10.21
Storage Driver: overlay2
...

Este formato predeterminado es útil para obtener una visión rápida del estado y la configuración del demonio de Docker.

Verificar el estado de Docker Desktop usando formato JSON

En el paso anterior, verificamos el estado del demonio de Docker usando el formato predeterminado de docker info. Si bien el formato predeterminado es fácil de leer para humanos, no es ideal para procesamiento programático. En este paso, aprenderemos cómo obtener la información de Docker en formato JSON, que es mucho más adecuado para scripting y automatización.

Para obtener la salida en formato JSON, podemos usar el flag --format con el comando docker info y especificar el formato como json.

Ejecuta el siguiente comando en tu terminal:

docker info --format '{{json .}}'

Analicemos este comando:

  • docker info: Este es el comando base para obtener información del sistema Docker.
  • --format '{{json .}}': Este flag indica a Docker que formatee la salida. El valor '{{json .}}' usa sintaxis de plantillas Go. . representa toda la estructura de datos devuelta por docker info, y {{json .}} formatea esta estructura como una cadena JSON.

Después de ejecutar el comando, verás la misma información que antes, pero esta vez presentada como un único objeto JSON válido. La salida se verá similar a esto (el contenido exacto variará según tu entorno Docker):

{
  "ID": "...",
  "Containers": 0,
  "ContainersRunning": 0,
  "ContainersPaused": 0,
  "ContainersStopped": 0,
  "Images": 0,
  "Driver": "overlay2",
  "SystemStatus": null,
  "Plugins": {
    "Volume": ["local"],
    "Network": ["bridge", "host", "ipvlan", "macvlan", "null", "overlay"],
    "Authorization": null,
    "Log": [
      "awslogs",
      "fluentd",
      "gcplogs",
      "gelf",
      "journald",
      "json-file",
      "local",
      "logentries",
      "splunk",
      "syslog"
    ]
  },
  "MemoryLimit": true,
  "SwapLimit": true,
  "KernelMemory": true,
  "CpuCfsPeriod": true,
  "CpuCfsQuota": true,
  "CpuShares": true,
  "CpuSet": true,
  "PidsLimit": true,
  "OomKillDisable": true,
  "IPv4Forwarding": true,
  "BridgeNfIptables": true,
  "BridgeNfIp6tables": true,
  "Debug": false,
  "NFd": -1,
  "OomScoreAdj": -1,
  "Goroutines": -1,
  "SystemTime": "...",
  "LoggingDriver": "json-file",
  "CgroupDriver": "cgroupfs",
  "CgroupVersion": "1",
  "NEventsListener": -1,
  "KernelVersion": "...",
  "OperatingSystem": "...",
  "OSType": "linux",
  "Architecture": "x86_64",
  "IndexServerAddress": "https://index.docker.io/v1/",
  "RegistryConfig": {
    "AllowNondistributableArtifactsAfterDate": "2020-12-25T00:00:00Z",
    "InsecureRegistryCIDRs": ["127.0.0.0/8"],
    "IndexConfigs": {
      "docker.io": {
        "Name": "docker.io",
        "Mirrors": [],
        "Secure": true,
        "Official": true
      }
    },
    "Mirrors": []
  },
  "NCPU": -1,
  "MemTotal": -1,
  "GenericResources": null,
  "DockerRootDir": "/var/lib/docker",
  "HttpProxy": "",
  "HttpsProxy": "",
  "NoProxy": "",
  "ExperimentalBuild": false,
  "LiveRestoreEnabled": false,
  "Runtimes": { "runc": { "path": "runc" } },
  "DefaultRuntime": "runc",
  "Swarm": {
    "NodeID": "",
    "LocalNodeState": "inactive",
    "ControlAvailable": false,
    "Error": "",
    "RemoteManagers": null
  },
  "ContainerdCommit": { "ID": "...", "Expected": "..." },
  "RuncCommit": { "ID": "...", "Expected": "..." },
  "InitCommit": { "ID": "...", "Expected": "..." },
  "SecurityOptions": ["apparmor", "seccomp"],
  "ProductLicense": "",
  "DefaultAddressPools": null,
  "Warnings": null
}

Esta salida JSON puede ser fácilmente analizada por lenguajes de scripting u otras herramientas, lo que la hace muy útil para automatizar tareas relacionadas con Docker.

Resumen

En este laboratorio, aprendimos cómo verificar el estado del demonio de Docker utilizando el comando docker info. Exploramos dos formatos de salida diferentes: el formato predeterminado legible para humanos y el formato JSON.

Primero utilizamos docker info para obtener una visión general rápida del entorno Docker, incluyendo el recuento de contenedores e imágenes, la versión del servidor y el controlador de almacenamiento. Luego, aprendimos cómo usar el flag --format '{{json .}}' con docker info para obtener la misma información en un formato JSON estructurado, que es más adecuado para scripting y automatización.