运行Amazon IoT GreengrassDocker 容器中的核心软件 - Amazon IoT Greengrass
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 AWS 服务入门

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

运行Amazon IoT GreengrassDocker 容器中的核心软件

Amazon IoT Greengrass可以配置为在 Docker 容器中运行。Docker 是一个可让您构建、运行、测试和部署基于 Linux 容器的应用程序的平台。当您运行Amazon IoT GreengrassDocker 映像,您可以选择是否提供Amazon凭证添加到 Docker 容器中,并允许Amazon IoT Greengrass核心软件安装程序自动配置Amazon资源,Greengrass 核心设备运行所需的资源。如果您不想提供Amazon凭据,那么您可以手动置备Amazon资源并运行Amazon IoT GreengrassDocker 容器中的核心软件。

支持的平台和要求

主机计算机必须满足以下最低要求才能安装和运行Amazon IoT GreengrassDocker 容器中的核心软件:

  • 具有互联网连接的基于 Linux 的操作系统。

  • Docker 引擎版本 18.09 或更高版本。

  • (可选)Docker Compose1.22 或更高版本。仅当您希望使用 Docker 撰写 CLI 运行 Docker 映像时,才需要使用 Docker 撰写。

要在 Docker 容器内运行 Lambda 函数组件,必须配置容器以满足其他要求。有关更多信息,请参阅 运行 Lambda 函数的要求

在进程模式下运行组件

Amazon IoT Greengrass不支持运行 Lambda 函数或Amazon在独立运行时环境中提供的组件Amazon IoT GreengrassDocker 容器。必须在进程模式下运行这些组件,而不需要任何隔离。

配置 Lambda 函数组件时,请将隔离模式设置为无容器。有关更多信息,请参阅 运行Amazon Lambda函数

当您部署以下任何Amazon提供的组件,请更新每个组件的配置以设置containerMode将参数设置为NoContainer。有关配置更新的详细信息,请参阅更新组件配置

Amazon IoT GreengrassDocker 软件下载

Amazon IoT Greengrass提供以下 Dockerfile 和 Docker 镜像,使您能够更轻松地运行Amazon IoT GreengrassDocker 容器中的核心软件。

Dockerfile

Amazon IoT Greengrass提供了一个 Docker 文件来构建一个具有Amazon IoT Greengrass安装在 Amazon Linux 2 (x86_64) 基本映像上的核心软件和依赖项。您可以修改 Docker 文件中的基础映像以运行Amazon IoT Greengrass在不同的平台架构上。从以下位置下载 Docker 文件包。

DockerfileAmazon IoT Greengrassv2.1.0

有关构建Amazon IoT Greengrass容器图像,请参阅构建Amazon IoT Greengrass从 Dockerfile 中的容器镜像

Docker 映像

Amazon IoT Greengrass提供 Docker 镜像,Amazon IoT Greengrass安装在 Amazon Linux 2 (x86_64) 基本映像上的核心软件和依赖项。运行Amazon IoT Greengrass,请使用 Docker 文件为该平台构建容器映像。

从下载预构建的映像Docker Hub或者Amazon EElastic Container Registry (Amazon ECR)

若要拉取Amazon IoT GreengrassDocker Hub 或 Amazon ECR 中的 Docker 镜像,运行以下命令。

Docker Hub
docker pull amazon/aws-iot-greengrass:tag
Amazon ECR
docker pull public.ecr.aws/q3k3q7c1/aws-iot-greengrass-v2:tag

中的版本标签表示Amazon IoT Greengrass安装在 Amazon Linux 2 基本映像上的核心软件和依赖项。要查找所有可用映像的标签,请查看标签页面上的 Docker 中心或映像标签页面。

选择如何配置Amazonresources

当您安装Amazon IoT GreengrassDocker 容器中的核心软件,您可以选择是否自动配置Amazon资源,或者使用手动配置的资源。

  • 自动资源预置-安装程序预配置Amazon IoT事物,Amazon IoT事物组、IAM 角色和Amazon IoT角色别名时运行Amazon IoT Greengrass容器镜像。安装程序还可以将本地开发工具部署到核心设备,以便您可以使用该设备开发和测试自定义软件组件。要自动置备这些资源,您必须提供Amazon凭证作为 Docker 映像的环境变量。

    要使用自动置备,您必须设置 Docker 环境变量PROVISION=true并挂载凭据文件以提供Amazon凭据添加到容器。

  • 手动资源预置— 如果您不希望提供Amazon凭据添加到容器中,那么您可以手动预配置Amazon资源,然后再运行Amazon IoT Greengrass容器镜像。您必须创建一个配置文件,以便将有关这些资源的信息提供给Amazon IoT GreengrassDocker 容器中的核心软件安装程序。

    要使用手动置备,您必须设置 Docker 环境变量PROVISION=false。手动置备是默认选项。

有关更多信息,请参阅 构建Amazon IoT Greengrass从 Dockerfile 中的容器镜像