Integrar Docker Scout con CircleCI
Los siguientes ejemplos se ejecutan cuando se activan en CircleCI. Al activarse, descarga la imagen y etiqueta "docker/scout-demo-service:latest" y luego utiliza Docker Scout para crear un informe de CVEs.
Añade lo siguiente a un archivo .circleci/config.yml.
Primero, configura el resto del flujo de trabajo. Añade lo siguiente al archivo YAML:
version: 2.1
jobs:
build:
docker:
- image: cimg/base:stable
environment:
IMAGE_TAG: docker/scout-demo-service:latestEsto define la imagen de contenedor que utiliza el flujo de trabajo y una variable de entorno para la imagen.
Añade lo siguiente al archivo YAML para definir los pasos del flujo de trabajo:
steps:
# Descargar los archivos del repositorio
- checkout
# Configurar un entorno de Docker separado para ejecutar comandos `docker`
- setup_remote_docker:
version: 20.10.24
# Instalar Docker Scout e iniciar sesión en Docker Hub
- run:
name: Install Docker Scout
command: |
env
curl -sSfL https://raw.githubusercontent.com/docker/scout-cli/main/install.sh | sh -s -- -b /home/circleci/bin
echo $DOCKER_HUB_PAT | docker login -u $DOCKER_HUB_USER --password-stdin
# Construir la imagen de Docker
- run:
name: Build Docker image
command: docker build -t $IMAGE_TAG .
# Ejecutar Docker Scout
- run:
name: Scan image for CVEs
command: |
docker scout cves $IMAGE_TAG --exit-code --only-severity critical,highEsto descarga los archivos del repositorio y luego configura un entorno de Docker separado para ejecutar comandos.
Instala Docker Scout, inicia sesión en Docker Hub, construye la imagen de Docker y luego ejecuta Docker Scout para generar un informe de CVEs. Únicamente muestra vulnerabilidades de gravedad crítica o alta.
Finalmente, añade un nombre para el flujo de trabajo y los trabajos del flujo de trabajo:
workflows:
build-docker-image:
jobs:
- build