Probar antes de enviar con GitHub Actions
En algunos casos, es posible que quieras validar que la imagen funciona según lo esperado antes de enviarla. El siguiente flujo de trabajo implementa varios pasos para lograr esto:
- Compilar y exportar la imagen a Docker
- Probar la imagen
- Compilar para múltiples plataformas y enviar la imagen
name: ci
on:
push:
env:
TEST_TAG: user/app:test
LATEST_TAG: user/app:latest
jobs:
docker:
runs-on: ubuntu-latest
steps:
- name: Iniciar sesión en Docker Hub
uses: docker/login-action@v4
with:
username: ${{ vars.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_TOKEN }}
- name: Configurar QEMU
uses: docker/setup-qemu-action@v4
- name: Configurar Docker Buildx
uses: docker/setup-buildx-action@v4
- name: Compilar y exportar a Docker
uses: docker/build-push-action@v7
with:
load: true
tags: ${{ env.TEST_TAG }}
- name: Probar
run: |
docker run --rm ${{ env.TEST_TAG }}
- name: Compilar y enviar
uses: docker/build-push-action@v7
with:
platforms: linux/amd64,linux/arm64
push: true
tags: ${{ env.LATEST_TAG }}NoteLa imagen
linux/amd64solo se compila una vez en este flujo de trabajo. La imagen se compila una vez, y los siguientes pasos utilizan la caché interna del primer pasoCompilar y exportar a Docker. El segundo pasoCompilar y enviarsolo compilalinux/arm64.