Note
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier les répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de changer de répertoire.
Cet article montre comment mettre à jour l’application conteneur que vous avez créée dans l’article précédent, Générer et déployer votre code source sur Azure Container Apps.
Si vous n’avez pas effectué les étapes décrites dans l’article précédent, arrêtez ici et revenez à cet article une fois que toutes les étapes sont effectuées.
Dans ce tutoriel, vous allez :
- Apporter une modification de code à votre application.
- Envoyer vos modifications au registre de conteneurs avec une nouvelle balise.
- Afficher l’application mise à jour dans un navigateur.
- Interroger le flux de journal pour afficher les messages enregistrés.
Prérequis
Pour terminer ce projet, vous avez besoin des outils, des ressources et de l’application conteneur créés dans le tutoriel précédent, Générer et déployer à partir du code source vers Azure Container Apps.
Programme d’installation
Si nécessaire, connectez-vous à Azure à partir de l’interface CLI.
az loginCréez des variables d’environnement. Si vos variables d’environnement du dernier tutoriel existent toujours dans votre terminal, vous pouvez ignorer cette étape.
Si vous devez recréer les variables d’environnement, vous devez d’abord rechercher le nom du registre de conteneurs que vous avez créé dans le dernier article.
Exécutez la commande suivante pour rechercher le registre de conteneurs que vous avez créé dans le dernier tutoriel.
az acr list --query "[].{Name:name}" --output tableUne fois que vous avez le nom de votre registre de conteneurs, remplacez
<REGISTRY_NAME>par votre nom de registre et exécutez la commande suivante.RESOURCE_GROUP="my-demo-group" CONTAINER_APP_NAME="my-demo-app" REGISTRY_NAME="<REGISTRY_NAME>"Mettez à jour et exécutez votre code source.
Remplacez le contenu de
Startup.cspar le code suivant.public class Startup { public void ConfigureServices(IServiceCollection services) { } public void Configure(IApplicationBuilder app, ILogger<Startup> logger) { app.UseRouting(); app.UseEndpoints(endpoints => { endpoints.MapGet("/", async context => { logger.LogInformation("Hello Logger!"); await context.Response.WriteAsync("Hello Logger!"); }); }); } }Cette version du code inscrit un enregistreur d’événements pour écrire des informations dans la console et le flux de journal Container Apps.
Générez votre projet dans la configuration Release (Mise en production).
dotnet build -c ReleaseEnsuite, exécutez votre application pour vérifier que votre code est implémenté correctement.
dotnet run --configuration Release
Générer et envoyer (push) l’image à un registre
Maintenant que votre code est mis à jour, vous pouvez envoyer (push) la dernière version en tant qu’image nouvelle à votre registre de conteneurs.
Pour vous assurer que la balise utilisée pour votre registre est unique, utilisez la commande suivante pour créer un nom de balise.
IMAGE_TAG=$(date +%s)
Vous pouvez maintenant générer et envoyer (push) votre nouvelle image conteneur au Registre à l’aide de la commande suivante.
az acr build \
-t $REGISTRY_NAME.azurecr.io/$CONTAINER_APP_NAME:$IMAGE_TAG \
-r $REGISTRY_NAME .
Créer une nouvelle révision
Vous pouvez créer une révision de votre application conteneur en fonction de la nouvelle image conteneur que vous avez envoyée (push) à votre registre.
az containerapp revision copy \
--name $CONTAINER_APP_NAME \
--resource-group $RESOURCE_GROUP \
--image "$REGISTRY_NAME.azurecr.io/$CONTAINER_APP_NAME:$IMAGE_TAG" \
--output none
La commande revision copy crée une révision de votre application conteneur avec l’image conteneur spécifiée à partir du Registre.
Vérifier le déploiement
Maintenant que votre application est déployée, vous pouvez rechercher l’URL avec cette commande.
az containerapp show \
--name $CONTAINER_APP_NAME \
--resource-group $RESOURCE_GROUP \
--query properties.configuration.ingress.fqdn -o tsv
Dans un navigateur web, accédez à l’URL de l’application. Une fois l’application conteneur démarrée, elle génère Hello Logger!.
Interroger le flux de journal
Vous venez de voir la sortie envoyée au navigateur. Vous pouvez maintenant utiliser la commande suivante pour voir les messages consignés dans le flux de journal.
az containerapp logs show \
--name $CONTAINER_APP_NAME \
--resource-group $RESOURCE_GROUP \
--follow
La requête retourne une réponse similaire à l’exemple suivant :
{"TimeStamp", "xxxx", "Log": "info: Microsoft.Hosting.Lifetime[0]"}
{"TimeStamp", "xxxx", "Log": "Hosting environment: Production"}
{"TimeStamp", "xxxx", "Log": "info: Microsoft.Hosting.Lifetime[0]"}
{"TimeStamp", "xxxx", "Log": "Content root path: /app"}
{"TimeStamp", "xxxx", "Log": "info: Startup[0]"}
{"TimeStamp", "xxxx", "Log": "Hello Logger!""}
Notez comment vous pouvez voir le message Hello Logger! dans le flux.
Pour arrêter de suivre le flux, vous pouvez entrer Cmd/Ctrl + C pour arrêter les messages.
Nettoyer les ressources
Si vous n’allez pas utiliser les ressources Azure créées dans ce tutoriel, vous pouvez les supprimer avec la commande suivante.
az group delete --name my-demo-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
Continuez pour apprendre à vous connecter aux services dans Azure Container Apps.