Docker-Anwendungsmanager - AWS IoT Greengrass

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Docker-Anwendungsmanager

Die Docker-Anwendungsmanager-Komponente (aws.greengrass.DockerApplicationManager) ermöglicht es AWS IoT Greengrass, Docker-Images aus öffentlichen Image-Registrys und privaten Registrierungen herunterzuladen, die in Amazon Elastic Container Registry (Amazon ECR) gehostet werden. Außerdem kann AWS IoT Greengrass Anmeldeinformationen automatisch verwalten, um Images sicher aus privaten Repositorys in Amazon ECR herunterzuladen.

Wenn Sie eine benutzerdefinierte Komponente entwickeln, die einen Docker-Container ausführt, schließen Sie den Docker-Anwendungsmanager als Abhängigkeit ein, um die Docker-Images herunterzuladen, die als Artefakte in Ihrer Komponente angegeben sind. Weitere Informationen finden Sie unter Führen Sie einen Docker-Container aus.

Versionen

Diese Komponente hat die folgenden Versionen:

  • 2.0.x

Typ

Diese Komponente ist eine generische Komponente (aws.greengrass.generic). Der Greengrass-Kern führt die Lebenszyklusskripte der Komponente aus.

Weitere Informationen finden Sie unter Komponententypen.

Betriebssystem

Diese Komponente kann auf -Core-Geräten installiert werden, auf denen die folgenden Betriebssysteme ausgeführt werden:

  • Linux

  • Windows

Voraussetzungen

Für diese Komponente gelten die folgenden Anforderungen:

  • Docker Engine 1.9.1 oder höher ist auf dem Greengrass-Core-Gerät installiert. Version 20.10 ist die neueste Version, für die verifiziert wurde, dass sie mit der AWS IoT Greengrass Core-Software funktioniert. Sie müssen Docker direkt auf dem Core-Gerät installieren, bevor Sie Komponenten bereitstellen, die Docker-Container ausführen.

  • Der Docker-Daemon wurde gestartet und wird auf dem Core-Gerät ausgeführt, bevor Sie diese Komponente bereitstellen.

  • Docker-Images, die in einer der folgenden unterstützten Image-Quellen gespeichert sind:

    • Öffentliche und private Image-Repositorys in Amazon Elastic Container Registry (Amazon ECR)

    • Öffentliches Docker-Hub-Repository

    • Öffentliche vertrauenswürdige Docker-Registrierung

  • Docker-Images, die als Artefakte in Ihren benutzerdefinierten Docker-Containerkomponenten enthalten sind. Verwenden Sie die folgenden URI-Formate, um Ihre Docker-Images anzugeben:

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

    • Öffentliches Amazon-ECR-Image: docker:public.ecr.aws/repository/image[:tag|@digest]

    • Öffentliches Docker-Hub-Image: docker:name[:tag|@digest]

    Weitere Informationen finden Sie unter Führen Sie einen Docker-Container aus.

    Anmerkung

    Wenn Sie das Image-Tag oder den Image-Digest nicht im Artefakt-URI für ein Image angeben, ruft der Docker-Anwendungsmanager die neueste verfügbare Version dieses Images ab, wenn Sie Ihre benutzerdefinierte Docker-Containerkomponente bereitstellen. Um sicherzustellen, dass alle Ihre Core-Geräte dieselbe Version eines Images ausführen, empfehlen wir Ihnen, das Image-Tag oder den Image-Digest in den Artefakt-URI aufzunehmen.

  • Der Systembenutzer, der eine Docker-Containerkomponente ausführt, muss über Root- oder Administratorberechtigungen verfügen, oder Sie müssen Docker so konfigurieren, dass es als Nicht-Root- oder Nicht-Administratorbenutzer ausgeführt wird.

    • Auf Linux-Geräten können Sie der docker Gruppe einen Benutzer hinzufügen, um docker Befehle ohne aufzurufensudo.

    • Auf Windows-Geräten können Sie der docker-users Gruppe einen Benutzer hinzufügen, um docker Befehle ohne Administratorrechte aufzurufen.

    Linux or Unix

    Um oder den Nicht-Root-Benutzerggc_user, den Sie zum Ausführen von Docker-Containerkomponenten verwenden, zur docker Gruppe hinzuzufügen, führen Sie den folgenden Befehl aus.

    sudo usermod -aG docker ggc_user

    Weitere Informationen finden Sie unter Verwalten von Docker als Nicht-Root-Benutzer.

    Windows Command Prompt (CMD)

    Um oder den Benutzerggc_user, den Sie zum Ausführen von Docker-Containerkomponenten verwenden, zur docker-users Gruppe hinzuzufügen, führen Sie den folgenden Befehl als Administrator aus.

    net localgroup docker-users ggc_user /add
    Windows PowerShell

    Um oder den Benutzerggc_user, den Sie zum Ausführen von Docker-Containerkomponenten verwenden, zur docker-users Gruppe hinzuzufügen, führen Sie den folgenden Befehl als Administrator aus.

    Add-LocalGroupMember -Group docker-users -Member ggc_user
  • Wenn Sie die AWS IoT Greengrass Core-Software für die Verwendung eines Netzwerk-Proxys konfigurieren, müssen Sie Docker für die Verwendung desselben Proxy-Servers konfigurieren.

  • Wenn Ihre Docker-Images in einer privaten Amazon-ECR-Registrierung gespeichert sind, müssen Sie die Token-Exchange-Servicekomponente als Abhängigkeit in die Docker-Containerkomponente aufnehmen. Außerdem muss die Greengrass-Geräterolle die ecr:GetDownloadUrlForLayer Aktionen ecr:GetAuthorizationTokenecr:BatchGetImage, und zulassen, wie in der folgenden Beispiel-IAM-Richtlinie gezeigt.

    { "Version": "2012-10-17", "Statement": [ { "Action": [ "ecr:GetAuthorizationToken", "ecr:BatchGetImage", "ecr:GetDownloadUrlForLayer" ], "Resource": [ "*" ], "Effect": "Allow" } ] }
  • Die Docker-Application-Manager-Komponente wird für die Ausführung in einer VPC unterstützt. Um diese Komponente in einer VPC bereitzustellen, ist Folgendes erforderlich.

    • Die Docker-Application-Manager-Komponente muss über Konnektivität verfügen, um Images herunterzuladen. Wenn Sie beispielsweise ECR verwenden, müssen Sie über Konnektivität zu den folgenden Endpunkten verfügen.

      • *.dkr.ecr.region.amazonaws.com (VPC-Endpunkt com.amazonaws.region.ecr.dkr)

      • api.ecr.region.amazonaws.com (VPC-Endpunkt com.amazonaws.region.ecr.api)

