Laboratorio 10

Publicar una imagen Docker con GitHub Actions

Automatización completa del ciclo de vida de imágenes Docker: build, test, push a registry usando GitHub Actions y Container Registry.

Fuente validada

Lab_10_Docker_Actions.docx

Esta pagina fue reconstruida desde el documento del ZIP entregado como fuente principal.

Conformidad visual

Sin imagenes publicadas

El archivo fuente contiene 0 imagenes embebidas. Para garantizar conformidad, no se publican imagenes heredadas de otros materiales.

Criterio GH-300

Practica verificable

Ejecuta los comandos, captura evidencia propia y valida cada sugerencia de Copilot antes de aceptarla.

Alcance de publicacion: Solo se publica el contenido del laboratorio indicado por el archivo Lab_10_Docker_Actions.docx. Las imagenes no se muestran porque el ZIP no incluye imagenes embebidas en este documento.

Certificación GH-300

Laboratorio 10

Publicar Imagen Docker con GitHub Actions

Autor: Carlos Crudo

linkedin.com/in/carloscrudo

Automatización completa del ciclo de vida de imágenes Docker: build, test, push a registry usando GitHub Actions y Container Registry.

Temas que cubre este laboratorio:

Dockerfile y multi-stage builds

GitHub Container Registry (ghcr.io)

Build y push de imágenes Docker

Etiquetado de imágenes (tags, SHA, semver)

Secrets para autenticación al registry

Laboratorio 10: Publicar Imagen Docker con GitHub Actions

Lab 10: Usa GitHub Actions para publicar tu proyecto en una imagen Docker

Objetivos:

Imagina que estás desarrollando un proyecto de software que quieres empaquetar y distribuir como una imagen Docker. Para agilizar el proceso de despliegue y asegúrate de que tu imagen Docker se publique de forma consistente en GitHub En paquetes, decides usar GitHub Actions para automatización. Esto será te permiten configurar un flujo de trabajo que automatiza la publicación de tu Imagen Docker cada vez que se realicen cambios, asegurando que tu proyecto esté siempre actualizado y disponible para su despliegue.

En este laboratorio práctico, tú deberás:

Configura un archivo de flujo de trabajo de GitHub Actions que automatize el proceso de construir y publicar tu imagen en Docker.

Configura el flujo de trabajo para construir tu imagen de Docker y envíala a Paquetes de GitHub, asegurando que la imagen se publique correctamente.

Crea una solicitud pull para ver todos los cambios que has hecho.

Ejercicio #1: Crea un nuevo repositorio a partir de una plantilla pública

Navega hasta el siguiente enlace: https://github.com/skills/publish-packages

En este laboratorio crearás el repositorio usando una plantilla pública "Paquetes de habilidades-publicación".

Selecciona Crear un nuevo repositorio en el menú Usar esta plantilla.

Introduce los siguientes datos y selecciona Crear Repositorio.

Nombre del repositorio: Paquetes de publicación de habilidades

Tipo de repositorio: Público

Ejercicio 2: Crea un archivo de flujo de trabajo y configura el flujo de trabajo

Haz clic en el botón Código en la barra de navegación principal en el repositorio que acabas de crear.

En el desplegable de la rama principal, selecciona cd branch.

En la siguiente página, navega a la carpeta .github/workflows/, luego selecciona Añadir archivo y haz clic en Crear nuevo archivo.

En el campo Nombre de tu archivo, introduce publish.yml

Añade el siguiente código al archivo publish.yml.

name: Publish to Docker

on:

push:

branches:

main

permissions:

packages: write

contents: read

jobs:

publish:

runs-on: ubuntu-latest

steps:

name: Checkout

uses: actions/checkout@v4

*# Add your test steps here if needed...*

name: Docker meta

id: meta

uses: docker/metadata-action@v5

with:

images: ghcr.io/YOURNAME/publish-packages/game

tags: type=sha

name: Login to GHCR

uses: docker/login-action@v3

with:

registry: ghcr.io

username: ${{ github.repository_owner }}

password: ${{ secrets.GITHUB_TOKEN }}

name: Build container

uses: docker/build-push-action@v5

with:

context: .

push: true

tags: ${{ steps.meta.outputs.tags }}

Sustituye TU nombre por tu nombre de usuario.

Asegúrate de que el nombre de la imagen sea único, haz clic en Commit cambios.

Haz clic en Confirmar cambios una vez más.

Ahora crea una pull request para ver todos los cambios que has hecho en el Por encima del ejercicio.

Haz clic en la pestaña de Solicitudes de Tirada en la barra de navegación.

Haz clic en Nueva solicitud de tirada.

En la página Comparando cambios, establece base: main y compare:cd y luego haz clic en Crear pull request.

En la página Añadir una página de título, haz clic en Crear solicitud pull.

Espera 20 segundos a que se ejecuten las acciones y revisa los resultados.

Resumen:

Ahora has adquirido experiencia práctica usando GitHub Actions para automatizar la publicación de imágenes Docker, mejorando tu capacidad para Optimizar los procesos de despliegue y mantener el proyecto actualizado distribuciones.