Docker 应用程序管理器 - Amazon IoT Greengrass
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 Amazon Web Services 服务入门

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

Docker 应用程序管理器

Docker 应用程序管理器组件 (aws.greengrass.DockerApplicationManager)启用Amazon IoT Greengrass从公共镜像注册表下载 Docker 镜像。它还启用Amazon IoT Greengrass管理从 Amazon Elastic Container Registry (Amazon ECR) 中下载镜像的凭证。

在开发运行 Docker 容器的自定义组件时,请将 Docker 应用程序管理器作为依赖项来下载在组件中指定为工件的 Docker 映像。有关更多信息,请参阅 运行 Docker 容器

版本

此组件具有以下版本:

  • 2.0.x

类型

组件是一个通用组件 (aws.greengrass.generic)。这些区域有:Greengrass 核心运行组件的生命周期脚本。

有关更多信息,请参阅 组件类型

操作系统

此组件可以安装在运行以下操作系统的核心设备上:

  • Linux

  • Windows

要求

此组件具有以下要求:

  • Docker EgineGreengrass 核心设备上安装的 1.9.1 或更高版本。版本 20.10 是经验证可与Amazon IoT GreengrassCore 软件。在部署运行 Docker 容器的组件之前,必须直接在核心设备上安装 Docker。

  • 在部署此组件之前,Docker 守护程序已在核心设备上启动并运行。

  • 存储在以下受支持的映像源之一中的 Docker 映像:

    • Amazon Elastic Container Registry (Amazon ECR)

    • 公共 Docker Hub Hu

    • 公共 Docker 可信注册表

  • Docker 镜像作为工件包含在自定义 Docker 容器组件中。使用以下 URI 格式指定您的 Docker 镜像:

    • Amazon ECR 私人镜像:docker:account-id.dkr.ecr.region.amazonaws.com/repository/image[:tag|@digest]

    • 公开的Amazon ECR 镜像:docker:public.ecr.aws/repository/image[:tag|@digest]

    • 公共 Docker Hub 图片:docker:name[:tag|@digest]

    有关更多信息,请参阅 运行 Docker 容器

    注意

    如果您没有在镜像的工件 URI 中指定镜像标签或映像摘要,则在部署自定义 Docker 容器组件时,Docker 应用程序管理器会提取该映像的最新可用版本。为确保所有核心设备运行相同版本的映像,我们建议您在构件 URI 中包含映像标签或映像摘要。

  • 运行 Docker 容器组件的系统用户必须具有 root 或管理员权限,或者您必须将 Docker 配置为以非 root 用户或非管理员用户身份运行该组件。

    • 在 Linux 设备上,您可以将用户添加到docker要呼叫的群组docker命令sudo.

    • 在 Windows 设备上,您可以将用户添加到docker-users要呼叫的群组docker没有管理员权限的命令。

    Linux or Unix

    添加ggc_user,或者你用来运行 Docker 容器组件的非 root 用户,dockergroup,运行以下命令。

    sudo usermod -aG docker ggc_user

    有关更多信息,请参阅 。以非根用户身份管理 Docker.

    Windows Command Prompt (CMD)

    添加ggc_user,或者你用来运行 Docker 容器组件的用户,docker-usersgroup,以管理员身份运行以下命令。

    net localgroup docker-users ggc_user /add
    Windows PowerShell

    添加ggc_user,或者你用来运行 Docker 容器组件的用户,docker-usersgroup,以管理员身份运行以下命令。

    Add-LocalGroupMember -Group docker-users -Member ggc_user
  • 如果您配置Amazon IoT GreengrassCore Passenger Passenger,你必须配置 Docker 使用相同的代理服务器.

  • 如果您的 Docker 映像存储在 Amazon ECR 私有注册表中,则必须将令牌交换服务组件作为依赖项包含在 Docker 容器组件中。您还可以Greengrass 设备角色必须允许ecr:GetAuthorizationTokenecr:BatchGetImage, 和ecr:GetDownloadUrlForLayer操作,如下面的 IAM 策略示例所示。

    { "Version": "2012-10-17", "Statement": [ { "Action": [ "ecr:GetAuthorizationToken", "ecr:BatchGetImage", "ecr:GetDownloadUrlForLayer" ], "Resource": [ "*" ], "Effect": "Allow" } ] }