Endpunkte und Ports

Diese Komponente muss in der Lage sein, ausgehende Anfragen an die folgenden Endpunkte und Ports auszuführen, zusätzlich zu den für den grundlegenden Betrieb erforderlichen Endpunkten und Ports. Weitere Informationen finden Sie unter Zulassen von Gerätedatenverkehr über einen Proxy oder eine Firewall.

Endpunkt Port Erforderlich Beschreibung

ecr.region.amazonaws.com

443 Nein

Erforderlich, wenn Sie Docker-Images von Amazon ECR herunterladen.

hub.docker.com

registry.hub.docker.com/v1

443 Nein

Erforderlich, wenn Sie Docker-Images von Docker Hub herunterladen.

Abhängigkeiten

Wenn Sie eine Komponente bereitstellen, stellt AWS IoT Greengrass auch kompatible Versionen ihrer Abhängigkeiten bereit. Das bedeutet, dass Sie die Anforderungen für die Komponente und alle ihre Abhängigkeiten erfüllen müssen, um die Komponente erfolgreich bereitzustellen. In diesem Abschnitt werden die Abhängigkeiten für die veröffentlichten Versionen dieser Komponente und die semantischen Versionseinschränkungen aufgeführt, die die Komponentenversionen für jede Abhängigkeit definieren. Sie können auch die Abhängigkeiten für jede Version der Komponente in der AWS IoT Greengrass Konsole anzeigen. Suchen Sie auf der Seite mit den Komponentendetails nach der Liste Abhängigkeiten.

2.0.11

In der folgenden Tabelle sind die Abhängigkeiten für Version 2.0.11 dieser Komponente aufgeführt.

-Abhängigkeit Kompatible Versionen Abhängigkeitstyp
Greengrass-Kern >=2.1.0 <2.13.0 Weich
2.0.10

In der folgenden Tabelle sind die Abhängigkeiten für Version 2.0.10 dieser Komponente aufgeführt.

-Abhängigkeit Kompatible Versionen Abhängigkeitstyp
Greengrass-Kern >=2.1.0 <2.12.0 Weich
2.0.9

In der folgenden Tabelle sind die Abhängigkeiten für Version 2.0.9 dieser Komponente aufgeführt.

-Abhängigkeit Kompatible Versionen Abhängigkeitstyp
Greengrass-Kern >=2.1.0 <2.11.0 Weich
2.0.8

