Cómo usar el comando docker plugin create para construir un complemento (plugin)

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á cómo crear un complemento (plugin) de Docker utilizando el comando docker plugin create. Este proceso implica preparar la estructura de directorios y el archivo de configuración necesarios para su complemento, y luego utilizar el comando para construir el complemento a partir de estos componentes.

El laboratorio lo guiará a través de la preparación del directorio de datos del complemento, lo cual incluye crear un archivo config.json para definir las propiedades y la interfaz del complemento. Después de esto, ejecutará el comando docker plugin create para construir el complemento en base a los datos preparados. Finalmente, verificará que el complemento se haya creado con éxito y esté disponible en su entorno Docker.


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL docker(("Docker")) -.-> docker/ContainerOperationsGroup(["Container Operations"]) docker(("Docker")) -.-> docker/VolumeOperationsGroup(["Volume Operations"]) docker/ContainerOperationsGroup -.-> docker/ls("List Containers") docker/ContainerOperationsGroup -.-> docker/create("Create Container") docker/VolumeOperationsGroup -.-> docker/volume("Manage Volumes") subgraph Lab Skills docker/ls -.-> lab-555187{{"Cómo usar el comando docker plugin create para construir un complemento (plugin)"}} docker/create -.-> lab-555187{{"Cómo usar el comando docker plugin create para construir un complemento (plugin)"}} docker/volume -.-> lab-555187{{"Cómo usar el comando docker plugin create para construir un complemento (plugin)"}} end

Preparar el directorio de datos del complemento (plugin)

En este paso, prepararemos la estructura de directorios necesaria para nuestro complemento (plugin) de Docker. Un complemento de Docker necesita una disposición específica de directorios para funcionar correctamente. Este directorio contendrá la configuración del complemento y posiblemente otros archivos necesarios.

Primero, navegue hasta el directorio de su proyecto.

cd ~/project

Ahora, cree un directorio para los datos del complemento. Lo llamaremos my-plugin-data.

mkdir my-plugin-data

Dentro del directorio my-plugin-data, necesitamos crear un archivo de configuración llamado config.json. Este archivo contendrá los detalles de configuración del complemento.

cd my-plugin-data
nano config.json

Agregue el siguiente contenido al archivo config.json. Esta es una configuración básica que especifica el tipo y la descripción del complemento.

{
  "Description": "My first Docker plugin",
  "Types": [
    {
      "Name": "volume",
      "Description": "A simple volume plugin"
    }
  ],
  "Interface": {
    "Types": ["docker.volumedriver/1.0"],
    "Socket": "my-plugin.sock"
  },
  "Entrypoint": ["/usr/local/bin/my-plugin"]
}

Analicemos el archivo config.json:

  • Description: Una descripción legible por humanos del complemento.
  • Types: Especifica los tipos de complementos proporcionados. En este caso, es un complemento de volume (volumen).
  • Interface: Define la interfaz del complemento.
    • Types: Especifica el tipo de interfaz, docker.volumedriver/1.0 para un controlador de volumen.
    • Socket: El nombre del socket de dominio Unix en el que el complemento escuchará. Docker se comunicará con el complemento a través de este socket.
  • Entrypoint: El comando que Docker ejecutará cuando se habilite el complemento. Debe ser la ruta al ejecutable de su complemento dentro del sistema de archivos raíz del complemento.

Guarde el archivo y salga del editor nano presionando Ctrl + X, luego Y y Enter.

Finalmente, navegue de nuevo al directorio raíz del proyecto.

cd ~/project

Ahora ha creado con éxito la estructura básica de directorios y el archivo de configuración para su complemento de Docker.

Crear el complemento (plugin) utilizando docker plugin create

En este paso, utilizaremos el comando docker plugin create para crear el complemento en base al directorio que preparamos en el paso anterior. El comando docker plugin create toma como argumentos el nombre del complemento y la ruta al directorio de datos del complemento.

La sintaxis del comando es docker plugin create <nombre-del-complemento> <directorio-de-datos-del-complemento>.

Nombraremos nuestro complemento my-plugin y utilizaremos el directorio my-plugin-data que creamos. Asegúrese de estar en el directorio ~/project.

cd ~/project
sudo docker plugin create my-plugin ./my-plugin-data

Debería ver una salida que indique que se está creando el complemento. Si tiene éxito, el comando se completará sin errores.

El comando docker plugin create lee el archivo config.json del directorio especificado y registra el complemento con el demonio de Docker. En este momento, el complemento se ha creado pero aún no está habilitado.

Verificar el complemento (plugin) creado

En este paso, verificaremos que el complemento se haya creado correctamente y que esté listado por Docker. Podemos utilizar el comando docker plugin ls para listar todos los complementos disponibles.

Asegúrese de estar en el directorio ~/project.

cd ~/project
sudo docker plugin ls

La salida de este comando debe mostrar una lista de complementos. Debería ver una entrada para my-plugin con el estado disabled (deshabilitado). Esto confirma que el complemento se ha registrado con Docker pero aún no está activo.

La salida se verá similar a esto (el ID será diferente):

ID             NAME        TAG       DESCRIPTION             ENABLED
a1b2c3d4e5f6   my-plugin             My first Docker plugin   false

La columna ENABLED muestra false, lo que indica que el complemento está actualmente deshabilitado. Para utilizar el complemento, tendría que habilitarlo utilizando docker plugin enable. Sin embargo, como esta es solo una demostración de la creación de la estructura del complemento, no lo habilitaremos en este laboratorio.

Ahora ha creado y verificado con éxito la existencia de su complemento de Docker.

Resumen

En este laboratorio, aprendimos cómo preparar la estructura de directorios y el archivo de configuración necesarios para un complemento (plugin) de Docker. Esto implicó crear un directorio dedicado para los datos del complemento y definir las características del complemento, como su descripción, tipo, interfaz y punto de entrada, dentro de un archivo config.json. Este paso fundamental es crucial para definir cómo Docker interactúa con y gestiona el complemento.