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 AWS IoT Greengrass das Herunterladen von Docker-Images aus öffentlichen Image-Registern und privaten Registern, die auf Amazon Elastic Container Registry (Amazon) gehostet werden. ECR Es ermöglicht auch AWS IoT Greengrass die automatische Verwaltung von Anmeldeinformationen, um Bilder sicher aus privaten Repositorys bei Amazon ECR herunterzuladen.

Wenn Sie eine benutzerdefinierte Komponente entwickeln, die einen Docker-Container ausführt, fügen Sie den Docker-Anwendungsmanager als Abhängigkeit hinzu, um die Docker-Images herunterzuladen, die in Ihrer Komponente als Artefakte 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 Kerngerä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 Core-Software funktioniert. AWS IoT Greengrass Sie müssen Docker direkt auf dem Kerngerät installieren, bevor Sie Komponenten bereitstellen, auf denen Docker-Container ausgeführt werden.

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

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

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

    • Öffentliches Docker Hub-Repository

    • Vertrauenswürdiges öffentliches Docker-Register

  • Docker-Images, die als Artefakte in Ihren benutzerdefinierten Docker-Container-Komponenten enthalten sind. Verwenden Sie die folgenden URI Formate, um Ihre Docker-Images zu spezifizieren:

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

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

    • Öffentliches Docker Hub-Bild: 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-Container-Komponente bereitstellen. Um sicherzustellen, dass auf allen Ihren Kerngeräten dieselbe Version eines Images ausgeführt wird, empfehlen wir, das Image-Tag oder den Image-Digest in das Artefakt aufzunehmen. URI

  • Der Systembenutzer, der eine Docker-Container-Komponente ausführt, muss über Root- oder Administratorrechte verfügen, oder Sie müssen Docker so konfigurieren, dass es als Benutzer ohne Root- oder Administratorrechte ausgeführt wird.

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

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

    Linux or Unix

    Führen Sie den folgenden Befehl ausggc_user, um der docker Gruppe einen Nicht-Root-Benutzer, den Sie zum Ausführen von Docker-Container-Komponenten verwenden, hinzuzufügen.

    sudo usermod -aG docker ggc_user

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

    Windows Command Prompt (CMD)

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

    net localgroup docker-users ggc_user /add
    Windows PowerShell

    Um der docker-users Gruppe den Benutzerggc_user, den Sie zum Ausführen von Docker-Container-Komponenten verwenden, 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 Proxyservers konfigurieren.

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

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

    • Die Docker-Anwendungsmanager-Komponente muss über Konnektivität zum Herunterladen von Bildern verfügen. Wenn Sie beispielsweise verwendenECR, müssen Sie über Konnektivität zu den folgenden Endpunkten verfügen.

      • *.dkr.ecr.region.amazonaws.com(VPCEndpunktcom.amazonaws.region.ecr.dkr)

      • api.ecr.region.amazonaws.com(VPCEndpunktcom.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 Endpunkten und Ports, die für den Basisbetrieb erforderlich sind. 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 all ihre Abhängigkeiten erfüllen müssen, um die Komponente erfolgreich bereitstellen zu können. In diesem Abschnitt werden die Abhängigkeiten für die veröffentlichten Versionen dieser Komponente sowie 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 der Abhängigkeiten.

2.0.12

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

-Abhängigkeit Kompatible Versionen Art der Abhängigkeit
Grüngraskern >=2.1.0 <2.14.0 Weich
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 Art der Abhängigkeit
Grüngraskern >=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 Art der Abhängigkeit
Grüngraskern >=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 Art der Abhängigkeit
Grüngraskern >=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 Art der Abhängigkeit
Grüngraskern >=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 Art der Abhängigkeit
Grüngraskern >=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 Art der Abhängigkeit
Grüngraskern >=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 Art der Abhängigkeit
Grüngraskern >=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 Art der Abhängigkeit
Grüngraskern >=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 Art der Abhängigkeit
Grüngraskern >=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 Art der Abhängigkeit
Grüngraskern >=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 Art der Abhängigkeit
Grüngraskern >=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 Art der Abhängigkeit
Grüngraskern >=2.1.0 <2.2.0 Weich

Weitere Informationen zu Komponentenabhängigkeiten finden Sie in der Referenz zu den Komponentenrezepten.

Konfiguration

Diese Komponente hat keine Konfigurationsparameter.

Lokale Protokolldatei

Diese Komponente verwendet dieselbe Protokolldatei wie die Greengrass Nucleus-Komponente.

Linux
/greengrass/v2/logs/greengrass.log
Windows
C:\greengrass\v2\logs\greengrass.log
Um die Protokolle dieser Komponente einzusehen
  • Führen Sie den folgenden Befehl auf dem Kerngerät aus, um die Protokolldatei dieser Komponente in Echtzeit anzuzeigen. Ersetzen /greengrass/v2 oder C:\greengrass\v2 mit dem 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 den einzelnen Versionen der Komponente beschrieben.

Version

Änderungen

2.0.12

Die Version wurde für die Version 2.13.0 von Greengrass Nucleus aktualisiert.

2.0.11

Die Version wurde für die Version 2.12.0 von Greengrass Nucleus aktualisiert.

2.0.10

Die Version wurde für die Version 2.11.0 von Greengrass Nucleus aktualisiert.

2.0.9

Die Version wurde für die Version 2.10.0 von Greengrass Nucleus aktualisiert.

2.0.8

Die Version wurde für die Version 2.9.0 von Greengrass Nucleus aktualisiert.

2.0.7

Die Version wurde für die Version 2.8.0 von Greengrass Nucleus aktualisiert.

2.0.6

Die Version wurde für die Version 2.7.0 von Greengrass Nucleus aktualisiert.

2.0.5

Die Version wurde für die Version 2.6.0 von Greengrass Nucleus aktualisiert.

2.0.4

Die Version wurde für die Version 2.5.0 von Greengrass Nucleus aktualisiert.

2.0.3

Die Version wurde für die Version 2.4.0 von Greengrass Nucleus aktualisiert.

2.0.2

Die Version wurde für die Version 2.3.0 von Greengrass Nucleus aktualisiert.

2.0.1

Die Version wurde für die Version 2.2.0 von Greengrass Nucleus aktualisiert.

2.0.0

Erste Version

Weitere Informationen finden Sie auch unter