⚠️ Traduction non officielle - Cette documentation est une traduction communautaire non officielle de Docker.

Construire avec Docker Build Cloud

Pour construire en utilisant Docker Build Cloud, invoquez une commande de build et spécifiez le nom du constructeur en utilisant le flag --builder.

$ docker buildx build --builder cloud-<ORG>-<BUILDER_NAME> --tag <IMAGE> .

Utiliser par défaut

Si vous voulez utiliser Docker Build Cloud sans avoir à spécifier le flag --builder à chaque fois, vous pouvez le définir comme constructeur par défaut.

Exécutez la commande suivante :

$ docker buildx use cloud-<ORG>-<BUILDER_NAME> --global
  1. Ouvrez les paramètres Docker Desktop et naviguez vers l'onglet Constructeurs.

  2. Trouvez le constructeur cloud sous Constructeurs disponibles.

  3. Ouvrez le menu déroulant et sélectionnez Utiliser.

    Sélection du constructeur cloud comme défaut en utilisant l'interface Docker Desktop

Changer votre constructeur par défaut avec docker buildx use ne change que le constructeur par défaut pour la commande docker buildx build. La commande docker build utilise toujours le constructeur default, sauf si vous spécifiez le flag --builder explicitement.

Si vous utilisez des scripts de build, comme make, nous recommandons de mettre à jour vos commandes de build de docker build vers docker buildx build, pour éviter toute confusion concernant la sélection du constructeur. Alternativement, vous pouvez exécuter docker buildx install pour faire que la commande docker build par défaut se comporte comme docker buildx build, sans divergences.

Utiliser avec Docker Compose

Pour construire avec Docker Build Cloud en utilisant docker compose build, définissez d'abord le constructeur cloud comme votre constructeur sélectionné, puis exécutez votre build.

Note

Assurez-vous d'utiliser une version prise en charge de Docker Compose, voir Prérequis.

$ docker buildx use cloud-<ORG>-<BUILDER_NAME>
$ docker compose build

En plus de docker buildx use, vous pouvez aussi utiliser le flag docker compose build --builder ou la variable d'environnement BUILDX_BUILDER pour sélectionner le constructeur cloud.

Chargement des résultats de build

Construire avec --tag charge le résultat du build dans le magasin d'images local automatiquement quand le build se termine. Pour construire sans tag et charger le résultat, vous devez passer le flag --load.

Le chargement du résultat de build pour les images multi-plateformes n'est pas pris en charge. Utilisez le flag docker buildx build --push lors de la construction d'images multi-plateformes pour pousser la sortie vers un registre.

$ docker buildx build --builder cloud-<ORG>-<BUILDER_NAME> \
  --platform linux/amd64,linux/arm64 \
  --tag <IMAGE> \
  --push .

Si vous voulez construire avec un tag, mais que vous ne voulez pas charger les résultats dans votre magasin d'images local, vous pouvez exporter les résultats de build vers le cache de build seulement :

$ docker buildx build --builder cloud-<ORG>-<BUILDER_NAME> \
  --platform linux/amd64,linux/arm64 \
  --tag <IMAGE> \
  --output type=cacheonly .

Builds multi-plateformes

Pour exécuter des builds multi-plateformes, vous devez spécifier toutes les plateformes que vous voulez construire en utilisant le flag --platform.

$ docker buildx build --builder cloud-<ORG>-<BUILDER_NAME> \
  --platform linux/amd64,linux/arm64 \
  --tag <IMAGE> \
  --push .

Si vous ne spécifiez pas la plateforme, le constructeur cloud construit automatiquement pour l' architecture correspondant à votre environnement local.

Pour en savoir plus sur la construction pour plusieurs plateformes, référez-vous à Builds multi-plateformes.

Builds cloud dans Docker Desktop

La vue Builds de Docker Desktop fonctionne avec Docker Build Cloud dès le départ. Cette vue peut montrer des informations non seulement sur vos propres builds, mais aussi sur les builds initiés par les membres de votre équipe utilisant le même constructeur.

Les équipes utilisant un constructeur partagé obtiennent l'accès à des informations telles que :

  • Builds en cours et terminés
  • Configuration, statistiques, dépendances et résultats de build
  • Source de build (Dockerfile)
  • Logs de build et erreurs

Cela vous permet, à vous et à votre équipe, de travailler de manière collaborative sur le dépannage et l'amélioration des vitesses de build, sans avoir à envoyer des logs de build et des benchmarks entre vous.

Utiliser des secrets avec Docker Build Cloud

Pour utiliser des secrets de build avec Docker Build Cloud, comme des identifiants d'authentification ou des jetons, utilisez les flags CLI --secret et --ssh pour la commande docker buildx. Le trafic est chiffré et les secrets ne sont jamais stockés dans le cache de build.

Warning

Si vous utilisez mal les arguments de build pour passer des identifiants, des jetons d'authentification, ou d'autres secrets, vous devriez refactoriser votre build pour passer les secrets en utilisant des montages de secrets à la place. Les arguments de build sont stockés dans le cache et leurs valeurs sont exposées par les attestations. Les montages de secrets ne fuient pas en dehors du build et ne sont jamais inclus dans les attestations.

Pour plus d'informations, référez-vous à :

Gestion du cache de build

Vous n'avez pas besoin de gérer manuellement le cache Docker Build Cloud. Le système le gère pour vous par collecte de déchets.

L'ancien cache est automatiquement supprimé si vous atteignez votre limite de stockage. Vous pouvez vérifier l'état actuel de votre cache en utilisant la commande docker buildx du.

Pour vider manuellement le cache du constructeur, utilisez la commande docker buildx prune. Cela fonctionne comme la purge du cache pour tout autre constructeur.

Warning

Purger le cache d'un constructeur cloud supprime aussi le cache pour les autres membres de l'équipe utilisant le même constructeur.

Désactiver Docker Build Cloud comme constructeur par défaut

Si vous avez défini un constructeur cloud comme constructeur par défaut et que vous voulez revenir au constructeur docker par défaut, exécutez la commande suivante :

$ docker context use default

Cela ne supprime pas le constructeur de votre système. Cela ne change que le constructeur qui est automatiquement sélectionné pour exécuter vos builds.

Registres sur des réseaux internes

Il est possible d'utiliser Docker Build Cloud avec un registre privé ou un miroir de registre sur un réseau interne.