Gerenciador de aplicativos Docker - AWS IoT Greengrass

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Gerenciador de aplicativos Docker

O componente Docker Application Manager (aws.greengrass.DockerApplicationManager) permite AWS IoT Greengrass baixar imagens do Docker de registros públicos de imagens e registros privados hospedados no Amazon Elastic Container Registry (Amazon ECR). Ele também permite AWS IoT Greengrass gerenciar credenciais automaticamente para baixar imagens com segurança de repositórios privados no Amazon ECR.

Ao desenvolver um componente personalizado que executa um contêiner Docker, inclua o gerenciador de aplicativos Docker como uma dependência para baixar as imagens do Docker que são especificadas como artefatos em seu componente. Para ter mais informações, consulte Execute um contêiner Docker.

Versões

Esse componente tem as seguintes versões:

  • 2.0.x

Tipo

Este componente é um componente genérico (aws.greengrass.generic). O núcleo do Greengrass executa os scripts do ciclo de vida do componente.

Para ter mais informações, consulte Tipos de componentes.

Sistema operacional

Esse componente pode ser instalado em dispositivos principais que executam os seguintes sistemas operacionais:

  • Linux

  • Windows

Requisitos

Esse componente tem os seguintes requisitos:

  • Docker Engine 1.9.1 ou posterior instalado no dispositivo principal do Greengrass. A versão 20.10 é a versão mais recente verificada para funcionar com o software AWS IoT Greengrass Core. Você deve instalar o Docker diretamente no dispositivo principal antes de implantar componentes que executam contêineres do Docker.

  • O daemon do Docker foi iniciado e executado no dispositivo principal antes de você implantar esse componente.

  • Imagens do Docker armazenadas em uma das seguintes fontes de imagem compatíveis:

    • Repositórios de imagens públicos e privados no Amazon Elastic Container Registry (Amazon ECR)

    • Repositório público do Docker Hub

    • Registro confiável do Public Docker

  • Imagens do Docker incluídas como artefatos em seus componentes personalizados do contêiner Docker. Use os seguintes formatos de URI para especificar suas imagens do Docker:

    • Imagem privada do Amazon ECR: docker:account-id.dkr.ecr.region.amazonaws.com/repository/image[:tag|@digest]

    • Imagem pública do Amazon ECR: docker:public.ecr.aws/repository/image[:tag|@digest]

    • Imagem pública do Docker Hub: docker:name[:tag|@digest]

    Para ter mais informações, consulte Execute um contêiner Docker.

    nota

    Se você não especificar a tag da imagem ou o resumo da imagem no URI do artefato de uma imagem, o gerenciador de aplicativos Docker extrairá a versão mais recente disponível dessa imagem quando você implanta seu componente de contêiner personalizado do Docker. Para garantir que todos os seus dispositivos principais executem a mesma versão de uma imagem, recomendamos que você inclua a tag da imagem ou o resumo da imagem no URI do artefato.

  • O usuário do sistema que executa um componente de contêiner do Docker deve ter permissões de raiz ou administrador, ou você deve configurar o Docker para executá-lo como usuário não raiz ou não administrador.

    • Em dispositivos Linux, você pode adicionar um usuário ao docker grupo para chamar docker comandos semsudo.

    • Em dispositivos Windows, você pode adicionar um usuário ao docker-users grupo para chamar docker comandos sem privilégios de administrador.

    Linux or Unix

    Para adicionar ggc_user ou o usuário não root que você usa para executar componentes de contêiner do Docker ao docker grupo, execute o comando a seguir.

    sudo usermod -aG docker ggc_user

    Para obter mais informações, consulte Gerenciar o Docker como usuário não root.

    Windows Command Prompt (CMD)

    Para adicionar ggc_user ou o usuário que você usa para executar componentes de contêiner do Docker ao docker-users grupo, execute o comando a seguir como administrador.

    net localgroup docker-users ggc_user /add
    Windows PowerShell

    Para adicionar ggc_user ou o usuário que você usa para executar componentes de contêiner do Docker ao docker-users grupo, execute o comando a seguir como administrador.

    Add-LocalGroupMember -Group docker-users -Member ggc_user
  • Se você configurar o software AWS IoT Greengrass Core para usar um proxy de rede, deverá configurar o Docker para usar o mesmo servidor proxy.

  • Se suas imagens do Docker estiverem armazenadas em um registro privado do Amazon ECR, você deverá incluir o componente do serviço de troca de tokens como uma dependência no componente de contêiner do Docker. Além disso, a função de dispositivo do Greengrass deve permitir as ecr:GetDownloadUrlForLayer açõesecr:GetAuthorizationToken,ecr:BatchGetImage, e, conforme mostrado no exemplo de política do IAM a seguir.

    { "Version": "2012-10-17", "Statement": [ { "Action": [ "ecr:GetAuthorizationToken", "ecr:BatchGetImage", "ecr:GetDownloadUrlForLayer" ], "Resource": [ "*" ], "Effect": "Allow" } ] }
  • O componente docker application manager tem suporte para execução em uma VPC. Para implantar esse componente em uma VPC, é necessário o seguinte.

    • O componente docker application manager deve ter conectividade para baixar imagens. Por exemplo, se você usa o ECR, deve ter conectividade com os seguintes endpoints.

      • *.dkr.ecr.region.amazonaws.com(VPC endpoint) com.amazonaws.region.ecr.dkr

      • api.ecr.region.amazonaws.com(VPC endpoint) com.amazonaws.region.ecr.api

Endpoints e portas

