# docker version

**Descripción:** Show the Docker version information

**Uso:** `docker version [OPTIONS]`










## Descripción

El comando `version` muestra el número de versión actual de todos los componentes de Docker versionados de forma independiente. Utiliza la opción [`--format`](#format) para personalizar la salida.

El comando de versión (`docker version`) muestra los números de versión de los componentes de Docker, mientras que la opción `--version` (`docker --version`) muestra el número de versión de la CLI de Docker que estás utilizando.

### Salida por defecto

La salida por defecto muestra toda la información de la versión dividida en dos secciones: la sección `Client` (Cliente) contiene información sobre la CLI de Docker y los componentes del cliente, y la sección `Server` (Servidor) contiene información sobre el motor Docker (Docker Engine) y los componentes utilizados por este, como los entornos de ejecución (runtimes) de OCI containerd y runc.

La información mostrada puede variar dependiendo de cómo hayas instalado Docker y de los componentes que estén en uso. El siguiente ejemplo muestra la salida en una máquina macOS que ejecuta Docker Desktop:

```console
$ docker version

Client: Docker Engine - Community
 Version:           28.5.1
 API version:       1.51
 Go version:        go1.24.8
 Git commit:        e180ab8
 Built:             Wed Oct  8 12:16:17 2025
 OS/Arch:           darwin/arm64
 Context:           remote-test-server

Server: Docker Desktop 4.19.0 (12345)
 Engine:
  Version:          27.5.1
  API version:      1.47 (minimum version 1.24)
  Go version:       go1.22.11
  Git commit:       4c9b3b0
  Built:            Wed Jan 22 13:41:24 2025
  OS/Arch:          linux/amd64
  Experimental:     true
 containerd:
  Version:          v1.7.25
  GitCommit:        bcc810d6b9066471b0b6fa75f557a15a1cbf31bb
 runc:
  Version:          1.2.4
  GitCommit:        v1.2.4-0-g6c52b3f
 docker-init:
  Version:          0.19.0
  GitCommit:        de40ad0
```

### Versiones del cliente y del servidor

Docker utiliza una arquitectura cliente/servidor, que te permite usar la CLI de Docker en tu máquina local para controlar un motor Docker (Docker Engine) que se ejecuta en una máquina remota, la cual puede ser (por ejemplo) una máquina en la nube o dentro de una máquina virtual.

El siguiente ejemplo cambia la CLI de Docker para usar un [contexto](/reference/cli/docker/context/) llamado `remote-test-server`, que ejecuta una versión anterior de Docker Engine en un servidor Linux:

```console
$ docker context use remote-test-server
remote-test-server

$ docker version

Client: Docker Engine - Community
 Version:           28.5.1
 API version:       1.51
 Go version:        go1.24.8
 Git commit:        e180ab8
 Built:             Wed Oct  8 12:16:17 2025
 OS/Arch:           darwin/arm64
 Context:           remote-test-server

Server: Docker Engine - Community
 Engine:
  Version:          27.5.1
  API version:      1.47 (minimum version 1.24)
  Go version:       go1.22.11
  Git commit:       4c9b3b0
  Built:            Wed Jan 22 13:41:24 2025
  OS/Arch:          linux/amd64
  Experimental:     true
 containerd:
  Version:          v1.7.25
  GitCommit:        bcc810d6b9066471b0b6fa75f557a15a1cbf31bb
 runc:
  Version:          1.2.4
  GitCommit:        v1.2.4-0-g6c52b3f
 docker-init:
  Version:          0.19.0
  GitCommit:        de40ad0
```

### Versión de la API y negociación de versión

La versión de la API utilizada por el cliente depende del Docker Engine al que se conecta la CLI de Docker. Al conectarse con el Docker Engine, la CLI de Docker y el Docker Engine realizan una negociación de la versión de la API y seleccionan la versión de la API más alta compatible tanto por la CLI de Docker como por el Docker Engine.

Por ejemplo, si la CLI se conecta con la versión 27.5 de Docker Engine, se degrada a la versión 1.47 de la API (consulta la [tabla de versiones de la API](/reference/api/engine/#api-version-matrix) para conocer las versiones de la API compatibles con Docker Engine):

```console
$ docker version --format '{{.Client.APIVersion}}'

1.47
```

Ten en cuenta que la versión de la API también se puede invalidar utilizando la variable de entorno `DOCKER_API_VERSION`, lo cual puede ser útil para fines de depuración y desactiva la negociación de la versión de la API. El siguiente ejemplo ilustra un entorno donde la variable de entorno `DOCKER_API_VERSION` está establecida. Eliminar la variable de entorno quita la invalidación y vuelve a activar la negociación de la versión de la API:

```console
$ env | grep DOCKER_API_VERSION
DOCKER_API_VERSION=1.50

$ docker version --format '{{.Client.APIVersion}}'
1.50

$ unset DOCKER_API_VERSION
$ docker version --format '{{.Client.APIVersion}}'
1.51
```


## Opciones

| Opción                                                        | Predeterminado                                        | Descripción                                                                                                                                    |
| ------------------------------------------------------------- | ----------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|  | `-f`, `--format` |  |  Da formato a la salida utilizando una plantilla personalizada:<br>'json':             Muestra la salida en formato JSON<br>'TEMPLATE':         Muestra la salida utilizando la plantilla de Go especificada.<br>Consulta https://docs-docker.esdocu.com/go/formatting/ para obtener más información sobre cómo dar formato a la salida con plantillas |




## Ejemplos

### Dar formato a la salida (--format) {#format}

La opción de formato (`--format`) muestra la salida de manera atractiva utilizando una plantilla de Go, lo que te permite personalizar el formato de salida o obtener información específica de la salida. Consulta la página [dar formato a la salida de comandos y registros](/config/formatting/) para obtener detalles sobre el formato.

### Obtener la versión del servidor

```console
$ docker version --format '{{.Server.Version}}'

28.5.1
```

### Obtener la versión de la API del cliente

El siguiente ejemplo muestra la versión de la API que utiliza el cliente:

```console
$ docker version --format '{{.Client.APIVersion}}'

1.51
```

La versión mostrada es la versión de la API negociada entre el cliente y el Docker Engine. Consulta la sección [Versión de la API y negociación de versión](#api-version-and-version-negotiation) anterior para obtener más información.

### Volcar datos JSON sin procesar

```console
$ docker version --format '{{json .}}'

{"Client":"Version":"28.5.1","ApiVersion":"1.51", ...}
```



