Partager via


Démarrage rapide : Générer et déployer à partir d’une source locale sur Azure Container Apps

Cet article explique comment générer et déployer un microservice sur Azure Container Apps à partir de code source local à l’aide du langage de programmation de votre choix. Dans ce guide de démarrage rapide, vous allez créer un service d’API web back-end qui retourne une collection statique d’albums de musique.

Remarque

Cet exemple d’application est disponible en deux versions. Une version où la source contient un fichier Dockerfile. L’autre version n’a pas de fichier Dockerfile. Sélectionnez la version qui reflète le mieux votre code source. Si vous débutez avec les conteneurs, sélectionnez l’option Aucun fichier Dockerfile en haut.

La capture d’écran suivante montre la sortie du service d’API album que vous déployez.

Capture d’écran de la réponse du point de terminaison de l’API albums.

Prérequis

Pour mener à bien ce projet, vous avez besoin des éléments suivants :

Condition requise Instructions
Compte Azure Si vous n’en avez pas un, créez un compte gratuitement. Vous avez besoin de l’autorisation Contributeur ou Propriétaire sur l’abonnement Azure pour continuer.

Pour plus d’informations, consultez Attribuer des rôles Azure à l’aide du portail Azure.
Azure CLI Installez Azure CLI.

Programme d’installation

Pour vous connecter à Azure à partir de l’interface CLI, exécutez la commande suivante et suivez les invites pour procéder à l’authentification.

az login

Pour être sûr d’utiliser la dernière version de l’interface CLI, exécutez la commande de mise à niveau.

az upgrade

Ensuite, installez ou mettez à jour l’extension Azure Container Apps pour l’interface CLI.

Si vous recevez des erreurs concernant les paramètres manquants lorsque vous exécutez des commandes az containerapp dans Azure CLI ou des applets de commande à partir du module Az.App dans Azure PowerShell, a assurez-vous que vous avez installé la dernière version de l’extension Azure Container Apps.

az extension add --name containerapp --upgrade

Remarque

À partir de mai 2024, les extensions Azure CLI n’activeront plus les fonctionnalités en préversion par défaut. Pour accéder aux fonctionnalités en préversion de Container Apps, installez l’extension Container Apps avec --allow-preview true.

az extension add --name containerapp --upgrade --allow-preview true

Maintenant que la version actuelle de l’extension ou du module est installée, inscrivez les espaces de noms Microsoft.App et Microsoft.OperationalInsights.

Remarque

Les ressources Azure Container Apps ont migré de l’espace de noms Microsoft.Web vers l’espace de noms Microsoft.App. Pour plus d’informations, reportez-vous à Migration de l’espace de noms de Microsoft.Web vers Microsoft.App en mars 2022.

az provider register --namespace Microsoft.App
az provider register --namespace Microsoft.OperationalInsights

Créer des variables d’environnement

À présent que votre configuration Azure CLI est terminée, vous pouvez définir les variables d’environnement utilisées dans cet article.

Définissez les variables suivantes dans votre interpréteur de commandes Bash.

export RESOURCE_GROUP="album-containerapps"
export LOCATION="canadacentral"
export ENVIRONMENT="env-album-containerapps"
export API_NAME="album-api"

Obtenir l’exemple de code

Téléchargez et extrayez l’exemple d’application d’API dans le langage de votre choix.

Téléchargez le code source sur votre ordinateur.

Extrayez le téléchargement et basculez vers le dossier containerapps-albumapi-csharp-main/src.

Téléchargez le code source sur votre ordinateur.

Extrayez le téléchargement et basculez vers le dossier containerapps-albumapi-csharp-buildpack/src.


Générer, puis déployer l’application conteneur

Générez et déployez votre première application conteneur à l’aide de la commande containerapp up. Cette commande va :

  • Créer le groupe de ressources
  • Création d’un Azure Container Registry
  • Générer l’image conteneur, puis l’envoyer (push) au registre
  • Créer l’environnement Container Apps avec un espace de travail Log Analytics
  • Créer et déployer l’application conteneur à l’aide de l’image conteneur générée
  • Créer le groupe de ressources
  • Créer un registre par défaut dans le cadre de votre environnement
  • Détecter le langage et le runtime de votre application, et générer l’image à l’aide du Buildpack approprié
  • Envoyer (push) l’image dans le registre Azure Container Apps par défaut
  • Créer l’environnement Container Apps avec un espace de travail Log Analytics
  • Créer et déployer l’application conteneur à l’aide de l’image conteneur générée

La commande up utilise le Dockerfile à la racine du dépôt pour générer l’image conteneur. L’instruction EXPOSE du Dockerfile a défini le port cible, qui est le port utilisé pour envoyer le trafic d’entrée au conteneur.

Si la commande up ne trouve pas de Dockerfile, elle utilise automatiquement Buildpacks pour transformer votre source d’application en conteneur exécutable. Étant donné que Buildpack tente d’exécuter la build en votre nom, vous devez indiquer à la commande up vers quel port envoyer le trafic d’entrée.

Dans l’exemple de code suivant, le . (point) indique à containerapp up qu’il faut exécuter dans le répertoire src de l’exemple d’application API extrait.

az containerapp up \
  --name $API_NAME \
  --location $LOCATION \
  --environment $ENVIRONMENT \
  --source .
az containerapp up \
  --name $API_NAME \
  --location $LOCATION \
  --environment $ENVIRONMENT \
  --ingress external \
  --target-port 8080 \
  --source .

Important

Pour déployer votre application conteneur dans un groupe de ressources existant, ajoutez --resource-group yourResourceGroup à la commande containerapp up.

Vérifier le déploiement

Copiez le nom de domaine complet dans un navigateur web. Depuis votre navigateur web, accédez au point de terminaison /albums du nom de domaine complet.

Capture d’écran de la réponse du point de terminaison de l’API albums.

Limites

La taille maximale pour le chargement du code source est de 200 Mo. Si le chargement dépasse la limite, une erreur 413 est retournée.

Nettoyer les ressources

Si vous ne passez pas au tutoriel Déployer un front-end, vous pouvez supprimer les ressources Azure créées lors de ce démarrage rapide avec la commande suivante.

Attention

La commande suivante supprime le groupe de ressources spécifié et toutes les ressources qu’il contient. Si le groupe contient des ressources ne concernant pas ce démarrage rapide, ces ressources sont également supprimées.

az group delete --name $RESOURCE_GROUP

Conseil

Vous rencontrez des problèmes ? Faites-le nous savoir sur GitHub en ouvrant un problème dans le dépôt Azure Container Apps.

Étapes suivantes

Après avoir terminé ce guide de démarrage rapide, vous pouvez passer à Tutoriel : communication entre les microservices dans Azure Container Apps pour apprendre à déployer une application front-end qui appelle l’API.