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.