终端节点和端口

除了基本操作所需的端点和端口外,此组件还必须能够对以下端点和端口执行出站请求。有关更多信息,请参阅 允许设备通过代理或防火墙进行流量

端点 端口 必填 描述

ecr.region.amazonaws.com

443

如果您从Amazon ECR 下载 Docker 镜像。

hub.docker.com

registry.hub.docker.com/v1

443

如果从 Docker Hub 下载 Docker 镜像,则为必填项。

附属物

部署组件时,Amazon IoT Greengrass还部署了其依赖项的兼容版本。这意味着您必须满足组件及其所有依赖项的要求才能成功部署该组件。本部分列出了的依赖项发布的版本以及定义每个依赖项的组件版本的语义版本约束。您也可以在中查看组件各个版本的依赖关系Amazon IoT Greengrass控制台. 在组件详细信息页面上,查找依赖项list。

2.0.6

下表列出了此组件 2.0.6 版的依赖关系。

依赖关系 兼容的版本 依赖关系类型
Greengrass 核心 >=2.1.1.1.1.1.5.2.2.2.2.2.5.5.5. 软性
2.0.5

下表列出了此组件版本 2.0.5 的依赖关系。

依赖关系 兼容的版本 依赖关系类型
Greengrass 核心 >=2.1.1.1.1.1.5.2.2.2.2.2.2.5.5. 软性
2.0.4

下表列出了此组件版本 2.0.4 的依赖关系。

依赖关系 兼容的版本 依赖关系类型
Greengrass 核心 >=2.1.1.1.1.1.5.5.5.5.5.5.5. 软性
2.0.3

下表列出了此组件版本 2.0.3 的依赖关系。

依赖关系 兼容的版本 依赖关系类型
Greengrass 核心 >=2.1.1.1.5.5.5.5.5.5.5.5.5. 软性
2.0.2

下表列出了此组件版本 2.0.2 的依赖关系。

依赖关系 兼容的版本 依赖关系类型
Greengrass 核心 >=2.1.1.1.4.4.4.4.4.4.4.4.4. 软性
2.0.1

下表列出了此组件版本 2.0.1 的依赖关系。

依赖关系 兼容的版本 依赖关系类型
Greengrass 核心 >=2.1.1.1.1.3.3.3.3.3.3.3.3. 软性
2.0.0

下表列出了此组件版本 2.0.0 的依赖关系。

依赖关系 兼容的版本 依赖关系类型
Greengrass 核心 >=2.1.1.1.1.5.2.2.2.2.2.2.2. 软性

有关组件依赖项的更多信息,请参阅组件配方参考.

配置

此组件没有任何配置参数。

本地日志文件

此组件使用以下日志文件。

Linux
/greengrass/v2/logs/aws.greengrass.DockerApplicationManager.log
Windows
C:\greengrass\v2\logs\aws.greengrass.DockerApplicationManager.log

查看此组件的日志

  • 在核心设备上运行以下命令以实时查看该组件的日志文件。Replace/greengrass/v2要么C:\greengrass\v2还有通往Amazon IoT Greengrass根文件夹。

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

更改日志

下表介绍了在组件各个版本中进行的更改。

Version

更改

2.0.6

Greengrass 核心核心版本 2.7.5.5.2.2.2.2.2.2.2.2.2.2.2.2.5.

2.0.5

Greengrass 核心核心版本 2.6.5.5.5.5.5.5.5.5.5.5.5.5.5.

2.0.4

Greengrass 核心核心版本 2.5.5.5.5.5.5.5.5.5.5.5.5.5.5.

2.0.3

Greengrass 核心核心版本 2.4.4.4.4.4.4.4.4.4.4.4.4.4.4.

2.0.2

Greengrass 核心核心版本 2.3.3.3.3.3.3.3.3.3.3.3.3.3.3.

2.0.1

Greengrass 核心核心版本 2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.

2.0.0

初始版本。

另请参阅