碼頭應用程序管理器 - AWS IoT Greengrass

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

碼頭應用程序管理器

Docker 應用程序管理器組件(aws.greengrass.DockerApplicationManager)允許AWS IoT Greengrass從亞馬遜彈性容器註冊表(Amazon ECR)上託管的公共映像註冊表和私有註冊表下載 Docker 映像。它還可AWS IoT Greengrass以自動管理登入資料,以安全地從 Amazon ECR 中的私有儲存庫下載映像。

當您開發執行 Docker 容器的自訂元件時,請將 Docker 應用程式管理員納入為相依性,以下載指定為元件中的成品的 Docker 映像檔。如需詳細資訊,請參閱 運行碼頭容器

版本

此元件具有下列版本:

  • 2.0.x

Type

元件是一般元件 (aws.greengrass.generic)。Greengrass 核會執行元件的生命週期指令碼。

如需詳細資訊,請參閱 元件類型

作業系統

此元件可安裝在執行下列作業系統的核心裝置上:

  • Linux

  • Windows

要求

此元件具有下列需求:

  • 碼頭引擎 1.9.1 或更高版本安裝在 Greengrass 核心設備上。版本 20.10 是經過驗證可與AWS IoT Greengrass核心軟件配合使用的最新版本。在部署執行 Docker 容器的元件之前,您必須直接在核心裝置上安裝 Docker。

  • 在您部署此元件之前,Docker 精靈會在核心裝置上啟動並執行。

  • Docker 圖像存儲在以下支持的圖像源之一中:

    • Amazon Elastic Container Registry (Amazon ECR) 中的公共和私有映像存儲庫

    • 公共碼頭集線器存儲庫

    • 公共碼頭信任的註冊表

  • Docker 映像檔包含在您的自訂 Docker 容器元件中作為成品。使用下列 URI 格式來指定您的泊塢視窗映像檔:

    • 私人 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:name[:tag|@digest]

    如需詳細資訊,請參閱 運行碼頭容器

    注意

    如果您未在映像的成品 URI 中指定映像標籤或映像摘要,則當您部署自訂 Docker 容器元件時,Docker 應用程式管理員會提取該映像的最新可用版本。若要確保所有核心裝置都執行相同版本的映像,建議您在成品 URI 中加入映像標記或影像摘要。

  • 執行 Docker 容器元件的系統使用者必須具有根或管理員權限,或者您必須將 Docker 設定為以非 root 使用者或非管理員使用者身分執行。

    • 在 Linux 裝置上,您可以將使用者新增至docker群組,以便在不使用的情況下呼叫docker指令sudo

    • 在 Windows 裝置上,您可以將使用者新增至docker-users群組,以便在沒有系統管理員權限的情況下呼叫docker命令。

    Linux or Unix

    若要將ggc_user您用來執行 Docker 容器元件的非 root 使用者新增至docker群組,請執行下列命令。

    sudo usermod -aG docker ggc_user

    如需詳細資訊,請參閱以非 root 使用者身分管理 Docker

    Windows Command Prompt (CMD)

    若要將ggc_user或您用來執行 Docker 容器元件的使用者新增至docker-users群組,請以系統管理員身分執行下列命令。

    net localgroup docker-users ggc_user /add
    Windows PowerShell

    若要將ggc_user或您用來執行 Docker 容器元件的使用者新增至docker-users群組,請以系統管理員身分執行下列命令。

    Add-LocalGroupMember -Group docker-users -Member ggc_user
  • 如果您將 AWS IoT GreengrassCore 軟體設定為使用網路 Proxy,則必須將 Docker 設定為使用相同的 Proxy 伺服器

  • 如果您的 Docker 映像檔儲存在 Amazon ECR 私有登錄中,則必須將權杖交換服務元件作為 Docker 容器元件的相依性包含在 Docker 容器元件中。此外,Greengrass 裝置角色必須允許ecr:GetAuthorizationToken、和ecr:GetDownloadUrlForLayer動作ecr:BatchGetImage,如下列範例 IAM 政策所示。

    { "Version": "2012-10-17", "Statement": [ { "Action": [ "ecr:GetAuthorizationToken", "ecr:BatchGetImage", "ecr:GetDownloadUrlForLayer" ], "Resource": [ "*" ], "Effect": "Allow" } ] }
  • docker 應用程序管理器組件支持在 VPC 中運行。若要在 VPC 中部署此元件,需要下列項目。

    • docker 應用程序管理器組件必須具有下載圖像的連接性。例如,如果您使用 ECR,則必須具有與下列端點的連線能力。

      • *.dkr.ecr.region.amazonaws.com(VPC 端端點com.amazonaws.region.ecr.dkr)

      • api.ecr.region.amazonaws.com(VPC 端端點com.amazonaws.region.ecr.api)

