Quickstart: Een bestaande containerinstallatiekopie implementeren met de opdrachtregel
Met de Azure Container Apps-service kunt u microservices en toepassingen in containers uitvoeren op een serverloos platform. Met Container Apps profiteert u van de voordelen van het uitvoeren van containers terwijl u zich zorgen maakt over handmatige configuratie van cloudinfrastructuur en complexe containerorchestrators.
In dit artikel wordt beschreven hoe u een bestaande container implementeert in Azure Container Apps.
Notitie
Autorisatie van privéregisters wordt ondersteund via de gebruikersnaam en het wachtwoord van het register.
Vereisten
- Een Azure-account met een actief abonnement.
- Als u geen account hebt, kunt u er gratis een maken.
- Installeer de Azure CLI.
- Toegang tot een openbaar of privécontainerregister, zoals Azure Container Registry.
Instellingen
Als u zich wilt aanmelden bij Azure vanuit de CLI, voert u de volgende opdracht uit en volgt u de aanwijzingen om het verificatieproces te voltooien.
az login
Voer de upgradeopdracht uit om ervoor te zorgen dat u de nieuwste versie van de CLI uitvoert.
az upgrade
Installeer of werk vervolgens de Azure Container Apps-extensie voor de CLI bij.
Als u fouten ontvangt over ontbrekende parameters wanneer u opdrachten uitvoert az containerapp
in Azure CLI of cmdlets vanuit de Az.App
module in Azure PowerShell, moet u ervoor zorgen dat de nieuwste versie van de Azure Container Apps-extensie is geïnstalleerd.
az extension add --name containerapp --upgrade
Notitie
Vanaf mei 2024 schakelen Azure CLI-extensies standaard geen preview-functies meer in. Als u toegang wilt krijgen tot de preview-functies van Container Apps, installeert u de Container Apps-extensie met --allow-preview true
.
az extension add --name containerapp --upgrade --allow-preview true
Nu de huidige extensie of module is geïnstalleerd, registreert u de Microsoft.App
en Microsoft.OperationalInsights
naamruimten.
az provider register --namespace Microsoft.App
az provider register --namespace Microsoft.OperationalInsights
Omgevingsvariabelen instellen
Stel de volgende omgevingsvariabelen in. Vervang <TIJDELIJKE AANDUIDINGEN> door uw waarden:
RESOURCE_GROUP="<RESOURCE_GROUP>"
LOCATION="<LOCATION>"
CONTAINERAPPS_ENVIRONMENT="<CONTAINERAPPS_ENVIRONMENT>"
Maak een Azure-resourcegroep
Maak een resourcegroep om de services te ordenen die betrekking hebben op de implementatie van uw container-app.
az group create \
--name $RESOURCE_GROUP \
--location "$LOCATION"
Een omgeving maken
Een omgeving in Azure Container Apps maakt een veilige grens rond een groep container-apps. Container Apps die in dezelfde omgeving zijn geïmplementeerd, worden geïmplementeerd in hetzelfde virtuele netwerk en schrijven logboeken naar dezelfde Log Analytics-werkruimte.
Voer de volgende opdracht uit om de omgeving te maken:
az containerapp env create \
--name $CONTAINERAPPS_ENVIRONMENT \
--resource-group $RESOURCE_GROUP \
--location "$LOCATION"
Een container-app maken
Nu u een omgeving hebt gemaakt, kunt u uw eerste container-app implementeren. Implementeer met de containerapp create
opdracht een containerinstallatiekopieën in Azure Container Apps.
Het voorbeeld in dit artikel laat zien hoe u een aangepaste containerinstallatiekopieën gebruikt met algemene opdrachten. Uw containerinstallatiekopieën hebben mogelijk meer parameters nodig voor de volgende items:
- De revisiemodus instellen
- Geheimen definiëren
- Omgevingsvariabelen definiëren
- Cpu- of geheugenvereisten voor containers instellen
- Dapr inschakelen en configureren
- Extern of intern inkomend verkeer inschakelen
- Minimum- en maximumreplicawaarden of schaalregels opgeven
Voor meer informatie over het opgeven van waarden voor een van deze parameters aan de create
opdracht, voert u de onlinereferentie uit az containerapp create --help
of bezoekt u deze. Als u referenties voor een Azure Container Registry wilt genereren, gebruikt u az acr credential show.
CONTAINER_IMAGE_NAME=<CONTAINER_IMAGE_NAME>
REGISTRY_SERVER=<REGISTRY_SERVER>
REGISTRY_USERNAME=<REGISTRY_USERNAME>
REGISTRY_PASSWORD=<REGISTRY_PASSWORD>
(Vervang de <tijdelijke aanduidingen> door uw waarden.)
az containerapp create \
--name my-container-app \
--resource-group $RESOURCE_GROUP \
--image $CONTAINER_IMAGE_NAME \
--environment $CONTAINERAPPS_ENVIRONMENT \
--registry-server $REGISTRY_SERVER \
--registry-username $REGISTRY_USERNAME \
--registry-password $REGISTRY_PASSWORD
az containerapp create \
--image <REGISTRY_CONTAINER_NAME> \
--name my-container-app \
--resource-group $RESOURCE_GROUP \
--environment $CONTAINERAPPS_ENVIRONMENT
If you have enabled ingress on your container app, you can add `--query properties.configuration.ingress.fqdn` to the `create` command to return the public URL for the application.
Voordat u deze opdracht uitvoert, vervangt <REGISTRY_CONTAINER_NAME>
u de volledige naam van de locatie van het openbare containerregister, inclusief het registerpad en de tag. Een geldige containernaam is mcr.microsoft.com/k8se/quickstart:latest
bijvoorbeeld .
Implementatie verifiëren
Als u een geslaagde implementatie wilt controleren, kunt u een query uitvoeren op de Log Analytics-werkruimte. Mogelijk moet u enkele minuten wachten totdat de analyse voor het eerst binnenkomt voordat u query's kunt uitvoeren op de logboeken. Dit is afhankelijk van de consolelogboekregistratie die is geïmplementeerd in uw container-app.
Gebruik de volgende opdrachten om consolelogboekberichten weer te geven.
LOG_ANALYTICS_WORKSPACE_CLIENT_ID=`az containerapp env show --name $CONTAINERAPPS_ENVIRONMENT --resource-group $RESOURCE_GROUP --query properties.appLogsConfiguration.logAnalyticsConfiguration.customerId --out tsv`
az monitor log-analytics query \
--workspace $LOG_ANALYTICS_WORKSPACE_CLIENT_ID \
--analytics-query "ContainerAppConsoleLogs_CL | where ContainerAppName_s == 'my-container-app' | project ContainerAppName_s, Log_s, TimeGenerated" \
--out table
Resources opschonen
Als u deze toepassing niet wilt blijven gebruiken, voert u de volgende opdracht uit om de resourcegroep te verwijderen, samen met alle resources die in deze quickstart zijn gemaakt.
Let op
Met de volgende opdracht verwijdert u de opgegeven resourcegroep en alle resources erin. Als resources buiten het bereik van deze quickstart in de opgegeven resourcegroep bestaan, worden ze ook verwijderd.
az group delete --name $RESOURCE_GROUP
Tip
Ondervindt u problemen? Laat het ons weten op GitHub door een probleem te openen in de Azure Container Apps-opslagplaats.