In der folgenden Tabelle sind die Abhängigkeiten für Version 2.0.8 dieser Komponente aufgeführt.

-Abhängigkeit Kompatible Versionen Abhängigkeitstyp
Greengrass-Kern >=2.1.0 <2.10.0 Weich
2.0.7

In der folgenden Tabelle sind die Abhängigkeiten für Version 2.0.7 dieser Komponente aufgeführt.

-Abhängigkeit Kompatible Versionen Abhängigkeitstyp
Greengrass-Kern >=2.1.0 <2.9.0 Weich
2.0.6

In der folgenden Tabelle sind die Abhängigkeiten für Version 2.0.6 dieser Komponente aufgeführt.

-Abhängigkeit Kompatible Versionen Abhängigkeitstyp
Greengrass-Kern >=2.1.0 <2.8.0 Weich
2.0.5

In der folgenden Tabelle sind die Abhängigkeiten für Version 2.0.5 dieser Komponente aufgeführt.

-Abhängigkeit Kompatible Versionen Abhängigkeitstyp
Greengrass-Kern >=2.1.0 <2.7.0 Weich
2.0.4

In der folgenden Tabelle sind die Abhängigkeiten für Version 2.0.4 dieser Komponente aufgeführt.

-Abhängigkeit Kompatible Versionen Abhängigkeitstyp
Greengrass-Kern >=2.1.0 <2.6.0 Weich
2.0.3

In der folgenden Tabelle sind die Abhängigkeiten für Version 2.0.3 dieser Komponente aufgeführt.

-Abhängigkeit Kompatible Versionen Abhängigkeitstyp
Greengrass-Kern >=2.1.0 <2.5.0 Weich
2.0.2

In der folgenden Tabelle sind die Abhängigkeiten für Version 2.0.2 dieser Komponente aufgeführt.

-Abhängigkeit Kompatible Versionen Abhängigkeitstyp
Greengrass-Kern >=2.1.0 <2.4.0 Weich
2.0.1

In der folgenden Tabelle sind die Abhängigkeiten für Version 2.0.1 dieser Komponente aufgeführt.

-Abhängigkeit Kompatible Versionen Abhängigkeitstyp
Greengrass-Kern >=2.1.0 <2.3.0 Weich
2.0.0

In der folgenden Tabelle sind die Abhängigkeiten für Version 2.0.0 dieser Komponente aufgeführt.

-Abhängigkeit Kompatible Versionen Abhängigkeitstyp
Greengrass-Kern >=2.1.0 <2.2.0 Weich

Weitere Informationen zu Komponentenabhängigkeiten finden Sie in der Referenz zum Komponentenrezept .

Konfiguration

Diese Komponente hat keine Konfigurationsparameter.

Lokale Protokolldatei

Diese Komponente verwendet dieselbe Protokolldatei wie die Greengrass-Kernkomponente.

Linux
/greengrass/v2/logs/greengrass.log
Windows
C:\greengrass\v2\logs\greengrass.log
So zeigen Sie die Protokolle dieser Komponente an
  • Führen Sie den folgenden Befehl auf dem Core-Gerät aus, um die Protokolldatei dieser Komponente in Echtzeit anzuzeigen. Ersetzen Sie /greengrass/v2 oder C:\greengrass\v2 durch den Pfad zum AWS IoT Greengrass Stammordner.

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

Änderungsprotokoll

In der folgenden Tabelle werden die Änderungen in jeder Version der Komponente beschrieben.

Version

Änderungen

2.0.11

Version für Greengrass-Kern Version 2.12.0 aktualisiert.

2.0.10

Version für Greengrass-Kern Version 2.11.0 aktualisiert.

2.0.9

Version für Greengrass-Kernversion 2.10.0 aktualisiert.

2.0.8

Version für Greengrass-Kern Version 2.9.0 aktualisiert.

2.0.7

Version für Greengrass-Kern Version 2.8.0 aktualisiert.

2.0.6

Version für Greengrass-Kern Version 2.7.0 aktualisiert.

2.0.5

Version für Greengrass-Kern Version 2.6.0 aktualisiert.

2.0.4

Version für Greengrass-Kern Version 2.5.0 aktualisiert.

2.0.3

Version für Greengrass-Kern Version 2.4.0 aktualisiert.

2.0.2

Version für Greengrass-Kern Version 2.3.0 aktualisiert.

2.0.1

Version für Greengrass-Kern Version 2.2.0 aktualisiert.

2.0.0

Erste Version

Weitere Informationen finden Sie auch unter