端點和連接埠

除了基本作業所需的端點和連接埠之外,此元件還必須能夠對下列端點和連接埠執行輸出要求。如需詳細資訊,請參閱 允許裝置流量透過 Proxy 或防火牆

端點 連線埠 必要 描述

ecr.region.amazonaws.com

443

如果您從 Amazon ECR 下載碼頭圖像,則需要此選項。

hub.docker.com

registry.hub.docker.com/v1

443

如果您從 Docker 集線器下載 Docker 映像,則需要此選項。

相依性

部署元件時,AWS IoT Greengrass也會部署其相依性的相容版本。這表示您必須符合元件及其所有相依性的需求,才能成功部署元件。本節列出此元件之已發行版本的相依性,以及定義每個相依性之元件版本的語意版本條件約束。您也可以在AWS IoT Greengrass主控台中檢視元件每個版本的相依性。在元件詳細資料頁面上,尋找 [相依性] 清單。

2.0.11

下表列出此元件 2.0.11 版的相依性。

相依性 兼容版本 相依性類型
Greengrass 核 > = 2.1.0 軟式
2.0.10

下表列出此元件 2.0.10 版的相依性。

相依性 兼容版本 相依性類型
Greengrass 核 > = 2.1.0 軟式
2.0.9

下表列出此元件 2.0.9 版的相依性。

相依性 兼容版本 相依性類型
Greengrass 核 > = 2.1.0 軟式
2.0.8

下表列出此元件 2.0.8 版的相依性。

相依性 兼容版本 相依性類型
Greengrass 核 > = 2.1.0 軟式
2.0.7

下表列出此元件 2.0.7 版的相依性。

相依性 兼容版本 相依性類型
Greengrass 核 > = 2.1.0 軟式
2.0.6

下表列出此元件 2.0.6 版的相依性。

相依性 兼容版本 相依性類型
Greengrass 核 > = 2.1.0 軟式
2.0.5

下表列出此元件 2.0.5 版的相依性。

相依性 兼容版本 相依性類型
Greengrass 核 > = 2.1.0 軟式
2.0.4

下表列出此元件 2.0.4 版的相依性。

相依性 兼容版本 相依性類型
Greengrass 核 >=2.1.0 軟式
2.0.3

下表列出此元件 2.0.3 版的相依性。

相依性 兼容版本 相依性類型
Greengrass 核 > = 2.1.0 軟式
2.0.2

下表列出此元件 2.0.2 版的相依性。

相依性 兼容版本 相依性類型
Greengrass 核 > = 2.1.0 軟式
2.0.1

下表列出此元件 2.0.1 版的相依性。

相依性 兼容版本 相依性類型
Greengrass 核 > = 2.1.0 軟式
2.0.0

下表列出此元件 2.0.0 版的相依性。

相依性 兼容版本 相依性類型
Greengrass 核 > = 2.1.0 軟式

如需有關元件相依性的詳細資訊,請參閱元件方案參考

組態

此元件沒有任何組態參數。

本機記錄檔

此元件使用與 Greengrass 核元件相同的記錄檔。

Linux
/greengrass/v2/logs/greengrass.log
Windows
C:\greengrass\v2\logs\greengrass.log
若要檢視此元件的記錄
  • 在核心裝置上執行下列命令,即時檢視此元件的記錄檔。以AWS IoT Greengrass根資料夾的路徑取代/greengrass/v2C:\greengrass\v2

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

變更記錄

下表說明元件每個版本中的變更。

版本

變更

2.0.11

版本更新了 Greengrass 核 2.12.0 版本釋放。

2.0.10

版本更新了 Greengrass 核 2.11.0 版本釋放。

2.0.9

版本更新了 Greengrass 2.10.0 版本。

2.0.8

版本更新 Greengrass 2.9.0 版本釋放。

2.0.7

版本更新 Greengrass 2.8.0 版本的版本。

2.0.6

版本更新了 Greengrass 核 2.7.0 版本釋放。

2.0.5

版本更新 Greengrass 2.6.0 版本的版本。

2.0.4

版本更新了 Greengrass 核 2.5.0 版本。

2.0.3

版本更新 Greengrass 2.4.0 版本的版本。

2.0.2

版本更新了 Greengrass 核 2.3.0 版本。

2.0.1

版本更新了 Greengrass 核 2.2.0 版本。

2.0.0

初始版本。

另請參閱