GitLab Runner: Construir una imagen Docker con Docker-in-Docker

Esta documentación forma parte de la guía Creación de imágenes Docker. Consulte la guía completa aquí: Construya y suba imágenes Docker desde sus pipelines de GitLab CI/CD utilizando su runner de Stackhero y Docker-in-Docker.

👋 ¡Bienvenido a la documentación de Stackhero!

Stackhero le ofrece una solución GitLab Runner cloud fácil de usar, diseñada para gestionar sus trabajos de GitLab CI/CD de manera eficiente. Esto es lo que puede esperar:

  • Minutos CI/CD ilimitados: no hay facturación por minuto, así que sus pipelines pueden ejecutarse siempre que lo necesite.
  • Múltiples trabajos concurrentes: ejecute varios trabajos al mismo tiempo para acelerar todo su pipeline.
  • Docker executor con soporte para Docker-in-Docker: simplifique la construcción y el push de sus imágenes de contenedor.
  • Compatible con GitLab.com y cualquier instancia GitLab autogestionada.
  • Una VM privada y dedicada impulsada por discos NVMe/SSD rápidos para builds consistentes y fiables.
  • Disponible en las regiones de 🇪🇺 Europa y 🇺🇸 USA.

Ahorre tiempo: puede conectar su primer GitLab Runner y empezar a ejecutar pipelines en solo unos minutos.

Aquí tiene un ejemplo de .gitlab-ci.yml que puede añadir a su repositorio. Esta configuración construye el Dockerfile que se encuentra en la raíz de su proyecto:

build-image:
  stage: build
  image: docker:27
  services:
    - docker:27-dind
  variables:
    DOCKER_TLS_CERTDIR: "/certs"
  before_script:
    - docker info
  script:
    # Sustituya "my-image" por el nombre que desee:
    - docker build -t my-image .
    # Opcionalmente, puede ejecutar un test rápido sobre la imagen construida:
    # - docker run --rm my-image /path/to/tests

En esta configuración, el servicio docker:27-dind inicia el daemon de Docker. La variable DOCKER_TLS_CERTDIR: "/certs" habilita una conexión TLS segura entre su job y el daemon de Docker.