No tienes acceso a esta clase

¡Continúa aprendiendo! Únete y comienza a potenciar tu carrera

¡Mi primera imagen en Docker Hub!

14/19
Recursos

Dicen que saber utilizar Docker es parte del perfil de un ingeniero de DevOps y estoy parcialmente de acuerdo, no creo deba existir esa posición pero pienso que todos los ingenieros de software deben saber DevOps. A continuación podrás ver una imagen que muestra todas las habilidades que DevOps incluye.

Disciplinas de DevOps

Ahora que sabemos esto. ¿Qué tal si mezclamos a dos de ellas? Los contenedores de Docker y la creación de un script de bash que nos permita con un simple comando de bash crear una imagen y publicarla en Docker Hub.
¡Todo en un solo comando!

Crea un archivo de bash

Comienza por ubicarte en donde esté tu archivo Docker favorito, yo usaré el linktree que utilicé en varias de las clases del curso de Docker:Fundamentos. Ahí agrega un archivo llamado publicar.sh

A ese archivo debemos comenzar por agregarle un encabezado que sirva para definir a este archivo como un script ejecutable de bash, eso es muy fácil de hacerlo, solo escribe:

#!/bin/bash
Script en VS Code

Ahora podemos indicarle al usuario que todo comenzará con la palabra echo que sirve para imprimir mensajes al usuario.

echo "Es momento de publicar tu imagen"

Después vamos a crear la imagen con el tag adecuado y obvio, volver a notificar a nuestro usuario.

docker build -t aminespinoza/linktree .
echo "¡A publicar amigos!"

Seguimos con el comando de publicación de Docker y un mensaje para ver que ya todo está listo.

docker push aminespinoza/linktree
echo "Imagen publicada"

Ahora es momento de probar tu script. ¿Vamos? Escribe en tu terminal

./publicar.sh

Publicación de imagen de Docker con script en Bash
What's next...
Imágen publicada

Está fenomenal que con una sola línea ahora publiques tus imágenes ¿no crees? Además ¿te cuento un secreto? Esto también es la primera pieza que podrías pensar en trabajar para entornos de integración y despliegues continuos.

En conclusión

Todo está bien con este script ¿cierto? La cosa es que de aquí puedes comenzar a pensar en modificar este script para hacerlo mucho más útil. ¿Qué tal colocar variables para el tag de la imagen de Docker? ¿Y si agregamos unas líneas para ver que la imagen ya fue publicada? ¿Qué tal si agregamos la ubicación del Dockerfile de manera dinámica?

¿Lo ves? ¡Hay muchísimo por mejorar y aprovechar aquí! Te recomiendo que dediques tiempo a este script y en cómo mejorarlo, te dará muy buena experiencia para poder ejercitar tus habilidades de bash aprovechando lo que ya sabes de Docker.

Aportes 3

Preguntas 1

Ordenar por:

¿Quieres ver más aportes, preguntas y respuestas de la comunidad?

Al hacer el pull y correr el contenedor puedo abrir el archivo html en localhost:8080/linktree.html.. pero la imagen de mi avatar no se visualiza.. En docker desktop navegando en "Exec".. dentro de la carpeta de /assets existe la imagen .jpg pero el html no la lee.. No se si cometí algún error, este fue el código para el pull: ➜ docker run --name javiweb --rm -it -p 8080:80 javierladino/linktree:lastest Gracias por la ayuda.
Hola Amin, en el caso de que tenga un desarrollo en nuestro localhost usando docker y queramos llevar ese desarrollo a otro pc o servidor cual sería el procedimiento para hacerlo? tendría que subirse igual a docker hub pero privado en lugar de público? esto en el caso de aplicaciones que sean para un usuario final
Este es el repositorio del curso: <https://github.com/platzi/curso-de-docker-fundamentos> En las ramas va el contenido de la clase correspondiente.