Entender contêineres
Quando você implanta um serviço de software, ele deve ser hospedado em um ambiente que forneça o hardware, o sistema operacional e os componentes de runtime de suporte dos quais o serviço depende.
Os serviços de IA do Azure são fornecidos como um serviço de nuvem, no qual o software do serviço é hospedado em um data center do Azure que fornece os serviços de runtime, sistema operacional e hardware subjacentes. No entanto, você também pode implantar alguns serviços de IA do Azure em um contêiner, que encapsula os componentes de runtime necessários e que, por sua vez, são implantados em um host de contêiner que fornece o sistema operacional e hardware subjacentes.
O que é um contêiner?
Um contêiner consiste em um aplicativo ou serviço e nos componentes de runtime necessários para executá-lo, ao mesmo tempo que abstrai o sistema operacional subjacente e o hardware. Na prática, essa abstração resulta em dois benefícios significativos:
- Os contêineres são portáveis entre hosts, que podem estar executando sistemas operacionais diferentes ou usar hardware diferente – tornando mais fácil mover um aplicativo e todas as suas dependências.
- Um único host de contêiner pode dar suporte a vários contêineres isolados, cada um com sua própria configuração de runtime específica – facilitando a consolidação de vários aplicativos com diferentes requisitos de configuração.
Um contêiner é encapsulado em uma imagem de contêiner que define o software e a configuração a que ele deve dar suporte. As imagens podem ser armazenadas em um registro central, como o Docker Hub, ou você pode manter um conjunto de imagens em seu próprio registro.
Implantação de contêiner
Para usar um contêiner, você normalmente extrai a imagem de contêiner de um registro e a implanta em um host do contêiner, especificando quaisquer definições de configuração necessárias. O host do contêiner pode estar na nuvem, em uma rede privada ou em seu computador local. Por exemplo:
- Um servidor do Docker*.
- Uma ACI (Instância de Contêiner do Azure).
- Um cluster do AKS (Serviço de Kubernetes do Azure).
*Docker é uma solução de software livre para desenvolvimento e gerenciamento de contêineres que inclui um mecanismo de servidor que pode ser usado para hospedar contêineres. Há versões do servidor Docker para sistemas operacionais comuns, incluindo Microsoft Windows e Linux.
Dica
Para saber mais sobre contêineres, confira o módulo Introdução aos contêineres do Docker no Microsoft Learn.