Esse componente deve ser capaz de realizar solicitações de saída para os seguintes endpoints e portas, além dos endpoints e portas necessários para a operação básica. Para ter mais informações, consulte Permitir o tráfego de dispositivos por meio de um proxy ou firewall.

Endpoint Porta Obrigatório Descrição

ecr.region.amazonaws.com

443 Não

Obrigatório se você baixar imagens do Docker do Amazon ECR.

hub.docker.com

registry.hub.docker.com/v1

443 Não

Obrigatório se você baixar imagens do Docker do Docker Hub.

Dependências

Quando você implanta um componente, AWS IoT Greengrass também implanta versões compatíveis de suas dependências. Isso significa que você deve atender aos requisitos do componente e de todas as suas dependências para implantá-lo com êxito. Esta seção lista as dependências das versões lançadas desse componente e as restrições de versão semântica que definem as versões dos componentes para cada dependência. Você também pode visualizar as dependências de cada versão do componente no AWS IoT Greengrassconsole. Na página de detalhes do componente, procure a lista de dependências.

2.0.11

A tabela a seguir lista as dependências da versão 2.0.11 desse componente.

Dependência Versões compatíveis Tipo de dependência
Núcleo Greengrass >=2.1.0 <2.13.0 Flexível
2.0.10

A tabela a seguir lista as dependências da versão 2.0.10 desse componente.

Dependência Versões compatíveis Tipo de dependência
Núcleo Greengrass >=2.1.0 <2.12.0 Flexível
2.0.9

A tabela a seguir lista as dependências da versão 2.0.9 desse componente.

Dependência Versões compatíveis Tipo de dependência
Núcleo Greengrass >=2.1.0 <2.11.0 Flexível
2.0.8

A tabela a seguir lista as dependências da versão 2.0.8 desse componente.

Dependência Versões compatíveis Tipo de dependência
Núcleo Greengrass >=2.1.0 <2.10.0 Flexível
2.0.7

A tabela a seguir lista as dependências da versão 2.0.7 desse componente.

Dependência Versões compatíveis Tipo de dependência
Núcleo Greengrass >=2.1.0 <2.9.0 Flexível
2.0.6

A tabela a seguir lista as dependências da versão 2.0.6 desse componente.

Dependência Versões compatíveis Tipo de dependência
Núcleo Greengrass >=2.1.0 <2.8.0 Flexível
2.0.5

A tabela a seguir lista as dependências da versão 2.0.5 desse componente.

Dependência Versões compatíveis Tipo de dependência
Núcleo Greengrass >=2.1.0 <2.7.0 Flexível
2.0.4

A tabela a seguir lista as dependências da versão 2.0.4 desse componente.

Dependência Versões compatíveis Tipo de dependência
Núcleo Greengrass >=2.1.0 <2.6.0 Flexível
2.0.3

A tabela a seguir lista as dependências da versão 2.0.3 desse componente.

Dependência Versões compatíveis Tipo de dependência
Núcleo Greengrass >=2.1.0 <2.5.0 Flexível
2.0.2

A tabela a seguir lista as dependências da versão 2.0.2 desse componente.

Dependência Versões compatíveis Tipo de dependência
Núcleo Greengrass >=2.1.0 <2.4.0 Flexível
2.0.1

A tabela a seguir lista as dependências da versão 2.0.1 desse componente.

Dependência Versões compatíveis Tipo de dependência
Núcleo Greengrass >=2.1.0 <2.3.0 Flexível
2.0.0

A tabela a seguir lista as dependências da versão 2.0.0 desse componente.

Dependência Versões compatíveis Tipo de dependência
Núcleo Greengrass >=2.1.0 <2.2.0 Flexível

Para obter mais informações sobre dependências de componentes, consulte a referência da receita do componente.

Configuração

Esse componente não tem nenhum parâmetro de configuração.

Arquivo de log local

Esse componente usa o mesmo arquivo de log do componente do núcleo do Greengrass.

Linux
/greengrass/v2/logs/greengrass.log
Windows
C:\greengrass\v2\logs\greengrass.log
Para ver os registros desse componente
  • Execute o comando a seguir no dispositivo principal para visualizar o arquivo de log desse componente em tempo real. Substitua /greengrass/v2 ou C:\greengrass\v2 pelo caminho para a pasta AWS IoT Greengrass raiz.

    Linux
    sudo tail -f /greengrass/v2/logs/greengrass.log
    Windows (PowerShell)
    Get-Content C:\greengrass\v2\logs\greengrass.log -Tail 10 -Wait

Changelog

A tabela a seguir descreve as alterações em cada versão do componente.

Version (Versão)

Alterações

2.0.11

Versão atualizada para a versão 2.12.0 do Greengrass nucleus.

2.0.10

Versão atualizada para a versão 2.11.0 do Greengrass nucleus.

2.0.9

Versão atualizada para a versão 2.10.0 do Greengrass nucleus.

2.0.8

Versão atualizada para a versão 2.9.0 do Greengrass nucleus.

2.0.7

Versão atualizada para a versão 2.8.0 do Greengrass nucleus.

2.0.6

Versão atualizada para a versão 2.7.0 do Greengrass nucleus.

2.0.5

Versão atualizada para a versão 2.6.0 do Greengrass nucleus.

2.0.4

Versão atualizada para a versão 2.5.0 do Greengrass nucleus.

2.0.3

Versão atualizada para a versão 2.4.0 do Greengrass nucleus.

2.0.2

Versão atualizada para a versão 2.3.0 do Greengrass nucleus.

2.0.1

Versão atualizada para a versão 2.2.0 do Greengrass nucleus.

2.0.0

Versão inicial.

Consulte também