Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
Dit artikel laat zien hoe u de container-app die u in het vorige artikel hebt gemaakt, bijwerkt en uw broncode implementeert in Azure Container Apps.
Als u de stappen in het vorige artikel nog niet hebt voltooid, stopt u hier en keert u terug naar dit artikel zodra alle stappen zijn uitgevoerd.
In deze zelfstudie doet u het volgende:
- Breng een codewijziging aan in uw toepassing.
- Push uw wijzigingen naar het containerregister met een nieuwe tag.
- Bekijk de bijgewerkte app in een browser.
- Voer een query uit voor de logboekstroom om vastgelegde berichten weer te geven.
Vereisten
Voor het voltooien van dit project hebt u de hulpprogramma's, resources en container-app nodig die u in de vorige zelfstudie hebt gemaakt, van broncode bouwen en implementeren in Azure Container Apps.
Instellingen
Meld u zo nodig aan bij Azure vanuit de CLI.
az loginOmgevingsvariabelen maken. Als uw omgevingsvariabelen uit de laatste zelfstudie nog steeds aanwezig zijn in uw terminal, kunt u deze stap overslaan.
Als u de omgevingsvariabelen opnieuw moet maken, moet u eerst een query uitvoeren op de naam van het containerregister dat u in het laatste artikel hebt gemaakt.
Voer de volgende opdracht uit om een query uit te voeren voor het containerregister dat u in de laatste zelfstudie hebt gemaakt.
az acr list --query "[].{Name:name}" --output tableZodra u de naam van het containerregister hebt, vervangt
<REGISTRY_NAME>u de registernaam en voert u de volgende opdracht uit.RESOURCE_GROUP="my-demo-group" CONTAINER_APP_NAME="my-demo-app" REGISTRY_NAME="<REGISTRY_NAME>"Werk de broncode bij en voer deze uit.
Vervang de inhoud door
Startup.csde volgende code.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!"); }); }); } }Deze versie van de code registreert een logboekregistratie om informatie naar de console en de Container Apps-logboekstream te schrijven.
Bouw uw project in de releaseconfiguratie.
dotnet build -c ReleaseVoer vervolgens uw toepassing uit om te controleren of uw code correct is geïmplementeerd.
dotnet run --configuration Release
De installatiekopieën naar een register bouwen en pushen
Nu uw code is bijgewerkt, kunt u de nieuwste versie als een nieuwe installatiekopieën naar uw containerregister pushen.
Gebruik de volgende opdracht om een tagnaam te maken die wordt gebruikt voor uw register.
IMAGE_TAG=$(date +%s)
U kunt nu uw nieuwe containerinstallatiekopieën bouwen en naar het register pushen met behulp van de volgende opdracht.
az acr build \
-t $REGISTRY_NAME.azurecr.io/$CONTAINER_APP_NAME:$IMAGE_TAG \
-r $REGISTRY_NAME .
Een nieuwe revisie maken
U kunt een nieuwe revisie van uw container-app maken op basis van de nieuwe containerinstallatiekopieën die u naar het register hebt gepusht.
az containerapp revision copy \
--name $CONTAINER_APP_NAME \
--resource-group $RESOURCE_GROUP \
--image "$REGISTRY_NAME.azurecr.io/$CONTAINER_APP_NAME:$IMAGE_TAG" \
--output none
Met revision copy de opdracht maakt u een nieuwe revisie van uw container-app met de opgegeven containerinstallatiekopieën uit het register.
Implementatie verifiëren
Nu uw toepassing is geïmplementeerd, kunt u met deze opdracht een query uitvoeren op de URL.
az containerapp show \
--name $CONTAINER_APP_NAME \
--resource-group $RESOURCE_GROUP \
--query properties.configuration.ingress.fqdn -o tsv
Ga in een webbrowser naar de URL van de app. Zodra de container-app is gestart, wordt Hello Logger! uitgevoerd.
Querylogboekstream
U hebt zojuist de uitvoer gezien die naar de browser is verzonden, dus nu kunt u de volgende opdracht gebruiken om de berichten te zien die in de logboekstroom worden geregistreerd.
az containerapp logs show \
--name $CONTAINER_APP_NAME \
--resource-group $RESOURCE_GROUP \
--follow
De query retourneert een antwoord dat lijkt op het volgende voorbeeld:
{"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!""}
U ziet hoe u het bericht Hello Logger! in de stream kunt zien.
Als u wilt stoppen met het volgen van de stream, kunt u Cmd/Ctrl + C invoeren om de berichten te beëindigen.
Resources opschonen
Als u de Azure-resources die in deze zelfstudie zijn gemaakt niet gaat gebruiken, kunt u ze verwijderen met de volgende opdracht.
az group delete --name my-demo-group
Tip
Ondervindt u problemen? Laat het ons weten op GitHub door een probleem te openen in de Azure Container Apps-opslagplaats.
Volgende stappen
Ga verder om te leren hoe u verbinding maakt met services in Azure Container Apps.