Cómo usar el comando docker plugin push para compartir 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ás cómo compartir complementos (plugins) de Docker empujándolos a un registro. Comenzarás listando los complementos actualmente instalados en tu entorno de Docker para entender qué está disponible.

Luego, practicarás empujar un complemento de Docker a un registro, lo que te permitirá compartir o almacenar tus complementos. Finalmente, aprenderás cómo empujar un complemento con una etiqueta (tag) específica, lo que proporciona control de versiones y organización para tus complementos compartidos.


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL docker(("Docker")) -.-> docker/ContainerOperationsGroup(["Container Operations"]) docker(("Docker")) -.-> docker/ImageOperationsGroup(["Image Operations"]) docker/ContainerOperationsGroup -.-> docker/ls("List Containers") docker/ImageOperationsGroup -.-> docker/pull("Pull Image from Repository") docker/ImageOperationsGroup -.-> docker/tag("Tag an Image") docker/ImageOperationsGroup -.-> docker/push("Push Image to Repository") subgraph Lab Skills docker/ls -.-> lab-555193{{"Cómo usar el comando docker plugin push para compartir un complemento (plugin)"}} docker/pull -.-> lab-555193{{"Cómo usar el comando docker plugin push para compartir un complemento (plugin)"}} docker/tag -.-> lab-555193{{"Cómo usar el comando docker plugin push para compartir un complemento (plugin)"}} docker/push -.-> lab-555193{{"Cómo usar el comando docker plugin push para compartir un complemento (plugin)"}} end

Listar complementos (plugins) existentes

En este paso, aprenderás cómo listar los complementos existentes instalados en tu entorno de Docker. Los complementos extienden la funcionalidad de Docker, lo que te permite agregar características como gestión de volúmenes, controladores de red y más.

Para listar los complementos de Docker actualmente instalados, puedes utilizar el comando docker plugin ls. Este comando mostrará una lista de complementos, su estado y otra información relevante.

Intentemos listar los complementos en tu entorno.

docker plugin ls

Deberías ver una salida similar a esta (la salida exacta puede variar según tu entorno):

ID    NAME    DESCRIPTION    ENABLED

En un entorno LabEx predeterminado, por lo general no se instalan complementos por defecto, por lo que es probable que la salida muestre una lista vacía o solo componentes integrados esenciales que no se enumeran como complementos separados. Esto es lo esperado.

El comando docker plugin ls es útil para ver rápidamente qué complementos están disponibles y si están habilitados o deshabilitados. Este es el primer paso en la gestión de complementos de Docker.

Empujar un complemento (plugin) a un registro

En este paso, aprenderás cómo empujar un complemento de Docker a un registro. Empujar un complemento te permite compartirlo con otros o almacenarlo para su uso posterior. Antes de poder empujar un complemento, debes tener uno disponible. Para fines de demostración, utilizaremos un complemento de ejemplo sencillo.

Primero, descarguemos una imagen de complemento de muestra. Utilizaremos el complemento vieux/sshfs como ejemplo. Este complemento te permite utilizar SSHFS para volúmenes de Docker.

docker plugin install vieux/sshfs

Se te pedirá que aceptes las capacidades del complemento. Escribe y y presiona Enter.

Plugin "vieux/sshfs" is requesting the following privileges:
 - network: [host]
 - mount: [/dev/fuse]
 - allow-devices: [fuse]
 - authz: []
 - capabilities: [CAP_SYS_ADMIN]
Do you grant the plugin these privileges? [y/N] y

Después de que se instale el complemento, puedes verificar su instalación y estado utilizando nuevamente el comando docker plugin ls.

docker plugin ls

Ahora deberías ver el complemento vieux/sshfs en la lista y su estado debería ser true (habilitado).

ID                  NAME                DESCRIPTION                         ENABLED
<plugin_id>         vieux/sshfs         Mount sshfs volumes                 true

Ahora que tenemos un complemento instalado, podemos empujarlo a un registro. Para empujar un complemento, se utiliza el comando docker plugin push seguido del nombre del complemento. Para este ejemplo, empujaremos el complemento vieux/sshfs.

docker plugin push vieux/sshfs

Dado que no estamos empujando a un registro específico (como Docker Hub), este comando intentará empujar al registro predeterminado. En un escenario del mundo real, primero tendrías que iniciar sesión en tu registro utilizando docker login y especificar el registro en el comando de empuje (por ejemplo, docker plugin push your-registry.com/vieux/sshfs).

La salida mostrará el progreso de la operación de empuje.

The push refers to repository [docker.io/vieux/sshfs]
Pushed plugin vieux/sshfs:<tag>

Este comando empuja el complemento al registro especificado. Si no se especifica una etiqueta (tag), por lo general se utiliza la etiqueta latest por defecto.

Empujar un complemento (plugin) con una etiqueta (tag) específica

En este paso, aprenderás cómo empujar un complemento de Docker a un registro con una etiqueta específica. Etiquetar te permite versionar tus complementos y gestionar diferentes lanzamientos.

En el paso anterior, instalamos y empujamos el complemento vieux/sshfs. Cuando lo empujamos sin especificar una etiqueta, probablemente se utilizó la etiqueta predeterminada latest. Ahora, empujemos el mismo complemento pero con una etiqueta específica, por ejemplo, 1.0.

Para empujar un complemento con una etiqueta específica, se utiliza el comando docker plugin push seguido del nombre del complemento y la etiqueta separados por dos puntos (:).

docker plugin push vieux/sshfs:1.0

Este comando empujará el complemento vieux/sshfs con la etiqueta 1.0 al registro predeterminado. Similar al paso anterior, en un escenario del mundo real con un registro personalizado, se incluiría la dirección del registro antes del nombre del complemento (por ejemplo, docker plugin push your-registry.com/vieux/sshfs:1.0).

La salida mostrará el progreso de la operación de empuje, indicando que el complemento se está empujando con la etiqueta especificada.

The push refers to repository [docker.io/vieux/sshfs]
Pushed plugin vieux/sshfs:1.0

Al utilizar etiquetas, puedes mantener múltiples versiones de tu complemento en el registro. Esto es crucial para gestionar actualizaciones y garantizar la compatibilidad. Por ejemplo, podrías tener vieux/sshfs:1.0, vieux/sshfs:1.1 y vieux/sshfs:latest, lo que permite a los usuarios descargar la versión específica que necesiten.

Con esto se concluyen los pasos para empujar complementos de Docker. Has aprendido cómo empujar un complemento a un registro y cómo especificar una etiqueta durante la operación de empuje.

Resumen

En este laboratorio, aprendiste cómo gestionar complementos (plugins) de Docker, centrándote específicamente en listarlos y empujarlos a un registro. Comenzaste utilizando el comando docker plugin ls para ver los complementos instalados, comprendiendo que un entorno predeterminado podría mostrar una lista vacía.

Posteriormente, practicaste empujar un complemento a un registro. Esto implicó instalar un complemento de muestra (vieux/sshfs) y luego utilizar el comando docker plugin push para compartirlo. También aprendiste cómo empujar un complemento con una etiqueta (tag) específica, lo que permite la versionización y una mejor organización dentro del registro. Estos pasos son cruciales para compartir y gestionar funcionalidades personalizadas o de terceros de Docker.