Vyžádání image Azure Container Apps se spravovanou identitou
Image z privátních úložišť ve službě Microsoft Azure Container Registry můžete načíst pomocí spravovaných identit pro ověřování, abyste se vyhnuli použití přihlašovacích údajů pro správu.
Spravovanou identitu přiřazenou uživatelem nebo systémem můžete použít k ověření ve službě Azure Container Registry.
- Pomocí spravované identity přiřazené uživatelem vytvoříte a spravujete identitu mimo Azure Container Apps. Dá se přiřadit k několika prostředkům Azure, včetně Azure Container Apps.
- Se spravovanou identitou přiřazenou systémem se identita vytvoří a spravuje pomocí Azure Container Apps. Je svázaný s vaší aplikací kontejneru a po odstranění aplikace se odstraní.
- Pokud je to možné, měli byste k vyžádání imagí použít spravovanou identitu přiřazenou uživatelem.
Container Apps při každém spuštění kontejneru vyhledá novou verzi image. V terminologii Dockeru nebo Kubernetes nastaví Container Apps zásady vyžádání image každého kontejneru na always
.
Tento článek popisuje, jak pomocí webu Azure Portal nakonfigurovat aplikaci kontejneru tak, aby používala spravované identity přiřazené uživatelem a systémem k načtení imagí z privátních úložišť Azure Container Registry.
Spravovaná identita přiřazená uživatelem
Následující kroky popisují proces konfigurace aplikace kontejneru tak, aby používala spravovanou identitu přiřazenou uživatelem k načtení imagí z privátních úložišť služby Azure Container Registry.
- Vytvořte aplikaci kontejneru s veřejnou imagí.
- Přidejte spravovanou identitu přiřazenou uživatelem do aplikace kontejneru.
- Vytvořte revizi aplikace kontejneru s privátní imagí a spravovanou identitou přiřazenou uživatelem.
Požadavky
Účet Azure s aktivním předplatným.
- Pokud jej nemáte, můžete si jej zdarma vytvořit.
Privátní služba Azure Container Registry obsahující image, kterou chcete vyžádat.
Aby bylo možné použít spravovanou identitu k načtení imagí, musí vaše služba Azure Container Registry povolit tokeny cílové skupiny ARM pro ověřování. Pomocí následujícího příkazu zkontrolujte, jestli mají tokeny ARM povolený přístup k vaší službě ACR:
az acr config authentication-as-arm show -r <REGISTRY>
Pokud jsou tokeny ARM zakázané, můžete je povolit pomocí následujícího příkazu:
az acr config authentication-as-arm update -r <REGISTRY> --status enabled
Vytvořte spravovanou identitu přiřazenou uživatelem. Další informace najdete v tématu Vytvoření spravované identity přiřazené uživatelem.
Vytvoření aplikace typu kontejner
Pomocí následujících kroků vytvořte aplikaci kontejneru s výchozí imagí rychlého startu.
Přejděte na domovskou stránku portálu.
Na horním panelu hledání vyhledejte Container Apps .
Ve výsledcích hledání vyberte KontejnerOvé aplikace .
Vyberte tlačítko Vytvořit.
Na kartě Základy proveďte následující akce.
Nastavení Akce Předplatné Vyberte své předplatné Azure. Skupina prostředků Vyberte existující skupinu prostředků nebo vytvořte novou. Název kontejnerové aplikace Zadejte název aplikace kontejneru. Místo Vyberte umístění. Vytvoření prostředí kontejnerové aplikace Vytvořte nové nebo vyberte existující prostředí. V dolní části stránky Vytvořit aplikaci kontejneru vyberte tlačítko Zkontrolovat a vytvořit.
V dolní části okna Vytvořit aplikaci kontejneru vyberte tlačítko Vytvořit.
Počkejte několik minut, než se dokončí nasazení aplikace kontejneru. Po dokončení nasazení vyberte Přejít k prostředku.
Přidání spravované identity přiřazené uživatelem
- V nabídce vlevo vyberte Identitu .
- Vyberte kartu Přiřazené uživatelem.
- Vyberte tlačítko Přidat spravovanou identitu přiřazenou uživatelem.
- Vyberte své předplatné.
- Vyberte identitu, kterou jste vytvořili.
- Vyberte Přidat.
Vytvoření revize aplikace typu kontejner
Vytvořte revizi aplikace kontejneru s privátní imagí a spravovanou identitou přiřazenou systémem.
V nabídce vlevo vyberte Správa revizí.
Vyberte Vytvořit novou revizi.
Vyberte image kontejneru z tabulky Image kontejneru.
Zadejte informace v dialogovém okně Upravit kontejner .
Pole Akce Název Zadejte název kontejneru. Zdroj obrázku Vyberte Azure Container Registry. Authentication Vyberte spravovanou identitu. Identita V rozevírací nabídce vyberte identitu, kterou jste vytvořili. Registr V rozevírací nabídce vyberte registr, který chcete použít. Obrázek Zadejte název obrázku, který chcete použít. Značka obrázku Zadejte název a značku obrázku, který chcete stáhnout. Poznámka:
Pokud přihlašovací údaje pro správu nejsou v registru služby Azure Container Registry povolené, zobrazí se zpráva s upozorněním a budete muset zadat název image a informace o značkách ručně.
Zvolte Uložit.
Vyberte Vytvořit na stránce Vytvořit a nasadit novou revizní stránku.
Vytvoří se a nasadí nová revize. Portál se automaticky pokusí přidat acrpull
roli do spravované identity přiřazené uživatelem. Pokud se role nepřidá, můžete ji přidat ručně.
Pokud chcete ověřit, jestli byla role přidaná, zkontrolujte identitu v podokně Identita na stránce aplikace kontejneru.
- V nabídce vlevo vyberte Identitu .
- Vyberte kartu Přiřazené uživatelem.
- Vyberte spravovanou identitu přiřazenou uživatelem.
- V nabídce na stránce prostředku spravované identity vyberte přiřazení rolí Azure.
- Ověřte, že
acrpull
je role přiřazená spravované identitě přiřazené uživatelem.
Vytvoření aplikace typu kontejner s privátní imagí
Pokud nechcete začít vytvořením aplikace typu kontejner s veřejnou imagí, můžete také provést následující kroky.
- Vytvořte spravovanou identitu přiřazenou uživatelem.
acrpull
Přidejte roli do spravované identity přiřazené uživatelem.- Vytvořte aplikaci kontejneru s privátní imagí a spravovanou identitou přiřazenou uživatelem.
Tato metoda je typická ve scénářích infrastruktury jako kódu (IaC).
Vyčištění prostředků
Pokud tuto aplikaci nebudete dál používat, můžete odstranit instanci Azure Container Apps a všechny přidružené služby odebráním skupiny prostředků.
Upozorňující
Odstraněním skupiny prostředků odstraníte všechny prostředky ve skupině. Pokud máte ve skupině další prostředky, odstraní se také. Pokud chcete zachovat prostředky, můžete odstranit instanci aplikace kontejneru a prostředí kontejnerové aplikace.
- V části Přehled vyberte skupinu prostředků.
- V horní části přehledu skupiny prostředků vyberte tlačítko Odstranit skupinu prostředků.
- Do potvrzovacího dialogového okna zadejte název skupiny prostředků.
- Vyberte Odstranit. Dokončení procesu odstranění skupiny prostředků může trvat několik minut.
Spravovaná identita přiřazená systémem
Metoda konfigurace spravované identity přiřazené systémem na webu Azure Portal je stejná jako konfigurace spravované identity přiřazené uživatelem. Jediným rozdílem je, že nemusíte vytvářet spravovanou identitu přiřazenou uživatelem. Místo toho se spravovaná identita přiřazená systémem vytvoří při vytváření aplikace kontejneru.
Metoda konfigurace spravované identity přiřazené systémem na webu Azure Portal je:
- Vytvořte aplikaci kontejneru s veřejnou imagí.
- Vytvořte revizi aplikace kontejneru s privátní imagí a spravovanou identitou přiřazenou systémem.
Požadavky
- Účet Azure s aktivním předplatným.
- Pokud jej nemáte, můžete si jej zdarma vytvořit.
- Privátní služba Azure Container Registry obsahující image, kterou chcete vyžádat. Viz Vytvoření privátní služby Azure Container Registry.
Vytvoření aplikace typu kontejner
Pomocí těchto kroků vytvořte aplikaci kontejneru s výchozí imagí rychlého startu.
Přejděte na domovskou stránku portálu.
Na horním panelu hledání vyhledejte Container Apps .
Ve výsledcích hledání vyberte KontejnerOvé aplikace .
Vyberte tlačítko Vytvořit.
Na kartě Základy proveďte následující akce.
Nastavení Akce Předplatné Vyberte své předplatné Azure. Skupina prostředků Vyberte existující skupinu prostředků nebo vytvořte novou. Název kontejnerové aplikace Zadejte název aplikace kontejneru. Zdroj nasazení Ponechte tuto možnost nastavenou na image kontejneru. Oblast Vyberte oblast. Prostředí Container Apps Vyberte existující prostředí nebo vyberte Vytvořit nové. Další informace najdete v tématu Prostředí Azure Container Apps. Vyberte Další: Kontejner >.
Na kartě Kontejner povolte image Rychlé zprovoznění. Ponechte image rychlého startu nastavenou na jednoduchý kontejner Hello World.
V dolní části stránky Vytvořit aplikaci kontejneru vyberte tlačítko Zkontrolovat a vytvořit.
V dolní části stránky Vytvořit aplikaci kontejneru vyberte tlačítko Vytvořit.
Počkejte několik minut, než se dokončí nasazení aplikace kontejneru. Po dokončení nasazení vyberte Přejít k prostředku.
Úprava a nasazení revize
Upravte kontejner tak, aby používal image z privátní služby Azure Container Registry, a nakonfigurujte ověřování tak, aby používalo identitu přiřazenou systémem.
V aplikaci vyberte Kontejnery.
Na stránce Kontejnery vyberte Upravit a nasadit.
Ze seznamu vyberte kontejner simple-hello-world-container.
Na stránce Upravit kontejner proveďte následující akce.
Nastavení Akce Název Zadejte název aplikace kontejneru. Zdroj obrázku Vyberte Azure Container Registry. Předplatné Vyberte své předplatné Azure. Registr Vyberte registr kontejneru. Obrázek Zadejte název obrázku. Značka obrázku Zadejte značku obrázku. Typ ověřování Vyberte Spravovaná identita. Spravovaná identita Vyberte Systém přiřazený. Vyberte Uložit v dolní části stránky.
Vyberte Vytvořit v dolní části stránky Vytvořit a nasadit novou revizní stránku.
Po několika minutách vyberte Aktualizovat na stránce Správa revizí, abyste viděli novou revizi.
Vytvoří se a nasadí nová revize. Portál se automaticky pokusí přidat acrpull
roli do spravované identity přiřazené systémem. Pokud se role nepřidá, můžete ji přidat ručně.
Roli můžete ověřit tak, že v podokně Identita na stránce aplikace kontejneru zkontrolujete identitu.
- V nabídce vlevo vyberte Identitu .
- Vyberte kartu Přiřazená systémem.
- Vyberte přiřazení rolí Azure.
- Ověřte, že
acrpull
je role přiřazená spravované identitě přiřazené systémem.
Vyčištění prostředků
Pokud tuto aplikaci nebudete dál používat, můžete odstranit instanci Azure Container Apps a všechny přidružené služby odebráním skupiny prostředků.
Upozorňující
Odstraněním skupiny prostředků odstraníte všechny prostředky ve skupině. Pokud máte ve skupině další prostředky, odstraní se také. Pokud chcete zachovat prostředky, můžete odstranit instanci aplikace kontejneru a prostředí kontejnerové aplikace.
- V části Přehled vyberte skupinu prostředků.
- V horní části přehledu skupiny prostředků vyberte tlačítko Odstranit skupinu prostředků.
- Do potvrzovacího dialogového okna zadejte název skupiny prostředků.
- Vyberte Odstranit. Dokončení procesu odstranění skupiny prostředků může trvat několik minut.
Tento článek popisuje, jak nakonfigurovat aplikaci kontejneru tak, aby používala spravované identity k načítání imagí z privátního úložiště Azure Container Registry pomocí Azure CLI a Azure PowerShellu.
Požadavky
Předpoklad | Popis |
---|---|
Účet Azure | Účet Azure s aktivním předplatným. Pokud jej nemáte, můžete si jej zdarma vytvořit. |
Azure CLI | Pokud používáte Azure CLI, nainstalujte Azure CLI na místní počítač. |
Azure PowerShell | Pokud používáte PowerShell, nainstalujte Azure PowerShell na místní počítač. Spuštěním příkazu Install-Module -Name Az.App se ujistěte, že je nainstalovaná nejnovější verze modulu Az.App . |
Azure Container Registry | Privátní služba Azure Container Registry obsahující image, kterou chcete vyžádat. Rychlý start: Vytvoření privátního registru kontejneru pomocí Azure CLI nebo rychlého startu: Vytvoření privátního registru kontejneru pomocí Azure PowerShellu |
Nastavení
Pokud se chcete přihlásit k Azure z rozhraní příkazového řádku, spusťte následující příkaz a podle pokynů dokončete proces ověřování.
az login
Pokud chcete zajistit, že používáte nejnovější verzi rozhraní příkazového řádku, spusťte příkaz upgrade.
az upgrade
Dále nainstalujte nebo aktualizujte rozšíření Azure Container Apps pro rozhraní příkazového řádku.
Pokud se při spouštění az containerapp
příkazů v Azure CLI nebo rutinách Az.App
z modulu v Azure PowerShellu zobrazí chyby týkající se chybějících parametrů, ujistěte se, že máte nainstalovanou nejnovější verzi rozšíření Azure Container Apps.
az extension add --name containerapp --upgrade
Poznámka:
Od května 2024 už rozšíření Azure CLI ve výchozím nastavení nepovolují funkce ve verzi Preview. Pokud chcete získat přístup k funkcím Container Apps ve verzi Preview, nainstalujte rozšíření Container Apps pomocí --allow-preview true
nástroje .
az extension add --name containerapp --upgrade --allow-preview true
Teď, když je nainstalované aktuální rozšíření nebo modul, zaregistrujte obory Microsoft.App
názvů a Microsoft.OperationalInsights
obory názvů.
az provider register --namespace Microsoft.App
az provider register --namespace Microsoft.OperationalInsights
Dále nastavte následující proměnné prostředí. Nahraďte zástupné symboly ohraničené <>
hodnotami.
RESOURCE_GROUP="<YOUR_RESOURCE_GROUP_NAME>"
LOCATION="<YOUR_LOCATION>"
CONTAINERAPPS_ENVIRONMENT="<YOUR_ENVIRONMENT_NAME>"
REGISTRY_NAME="<YOUR_REGISTRY_NAME>"
CONTAINERAPP_NAME="<YOUR_CONTAINERAPP_NAME>"
IMAGE_NAME="<YOUR_IMAGE_NAME>"
Pokud už máte skupinu prostředků, tento krok přeskočte. V opačném případě vytvořte skupinu prostředků.
az group create \
--name $RESOURCE_GROUP \
--location $LOCATION
Vytvoření prostředí kontejnerové aplikace
Pokud prostředí neexistuje, spusťte následující příkaz:
Pokud chcete vytvořit prostředí, spusťte následující příkaz:
az containerapp env create \
--name $CONTAINERAPPS_ENVIRONMENT \
--resource-group $RESOURCE_GROUP \
--location $LOCATION
Pokračujte k další části a nakonfigurujte spravovanou identitu přiřazenou uživatelem nebo přejděte do části Spravovaná identita přiřazená systémem.
Spravovaná identita přiřazená uživatelem
Podle tohoto postupu nakonfigurujte spravovanou identitu přiřazenou uživatelem:
- Vytvořte spravovanou identitu přiřazenou uživatelem.
- Pokud používáte PowerShell, přiřaďte
acrpull
spravované identitě roli registru. Azure CLI toto přiřazení automaticky provede. - Vytvořte aplikaci kontejneru s imagí z privátního registru, který se ověřuje pomocí spravované identity přiřazené uživatelem.
Vytvoření spravované identity přiřazené uživatelem
Vytvořte spravovanou identitu přiřazenou uživatelem. Před spuštěním následujícího příkazu nahraďte <zástupné symboly> názvem vaší spravované identity.
IDENTITY="<YOUR_IDENTITY_NAME>"
az identity create \
--name $IDENTITY \
--resource-group $RESOURCE_GROUP
Získejte ID prostředku identity.
IDENTITY_ID=$(az identity show \
--name $IDENTITY \
--resource-group $RESOURCE_GROUP \
--query id \
--output tsv)
Vytvoření aplikace typu kontejner
Vytvořte aplikaci kontejneru s imagí z privátního registru ověřeného identitou.
Zkopírujte ID prostředku identity a vložte ho <do zástupných symbolů IDENTITY_ID> v následujícím příkazu. Pokud značka obrázku není latest
, nahraďte "latest" značkou.
echo $IDENTITY_ID
az containerapp create \
--name $CONTAINERAPP_NAME \
--resource-group $RESOURCE_GROUP \
--environment $CONTAINERAPPS_ENVIRONMENT \
--user-assigned <IDENTITY_ID> \
--registry-identity <IDENTITY_ID> \
--registry-server "${REGISTRY_NAME}.azurecr.io" \
--image "${REGISTRY_NAME}.azurecr.io/${IMAGE_NAME}:latest"
Vyčištění
Upozornění
Následující příkaz odstraní zadanou skupinu prostředků a všechny prostředky obsažené v ní. Pokud prostředky mimo rozsah tohoto rychlého startu existují v zadané skupině prostředků, odstraní se také.
az group delete --name $RESOURCE_GROUP
Spravovaná identita přiřazená systémem
Pokud chcete nakonfigurovat identitu přiřazenou systémem, budete muset:
- Vytvořte aplikaci kontejneru s veřejnou imagí.
- Přiřaďte spravované identitě přiřazené systémem k aplikaci kontejneru.
- Aktualizujte aplikaci kontejneru pomocí privátní image.
Vytvoření aplikace typu kontejner
Vytvořte kontejner s veřejnou imagí.
az containerapp create \
--name $CONTAINERAPP_NAME \
--resource-group $RESOURCE_GROUP \
--environment $CONTAINERAPPS_ENVIRONMENT \
--image mcr.microsoft.com/k8se/quickstart:latest \
--target-port 80 \
--ingress external
Aktualizace aplikace kontejneru
Aktualizujte aplikaci kontejneru pomocí image z privátního registru kontejneru a přidejte identitu přiřazenou systémem pro ověření vyžádání služby Azure Container Registry. Můžete také zahrnout další nastavení potřebná pro vaši aplikaci kontejneru, jako jsou příchozí přenos dat, škálování a nastavení Dapr.
Nastavte server registru a zapněte spravovanou identitu přiřazenou systémem v aplikaci kontejneru.
az containerapp registry set \
--name $CONTAINERAPP_NAME \
--resource-group $RESOURCE_GROUP \
--identity system \
--server "${REGISTRY_NAME}.azurecr.io"
az containerapp update \
--name $CONTAINERAPP_NAME \
--resource-group $RESOURCE_GROUP \
--image "${REGISTRY_NAME}.azurecr.io/${IMAGE_NAME}:latest"
Vyčištění
Upozornění
Následující příkaz odstraní zadanou skupinu prostředků a všechny prostředky obsažené v ní. Pokud prostředky mimo rozsah tohoto rychlého startu existují v zadané skupině prostředků, odstraní se také.
az group delete --name $RESOURCE_GROUP
Tento článek popisuje, jak pomocí šablony Bicep nakonfigurovat aplikaci kontejneru tak, aby používala spravované identity přiřazené uživatelem k načtení imagí z privátních úložišť Azure Container Registry.
Požadavky
- Účet Azure s aktivním předplatným.
- Pokud jej nemáte, můžete si jej zdarma vytvořit.
- Pokud používáte Azure CLI, nainstalujte Azure CLI na místní počítač.
- Pokud používáte PowerShell, nainstalujte Azure PowerShell na místní počítač. Spuštěním příkazu
Install-Module -Name Az.App
se ujistěte, že je nainstalovaná nejnovější verze modulu Az.App . - Privátní služba Azure Container Registry obsahující image, kterou chcete vyžádat. Pokud chcete vytvořit registr kontejneru a odeslat do ní image, projděte si rychlý start: Vytvoření privátního registru kontejneru pomocí Azure CLI nebo rychlého startu: Vytvoření privátního registru kontejneru pomocí Azure PowerShellu
Nastavení
Pokud se chcete přihlásit k Azure z rozhraní příkazového řádku, spusťte následující příkaz a podle pokynů dokončete proces ověřování.
az login
Pokud chcete zajistit, že používáte nejnovější verzi rozhraní příkazového řádku, spusťte příkaz upgrade.
az upgrade
Dále nainstalujte nebo aktualizujte rozšíření Azure Container Apps pro rozhraní příkazového řádku.
Pokud se při spouštění az containerapp
příkazů v Azure CLI nebo rutinách Az.App
z modulu v Azure PowerShellu zobrazí chyby týkající se chybějících parametrů, ujistěte se, že máte nainstalovanou nejnovější verzi rozšíření Azure Container Apps.
az extension add --name containerapp --upgrade
Poznámka:
Od května 2024 už rozšíření Azure CLI ve výchozím nastavení nepovolují funkce ve verzi Preview. Pokud chcete získat přístup k funkcím Container Apps ve verzi Preview, nainstalujte rozšíření Container Apps pomocí --allow-preview true
nástroje .
az extension add --name containerapp --upgrade --allow-preview true
Teď, když je nainstalované aktuální rozšíření nebo modul, zaregistrujte obory Microsoft.App
názvů a Microsoft.OperationalInsights
obory názvů.
az provider register --namespace Microsoft.App
az provider register --namespace Microsoft.OperationalInsights
Instalace Bicep
Pokud nemáte nainstalovaný Bicep, můžete ho nainstalovat následujícím způsobem.
az bicep install
Pokud máte nainstalovaný Bicep, ujistěte se, že máte nejnovější verzi.
az bicep upgrade
Další informace naleznete v tématu Instalace Bicep.
Nastavení proměnných prostředí
Dále nastavte následující proměnné prostředí. Zástupné symboly ohraničené <>
hodnotami nahraďte.
RESOURCE_GROUP="<RESOURCE_GROUP_NAME>"
LOCATION="<LOCATION>"
REGISTRY_NAME="<REGISTRY_NAME>"
IMAGE_NAME="<IMAGE_NAME>"
IMAGE_TAG="<IMAGE_TAG>"
BICEP_TEMPLATE="<BICEP_TEMPLATE>"
CONTAINERAPPS_ENVIRONMENT="<ENVIRONMENT_NAME>"
CONTAINER_NAME="<CONTAINER_NAME>"
CONTAINERAPP_NAME="<CONTAINERAPP_NAME>"
USER_ASSIGNED_IDENTITY_NAME="<USER_ASSIGNED_IDENTITY_NAME>"
LOG_ANALYTICS_WORKSPACE_NAME="<LOG_ANALYTICS_WORKSPACE_NAME>"
APP_INSIGHTS_NAME="<APP_INSIGHTS_NAME>"
ACR_PULL_DEFINITION_ID="7f951dda-4ed3-4680-a7ca-43fe172d538d"
Role AcrPull
uděluje spravované identitě přiřazené uživatelem oprávnění k načtení image z registru.
Šablona Bicep
Zkopírujte následující šablonu Bicep a uložte ji jako soubor s příponou .bicep
.
param environmentName string
param logAnalyticsWorkspaceName string
param appInsightsName string
param containerAppName string
param azureContainerRegistry string
param azureContainerRegistryImage string
param azureContainerRegistryImageTag string
param acrPullDefinitionId string
param userAssignedIdentityName string
param location string = resourceGroup().location
resource identity 'Microsoft.ManagedIdentity/userAssignedIdentities@2022-01-31-preview' = {
name: userAssignedIdentityName
location: location
}
resource roleAssignment 'Microsoft.Authorization/roleAssignments@2022-04-01' = {
name: guid(resourceGroup().id, azureContainerRegistry, 'AcrPullTestUserAssigned')
properties: {
principalId: identity.properties.principalId
principalType: 'ServicePrincipal'
// acrPullDefinitionId has a value of 7f951dda-4ed3-4680-a7ca-43fe172d538d
roleDefinitionId: resourceId('Microsoft.Authorization/roleDefinitions', acrPullDefinitionId)
}
}
resource logAnalyticsWorkspace 'Microsoft.OperationalInsights/workspaces@2022-10-01' = {
name: logAnalyticsWorkspaceName
location: location
properties: any({
retentionInDays: 30
features: {
searchVersion: 1
}
sku: {
name: 'PerGB2018'
}
})
}
resource appInsights 'Microsoft.Insights/components@2020-02-02' = {
name: appInsightsName
location: location
kind: 'web'
properties: {
Application_Type: 'web'
WorkspaceResourceId: logAnalyticsWorkspace.id
}
}
resource appEnvironment 'Microsoft.App/managedEnvironments@2022-06-01-preview' = {
name: environmentName
location: location
properties: {
daprAIInstrumentationKey: appInsights.properties.InstrumentationKey
appLogsConfiguration: {
destination: 'log-analytics'
logAnalyticsConfiguration: {
customerId: logAnalyticsWorkspace.properties.customerId
sharedKey: logAnalyticsWorkspace.listKeys().primarySharedKey
}
}
}
}
resource containerApp 'Microsoft.App/containerApps@2022-06-01-preview' = {
name: containerAppName
location: location
identity: {
type: 'UserAssigned'
userAssignedIdentities: {
'${identity.id}': {}
}
}
properties: {
environmentId: appEnvironment.id
configuration: {
ingress: {
targetPort: 8080
external: true
}
registries: [
{
server: '${azureContainerRegistry}.azurecr.io'
identity: identity.id
}
]
}
template: {
containers: [
{
image: '${azureContainerRegistry}.azurecr.io/${azureContainerRegistryImage}:${azureContainerRegistryImageTag}'
name: '${azureContainerName}'
resources: {
cpu: 1
memory: '2Gi'
}
}
]
scale: {
minReplicas: 1
maxReplicas: 1
}
}
}
}
output location string = location
output environmentId string = appEnvironment.id
Nasazení aplikace typu kontejner
Pomocí následujícího příkazu nasaďte aplikaci kontejneru.
az deployment group create \
--resource-group $RESOURCE_GROUP \
--template-file $BICEP_TEMPLATE \
--parameters environmentName="${CONTAINERAPPS_ENVIRONMENT}" \
logAnalyticsWorkspaceName="${LOG_ANALYTICS_WORKSPACE_NAME}" \
appInsightsName="${APP_INSIGHTS_NAME}" \
containerAppName="${CONTAINERAPP_NAME}" \
azureContainerRegistry="${REGISTRY_NAME}" \
azureContainerRegistryImage="${IMAGE_NAME}" \
azureContainerRegistryImageTag="${IMAGE_TAG}" \
azureContainerName="${CONTAINER_NAME}" \
acrPullDefinitionId="${ACR_PULL_DEFINITION_ID}" \
userAssignedIdentityName="${USER_ASSIGNED_IDENTITY_NAME}" \
location="${LOCATION}"
Tento příkaz nasadí následující příkaz.
- Skupina prostředků Azure.
- Prostředí Container Apps.
- Pracovní prostor služby Log Analytics přidružený k prostředí Container Apps.
- Prostředek Application Insights pro distribuované trasování
- Spravovaná identita přiřazená uživatelem.
- Kontejner pro uložení image.
- Aplikace kontejneru založená na imagi.
Pokud se zobrazí chyba Failed to parse '<YOUR_BICEP_FILE_NAME>', please check whether it is a valid JSON format
, ujistěte se, že soubor šablony Bicep má příponu .bicep
.
Další materiály
Další informace najdete v následujících tématech.