Читать книгу Aprender Docker, un enfoque práctico - José Juan Sánchez Hernández - Страница 24
1.10.1. Docker Engine API
ОглавлениеLa comunicación entre un cliente Docker y el servicio Docker daemon se realiza a través de una API HTTP conocida como Docker Engine API.
Esta API implementa todas las operaciones que un usuario puede realizar desde el cliente oficial de Docker CLI; por ejemplo, cuando un usuario ejecuta el comando docker ps
desde la línea de comandos, el cliente Docker CLI está haciendo una petición GET al endpoint /containers/json
de la API. El servicio Docker daemon ejecuta la petición del cliente y le devuelve una respuesta en formato JSON.
La API suele cambiar cada vez que se libera una nueva versión de Docker Engine. Para que los clientes que tienen una versión antigua de la API puedan seguir manteniendo compatibilidad con las nuevas versiones de Docker Engine, se incluye un prefijo en la URL de los endpoints de la API indicando la versión que quieren utilizar para comunicarse; por ejemplo, una llamada al endpoint /v1.41/containers/json
utilizaría la versión 1.41 de la API, mientras que una llamada a /v1.40/containers/json
usaría la versión 1.40.
Puede consultar la especificación completa de la API en la web oficial de Docker. En el momento de escribir este libro, la última versión disponible es la v1.41:
En la actualidad, existe un SDK oficial para Go y otro para Python, que permite a los desarrolladores crear aplicaciones que interactúan con la API de Docker Engine. También existe una gran variedad de librerías no oficiales que han sido desarrolladas por la comunidad para otros lenguajes de programación. A continuación, se muestra un ejemplo de cómo se puede hacer uso de la API de Docker Engine con la utilidad curl
.