Docker アプリケーションマネージャー - AWS IoT Greengrass

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

Docker アプリケーションマネージャー

Docker アプリケーションマネージャーコンポーネント (aws.greengrass.DockerApplicationManager) を使用すると AWS IoT Greengrass 、 は Amazon Elastic Container Registry (Amazon ) でホストされているパブリックイメージレジストリとプライベートレジストリから Docker イメージをダウンロードできますECR。また、 AWS IoT Greengrass が認証情報を自動的に管理して、Amazon のプライベートリポジトリからイメージを安全にダウンロードすることもできますECR。

Docker コンテナを実行するカスタムコンポーネントを開発するときには、Docker アプリケーションマネージャーを依存関係として含めて、コンポーネント内のアーティファクトとして指定された Docker イメージをダウンロードします。詳細については、「Docker コンテナの実行」を参照してください。

バージョン

このコンポーネントには、次のバージョンがあります。

  • 2.0.x

タイプ

このコンポーネントはジェネリックコンポーネント (aws.greengrass.generic) です。Greengrass nucleus は、コンポーネントのライフサイクルスクリプトを実行します。

詳細については、「コンポーネントタイプ」を参照してください。

オペレーティングシステム

このコンポーネントは、次のオペレーティングシステムを実行するコアデバイスにインストールできます。

  • Linux

  • Windows

要件

