Prise en charge des builds à distance avec Azure Container Registry

Les builds distantes vous permettent de décharger le processus de création d’images conteneur à partir de votre environnement de développement local vers un service de build managé dans le cloud. Cela est particulièrement utile pour les builds volumineuses ou complexes, ou lorsque votre ordinateur local ne dispose pas des ressources ou dépendances nécessaires. Azure Developer CLI (azd) prend en charge les builds distantes via Azure Container Registry (ACR) lors du déploiement sur Azure Container Apps.

Azure Container Registry prend en charge les builds distantes en fournissant un environnement sécurisé et basé sur le cloud dans lequel votre code source et vos fichiers Dockerfiles peuvent être intégrés dans des images conteneur. Avec ACR Tasks, vous pouvez automatiser les builds et les déploiements d’images, ce qui garantit la cohérence et l’évolutivité dans vos environnements de développement et de production.

L’utilisation de builds distantes dans vos modèles Azure Developer CLI (azd) offre plusieurs avantages :

  • Efficacité des ressources : Déchargez les builds nécessitant beaucoup de ressources de calcul dans le cloud.
  • Cohérence : assurez-vous que les builds sont reproductibles et isolées des différences d’environnement local.
  • Scalabilité : Générez plusieurs images en parallèle sans taxer votre ordinateur local.
  • Sécurité: Conservez les secrets de build sensibles et les informations d’identification dans Azure, et non sur votre appareil local.

Configurer des compilations à distance

Pour configurer Azure Developer CLI pour utiliser des builds distantes avec Azure Container Registry, procédez comme suit :

  1. Mettez à jour vos fichiers d’infrastructure :

    • Assurez-vous que vos modèles IaC (infrastructure-as-code) (tels que Bicep, ARM ou Terraform) provisionnent une ressource Azure Container Registry.
    • Accordez les autorisations nécessaires à votre processus de build pour envoyer et récupérer des images à partir du registre.
  2. Dans le projet azure.yaml, mettez à jour la docker configuration pour utiliser des builds distantes :

    services:
      webapp:
        project: ./src/webapp
        language: js
        host: containerapp
        docker:
          path: ./Dockerfile
          remoteBuild: true
    
  3. Exécutez la commande azd up ou azd deploy. azd détecte la configuration de compilation distante et envoie votre compilation à l'Azure Container Registry approvisionnée par le modèle.

Vérifiez la compilation à distance

Une fois le azd up flux de travail terminé, vérifiez que la build distante s’exécute dans le portail Azure :

  1. Accédez au registre de conteneurs provisionné.

  2. Dans le volet de navigation gauche, sélectionnez Référentiels de services>.

  3. Sélectionnez le référentiel dans la liste, puis sélectionnez la balise la plus récente.

    Capture d’écran du référentiel de registre de conteneurs.

  4. Sélectionnez l’ID d’exécution pour afficher les journaux de sortie du processus de génération de conteneur.

    Capture d’écran montrant l’exécution de la build de conteneur.

    Parcourez les journaux pour afficher les étapes de génération clés, telles que la récupération d’images de base Docker ou la compilation de code source.

Étapes suivantes