@@ -209,3 +209,46 @@ Essayez de faire un `chmod`. Qu'observez-vous ?
Récupérez l'image de Trivy depuis le DockerHub (`aquasec/trivy`). Créez un répertoire local qui va recevoir la base de données des vulnérabilités de l'outil et montez celui-ci dans le répertoire `/root/.cache` d'un conteneur que vous appelerez `scanner`.
Effectuez maintenant un scan de toutes vulnérabilités de l'image `mysql:8.0` depuis le DockerHub (servez-vous de la slide qui présente des exemples d'utilisations de l'outil). Qu'observez-vous ? Faites à nouveau le test avec l'image `mysql:latest`. Quelle est votre conclusion ?
## Construire une image à destination de plusieurs architectures
Vous pouvez, en une seule commande, lancer la construction d’images Docker à destination de plusieurs architectures (intel, arm, etc.). Pour rappel, **BuildKit** est le nouveau moteur de construction d’images intégrant pas mal de nouvelles fonctionnalités.
### Mettre en place le builder
Le générateur est en fait une image, utilisant les fonctionnalités QEMU. Elle tourne au sein d’une instance Docker. C'est une fonctionnalité que l’on retrouve sur la version de Docker Desktop d’ailleurs ... mais elle est cachée.
Pour l'initialiser il faut, en premier lieu, lancer une image permettant d’installer l’outillage nécessaire sur la machine hôte. Cela se fait de la manière suivante :
```bash
$ docker run --privileged--rm tonistiigi/binfmt:latest --install all
```
Vous obtiendrez, en sortie, toutes les builds possibles. Ensuite, il faut créer le builder. Pour utiliser un registre personnel il faudra utiliser un fichier de config (en ajoutant `--config=/path/to/config.toml`). Je vous invite à consulter [ce lien](https://github.com/moby/buildkit/blob/master/docs/buildkitd.toml.md) pour plus d'infos. Il faudra procéder de la manière suivante :