このコンポーネントには次の要件があります。

  • Docker Engine 1.9.1 以降が Greengrass コアにインストールされていいること。バージョン 20.10 は、 AWS IoT Greengrass Core ソフトウェアで動作することが検証された最新バージョンです。Docker コンテナを実行するコンポーネントをデプロイする前に、コアデバイスに直接、Docker をインストールしておく必要があります。

  • このコンポーネントをデプロイする前に、Docker デーモンがコアデバイス上で起動し、実行されています。

  • Docker イメージは、次のいずれかのサポートされているイメージソースに格納されています。

    • Amazon Elastic Container Registry (Amazon ECR) のパブリックイメージリポジトリとプライベートイメージリポジトリ

    • パブリック Docker Hub リポジトリ

    • パブリック Docker の信頼レジストリ

  • カスタム Docker コンテナコンポーネントにアーティファクトとして含まれる 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 Hub イメージ: docker:name[:tag|@digest]

    詳細については、「Docker コンテナの実行」を参照してください。

    注記

    イメージのアーティファクトでイメージタグまたはURIイメージダイジェストを指定しない場合、カスタム Docker コンテナコンポーネントをデプロイするときに、Docker アプリケーションマネージャーはそのイメージの利用可能な最新バージョンを取得します。すべてのコアデバイスが同じバージョンのイメージを実行するようにするには、イメージタグまたはイメージダイジェストをアーティファクト に含めることをお勧めしますURI。

  • Docker コンテナコンポーネントを実行するシステムユーザーには、ルート権限または管理者権限が必要です。権限がない場合は、ルート権限または管理者権限を持たないユーザーとして実行されるように Docker を設定する必要があります。

    • Linux デバイスでは、ユーザーを docker グループに追加することで、sudo のない docker コマンドを呼び出せます。

    • Windows デバイスでは、ユーザーを docker-users グループ に追加することで、管理者の権限のない docker コマンドを呼び出せます。

    Linux or Unix

    Docker コンテナコンポーネントの実行に使用する ggc_user または非ルートユーザーを docker グループに追加するには、次のコマンドを実行します。

    sudo usermod -aG docker ggc_user

    詳細については、「Docker を非ルートユーザーとして管理する」を参照してください。

    Windows Command Prompt (CMD)

    Docker コンテナコンポーネントの実行に使用する ggc_user またはユーザーを docker-users グループに追加するには、次のコマンドを管理者として実行します。

    net localgroup docker-users ggc_user /add
    Windows PowerShell

    Docker コンテナコンポーネントの実行に使用する ggc_user またはユーザーを docker-users グループに追加するには、次のコマンドを管理者として実行します。

    Add-LocalGroupMember -Group docker-users -Member ggc_user
  • ネットワークプロキシ を使用するように AWS IoT Greengrass Core ソフトウェアを設定する場合は、同じプロキシサーバー を使用するように Docker を設定する必要があります。

  • Docker イメージが Amazon ECRプライベートレジストリに保存されている場合は、Docker コンテナコンポーネントに依存関係としてトークン交換サービスコンポーネントを含める必要があります。また、Greengrass デバイスロールecr:GetAuthorizationToken、次のIAMポリシー例に示すようにecr:BatchGetImage、、、および ecr:GetDownloadUrlForLayerアクションを許可する必要があります。

    { "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

エンドポイントおよびポート

このコンポーネントは、基本的な操作に必要なエンドポイントとポートに加えて、次のエンドポイントとポートに対し、アウトバウンドリクエストを実行できる必要があります。詳細については、「プロキシまたはファイアウォールを介したデバイストラフィックを許可する」を参照してください。

エンドポイント [ポート] 必要 説明

ecr.region.amazonaws.com

443 なし

Amazon から Docker イメージをダウンロードする場合に必要ですECR。

hub.docker.com

registry.hub.docker.com/v1

443 なし

Docker Hub から Docker イメージをダウンロードする場合に必要です。

依存関係

コンポーネントをデプロイすると、 はその依存関係の互換性のあるバージョン AWS IoT Greengrass もデプロイします。つまり、コンポーネントを正常にデプロイするには、コンポーネントとその依存関係のすべての要件を満たす必要があります。このセクションでは、このコンポーネントのリリースされたバージョンの依存関係と、各依存関係に対するコンポーネントのバージョンを定義するセマンティックバージョン制約をリスト表示しています。コンポーネントの各バージョンの依存関係は、AWS IoT Greengrass コンソールでも確認できます。コンポーネントの詳細ページで [Dependencies] (依存関係) リストを確認します。

2.0.12

次の表に、このコンポーネントのバージョン 2.0.12 の依存関係を示します。

依存関係 互換性のあるバージョン 依存関係タイプ
Greengrass nucleus >=2.1.0 <2.14.0 ソフト
2.0.11

次の表に、このコンポーネントのバージョン 2.0.11 の依存関係を示します。

依存関係 互換性のあるバージョン 依存関係タイプ
Greengrass nucleus >=2.1.0 <2.13.0 ソフト
2.0.10

次の表に、このコンポーネントのバージョン 2.0.10 の依存関係を示します。

依存関係 互換性のあるバージョン 依存関係タイプ
Greengrass nucleus >=2.1.0 <2.12.0 ソフト
2.0.9

次の表に、このコンポーネントのバージョン 2.0.9 の依存関係を示します。

依存関係 互換性のあるバージョン 依存関係タイプ
Greengrass nucleus >=2.1.0 <2.11.0 ソフト
2.0.8

次の表に、このコンポーネントのバージョン 2.0.8 の依存関係を示します。

依存関係 互換性のあるバージョン 依存関係タイプ
Greengrass nucleus >=2.1.0 <2.10.0 ソフト
2.0.7

次の表に、このコンポーネントのバージョン 2.0.7 の依存関係を示します。

依存関係 互換性のあるバージョン 依存関係タイプ
Greengrass nucleus >=2.1.0 <2.9.0 ソフト
2.0.6

次の表に、このコンポーネントのバージョン 2.0.6 の依存関係を示します。

依存関係 互換性のあるバージョン 依存関係タイプ
Greengrass nucleus >=2.1.0 <2.8.0 ソフト
2.0.5

次の表に、このコンポーネントのバージョン 2.0.5 の依存関係を示します。

依存関係 互換性のあるバージョン 依存関係タイプ
Greengrass nucleus >=2.1.0 <2.7.0 ソフト
2.0.4

次の表に、このコンポーネントのバージョン 2.0.4 の依存関係を示します。

依存関係 互換性のあるバージョン 依存関係タイプ
Greengrass nucleus >=2.1.0 <2.6.0 ソフト
2.0.3

次の表に、このコンポーネントのバージョン 2.0.3 の依存関係を示します。

依存関係 互換性のあるバージョン 依存関係タイプ
Greengrass nucleus >=2.1.0 <2.5.0 ソフト
2.0.2

次の表に、このコンポーネントのバージョン 2.0.2 の依存関係を示します。

依存関係 互換性のあるバージョン 依存関係タイプ
Greengrass nucleus >=2.1.0 <2.4.0 ソフト
2.0.1

次の表に、このコンポーネントのバージョン 2.0.1 の依存関係を示します。

依存関係 互換性のあるバージョン 依存関係タイプ
Greengrass nucleus >=2.1.0 <2.3.0 ソフト
2.0.0

次の表に、このコンポーネントのバージョン 2.0.0 の依存関係を示します。

依存関係 互換性のあるバージョン 依存関係タイプ
Greengrass nucleus >=2.1.0 <2.2.0 ソフト

コンポーネントの依存関係の詳細については、「コンポーネント recipe のリファレンス」を参照してください。

構成

このコンポーネントに設定パラメータはありません。

ローカルログファイル

このコンポーネントは、Greengrass nucleus コンポーネントと同じログファイルを使用します。

Linux
/greengrass/v2/logs/greengrass.log
Windows
C:\greengrass\v2\logs\greengrass.log
このコンポーネントのログを確認するには
  • コアデバイスに次のコマンドを実行して、このコンポーネントのログファイルをリアルタイムに確認します。/greengrass/v2 または を置き換える C:\greengrass\v2 AWS IoT Greengrass ルートフォルダへのパスを持つ 。

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

変更ログ

次の表は、コンポーネントの各バージョンにおける変更を示します。

バージョン

変更

2.0.12

Greengrass nucleus バージョン 2.13.0 リリース用にバージョンが更新されました。

2.0.11

Greengrass nucleus バージョン 2.12.0 リリース用にバージョンが更新されました。

2.0.10

Greengrass nucleus バージョン 2.11.0 のリリース用にバージョンが更新されました。

2.0.9

Greengrass nucleus バージョン 2.10.0 のリリース用にバージョンが更新されました。

2.0.8

Greengrass nucleus バージョン 2.9.0 のリリース用にバージョンが更新されました。

2.0.7

Greengrass nucleus バージョン 2.8.0 のリリース用にバージョンが更新されました。

2.0.6

Greengrass nucleus バージョン 2.7.0 のリリース用にバージョンが更新されました。

2.0.5

Greengrass nucleus バージョン 2.6.0 のリリース用にバージョンが更新されました。

2.0.4

Greengrass nucleus バージョン 2.5.0 のリリース用にバージョンが更新されました。

2.0.3

Greengrass nucleus バージョン 2.4.0 のリリース用にバージョンが更新されました。

2.0.2

Greengrass nucleus バージョン 2.3.0 のリリース用にバージョンが更新されました。

2.0.1

Greengrass nucleus バージョン 2.2.0 のリリース用にバージョンが更新されました。

2.0.0

当初のバージョン

以下も参照してください。