Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Use as Instâncias de Contêiner do Azure para executar contêineres do Docker sem servidor no Azure com simplicidade e velocidade. Implante um aplicativo em uma instância de contêiner sob demanda quando você não precisar de uma plataforma de orquestração de contêiner completa, como o Serviço de Kubernetes do Azure. Neste início rápido, você usará um modelo do ARM (Azure Resource Manager) para implantar um contêiner isolado do Docker e disponibilizar seu aplicativo Web com um endereço IP público.
Um Modelo do Azure Resource Manager é um arquivo JSON (JavaScript Object Notation) que define a infraestrutura e a configuração do seu projeto. O modelo usa a sintaxe declarativa. Você descreve a implantação pretendida sem escrever a sequência de comandos de programação para criar a implantação.
Se seu ambiente atender aos pré-requisitos e você estiver familiarizado com o uso de modelos ARM, selecione o botão Implantar no Azure. O modelo é aberto no portal do Azure.
Pré-requisitos
Se você não tiver uma assinatura do Azure, crie uma conta gratuita antes de começar.
Examinar o modelo
O modelo usado neste início rápido é proveniente dos Modelos de Início Rápido do Azure.
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"languageVersion": "2.0",
"contentVersion": "1.0.0.0",
"metadata": {
"_generator": {
"name": "bicep",
"version": "0.37.4.10188",
"templateHash": "7099805986652764357"
}
},
"parameters": {
"name": {
"type": "string",
"defaultValue": "acilinuxpublicipcontainergroup",
"metadata": {
"description": "Name for the container group"
}
},
"location": {
"type": "string",
"defaultValue": "[resourceGroup().location]",
"metadata": {
"description": "Location for all resources."
}
},
"image": {
"type": "string",
"defaultValue": "mcr.microsoft.com/azuredocs/aci-helloworld",
"metadata": {
"description": "Container image to deploy. Should be of the form repoName/imagename:tag for images stored in public Docker Hub, or a fully qualified URI for other registries. Images from private registries require additional registry credentials."
}
},
"port": {
"type": "int",
"defaultValue": 80,
"metadata": {
"description": "Port to open on the container and the public IP address."
}
},
"cpuCores": {
"type": "int",
"defaultValue": 1,
"metadata": {
"description": "The number of CPU cores to allocate to the container."
}
},
"memoryInGb": {
"type": "int",
"defaultValue": 2,
"metadata": {
"description": "The amount of memory to allocate to the container in gigabytes."
}
},
"restartPolicy": {
"type": "string",
"defaultValue": "Always",
"allowedValues": [
"Always",
"Never",
"OnFailure"
],
"metadata": {
"description": "The behavior of Azure runtime if container has stopped."
}
},
"zone": {
"type": "string",
"nullable": true,
"metadata": {
"description": "The availability zone to deploy the container group into. If not specified, the container group is nonzonal and might be deployed into any zone."
}
}
},
"resources": {
"containerGroup": {
"type": "Microsoft.ContainerInstance/containerGroups",
"apiVersion": "2023-05-01",
"name": "[parameters('name')]",
"location": "[parameters('location')]",
"properties": {
"containers": [
{
"name": "[parameters('name')]",
"properties": {
"image": "[parameters('image')]",
"ports": [
{
"port": "[parameters('port')]",
"protocol": "TCP"
}
],
"resources": {
"requests": {
"cpu": "[parameters('cpuCores')]",
"memoryInGB": "[parameters('memoryInGb')]"
}
}
}
}
],
"osType": "Linux",
"restartPolicy": "[parameters('restartPolicy')]",
"ipAddress": {
"type": "Public",
"ports": [
{
"port": "[parameters('port')]",
"protocol": "TCP"
}
]
}
},
"zones": "[if(not(equals(parameters('zone'), null())), createArray(parameters('zone')), null())]"
}
},
"outputs": {
"name": {
"type": "string",
"value": "[parameters('name')]"
},
"resourceGroupName": {
"type": "string",
"value": "[resourceGroup().name]"
},
"resourceId": {
"type": "string",
"value": "[resourceId('Microsoft.ContainerInstance/containerGroups', parameters('name'))]"
},
"containerIPv4Address": {
"type": "string",
"value": "[reference('containerGroup').ipAddress.ip]"
},
"location": {
"type": "string",
"value": "[parameters('location')]"
}
}
}
O recurso a seguir é definido no modelo:
- Microsoft.ContainerInstance/containerGroups: crie um grupo de contêineres do Azure. Esse modelo define um grupo que consiste em uma única instância de contêiner.
Mais exemplos de modelo de Instâncias de Contêiner do Azure podem ser encontrados na galeria de modelos de início rápido.
Para implantar o grupo de contêineres em uma zona de disponibilidade específica, defina o valor do zone parâmetro para a zona de disponibilidade lógica na qual você deseja implantar.
Importante
As implantações zonais só estão disponíveis em regiões que dão suporte a zonas de disponibilidade. Para ver se sua região dá suporte a zonas de disponibilidade, consulte a Lista de Regiões do Azure.
Implantar o modelo
Selecione a imagem a seguir para entrar no Azure e abrir um modelo. O modelo cria um registro e uma réplica em outro local.
Selecione ou insira os seguintes valores.
- Assinatura: selecione uma assinatura do Azure.
- Grupo de recursos: selecione Criar novo, insira um nome exclusivo para o grupo de recursos e selecione OK.
- Local: selecione um local para o grupo de recursos. Exemplo: EUA Central.
- Nome: aceite o nome gerado para a instância ou insira um nome.
- Imagem: aceite o nome da imagem padrão. Esta imagem do Linux de exemplo empacota um pequeno aplicativo Web escrito em Node.js que serve a uma página HTML estática.
Aceite valores padrão para as propriedades restantes.
Examine os termos e condições. Se você concordar, selecione Concordo com os termos e condições indicados acima.
Depois que a instância for criada com êxito, você receberá uma notificação:
O portal do Azure é usado para implantar o modelo. Além do portal do Azure, você pode usar o Azure PowerShell, a CLI do Azure e a API REST. Para saber mais sobre outros métodos de implantação, confira Implantar modelos.
Examinar os recursos implantados
Use o portal do Azure ou uma ferramenta como a CLI do Azure para examinar as propriedades da instância de contêiner.
No portal, pesquise instâncias de contêiner e selecione a instância de contêiner que você criou.
Na página Visão geral , observe o Status da instância e seu endereço IP.
Quando seu status for Em execução, navegue até o endereço IP em seu navegador.
Exibir logs de contêiner
Exibir os logs de uma instância de contêiner é útil ao solucionar problemas com seu contêiner ou com o aplicativo executado.
Para exibir os logs do contêiner, em Configurações, selecioneLogs> de Contêineres. Você deverá ver a solicitação HTTP GET gerada quando visualizar o aplicativo no navegador.
Limpar os recursos
Quando terminar de usar o contêiner, na página Visão geral da instância do contêiner, selecione Excluir. Quando receber a solicitação, confirme a exclusão.
Próximas etapas
Neste início rápido, você criou uma instância de contêiner do Azure a partir de uma imagem pública da Microsoft. Se você quiser criar uma imagem de contêiner e implantá-la a partir de um registro de contêiner privado do Azure, continue para o tutorial de Instâncias de Contêiner do Azure.
Para obter um tutorial passo a passo que orienta você pelo processo de criação de um modelo, consulte: