

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

# Gestore di applicazioni Docker
<a name="docker-application-manager-component"></a>

Il componente Docker application manager (`aws.greengrass.DockerApplicationManager`) consente AWS IoT Greengrass di scaricare immagini Docker da registri di immagini pubblici e registri privati ospitati su Amazon Elastic Container Registry (Amazon ECR) Elastic Container Registry (Amazon ECR). Consente inoltre di AWS IoT Greengrass gestire automaticamente le credenziali per scaricare in modo sicuro immagini da archivi privati in Amazon ECR.

Quando sviluppi un componente personalizzato che esegue un contenitore Docker, includi il gestore delle applicazioni Docker come dipendenza per scaricare le immagini Docker specificate come artefatti nel componente. Per ulteriori informazioni, consulta [Esegui un contenitore Docker](run-docker-container.md).

**Topics**
+ [Versioni](#docker-application-manager-component-versions)
+ [Tipo](#docker-application-manager-component-type)
+ [Sistema operativo](#docker-application-manager-component-os-support)
+ [Requisiti](#docker-application-manager-component-requirements)
+ [Dipendenze](#docker-application-manager-component-dependencies)
+ [Configurazione](#docker-application-manager-component-configuration)
+ [File di registro locale](#docker-application-manager-component-log-file)
+ [Changelog](#docker-application-manager-component-changelog)
+ [Consulta anche](#docker-application-manager-component-see-also)

## Versioni
<a name="docker-application-manager-component-versions"></a>

Questo componente ha le seguenti versioni:
+ 2.0.x

## Tipo
<a name="docker-application-manager-component-type"></a>

<a name="public-component-type-generic"></a>Questo <a name="public-component-type-generic-phrase"></a>componente è un componente generico (`aws.greengrass.generic`). Il [nucleo Greengrass](greengrass-nucleus-component.md) esegue gli script del ciclo di vita del componente.

<a name="public-component-type-more-information"></a>Per ulteriori informazioni, consulta [Tipi di componenti](develop-greengrass-components.md#component-types).

## Sistema operativo
<a name="docker-application-manager-component-os-support"></a>

Questo componente può essere installato su dispositivi principali che eseguono i seguenti sistemi operativi:
+ Linux
+ Windows

## Requisiti
<a name="docker-application-manager-component-requirements"></a>

Questo componente presenta i seguenti requisiti:
+ <a name="docker-engine-requirement"></a>[Docker Engine](https://docs.docker.com/engine/) 1.9.1 o versione successiva installato sul dispositivo principale Greengrass. La versione 20.10 è l'ultima versione verificata per funzionare con il software Core. AWS IoT Greengrass È necessario installare Docker direttamente sul dispositivo principale prima di distribuire componenti che eseguono contenitori Docker.
+ <a name="docker-daemon-requirement"></a>Il daemon Docker è stato avviato e funzionante sul dispositivo principale prima di distribuire questo componente. 
+ Immagini Docker archiviate in una delle seguenti fonti di immagini supportate:
  + Archivi di immagini pubblici e privati in Amazon Elastic Container Registry (Amazon ECR)
  + Archivio pubblico di Docker Hub
  + Registro pubblico affidabile di Docker
+ Immagini Docker incluse come artefatti nei componenti del contenitore Docker personalizzati. Usa i seguenti formati URI per specificare le tue immagini Docker:<a name="docker-image-artifact-uri"></a>
  + Immagine Amazon ECR privata: `docker:account-id.dkr.ecr.region.amazonaws.com/repository/image[:tag|@digest]`
  + Immagine pubblica di Amazon ECR: `docker:public.ecr.aws/repository/image[:tag|@digest]`
  + Immagine pubblica di Docker Hub: `docker:name[:tag|@digest]`

  Per ulteriori informazioni, consulta [Esegui un contenitore Docker](run-docker-container.md).
**Nota**  
Se non specifichi il tag dell'immagine o l'image digest nell'URI dell'artefatto per un'immagine, il gestore delle applicazioni Docker recupera l'ultima versione disponibile di quell'immagine quando distribuisci il componente contenitore Docker personalizzato. Per garantire che tutti i dispositivi principali eseguano la stessa versione di un'immagine, ti consigliamo di includere il tag dell'immagine o l'image digest nell'URI dell'artefatto.
+ <a name="docker-user-permissions-requirement"></a>L'utente di sistema che esegue un componente del contenitore Docker deve disporre delle autorizzazioni di root o amministratore oppure è necessario configurare Docker per eseguirlo come utente non root o non amministratore.
  + Sui dispositivi Linux, puoi aggiungere un utente al gruppo senza il quale chiamare i comandi. `docker` `docker` `sudo`
  + Nei dispositivi Windows, è possibile aggiungere un utente al `docker-users` gruppo per richiamare `docker` comandi senza privilegi di amministratore.

------
#### [ Linux or Unix ]

  Per aggiungere `ggc_user` al `docker` gruppo l'utente non root che usi per eseguire i componenti del contenitore Docker, esegui il comando seguente.

  ```
  sudo usermod -aG docker ggc_user
  ```

  Per ulteriori informazioni, consulta [Gestire Docker come](https://docs.docker.com/engine/install/linux-postinstall/#manage-docker-as-a-non-root-user) utente non root.

------
#### [ Windows Command Prompt (CMD) ]

  Per aggiungere al `docker-users` gruppo`ggc_user`, o l'utente che usi per eseguire i componenti del contenitore Docker, esegui il comando seguente come amministratore.

  ```
  net localgroup docker-users ggc_user /add
  ```

------
#### [ Windows PowerShell ]

  Per aggiungere al `docker-users` gruppo`ggc_user`, o l'utente che usi per eseguire i componenti del contenitore Docker, esegui il comando seguente come amministratore.

  ```
  Add-LocalGroupMember -Group docker-users -Member ggc_user
  ```

------
+ <a name="docker-proxy-requirement"></a>Se [configuri il software AWS IoT Greengrass Core per utilizzare un proxy di rete](configure-greengrass-core-v2.md#configure-alpn-network-proxy), devi [configurare Docker per utilizzare lo stesso server proxy](https://docs.docker.com/network/proxy/).
+ Se le tue immagini Docker sono archiviate in un registro privato Amazon ECR, devi includere il componente del servizio di scambio di token come dipendenza nel componente contenitore Docker. Inoltre, il [ruolo del dispositivo Greengrass](device-service-role.md) deve consentire le `ecr:GetDownloadUrlForLayer` azioni`ecr:GetAuthorizationToken`, e`ecr:BatchGetImage`, come mostrato nell'esempio seguente di politica IAM.

------
#### [ JSON ]

****  

  ```
  {
    "Version":"2012-10-17",		 	 	 
    "Statement": [
      {
        "Action": [
          "ecr:GetAuthorizationToken",
          "ecr:BatchGetImage",
          "ecr:GetDownloadUrlForLayer"
        ],
        "Resource": [
          "*"
        ],
        "Effect": "Allow"
      }
    ]
  }
  ```

------

  ```
  ```
+ Il componente docker application manager è supportato per l'esecuzione in un VPC. Per distribuire questo componente in un VPC, è necessario quanto segue.
  + Il componente docker application manager deve disporre di connettività per scaricare le immagini. Ad esempio, se si utilizza ECR, è necessario disporre della connettività ai seguenti endpoint.
    + `*.dkr.ecr.region.amazonaws.com`(endpoint VPC) `com.amazonaws.region.ecr.dkr`
    + `api.ecr.region.amazonaws.com`(endpoint VPC) `com.amazonaws.region.ecr.api`

### Endpoint e porte
<a name="docker-application-manager-component-endpoints"></a>

Questo componente deve essere in grado di eseguire richieste in uscita verso i seguenti endpoint e porte, oltre agli endpoint e alle porte necessari per le operazioni di base. Per ulteriori informazioni, consulta [Consenti il traffico dei dispositivi tramite un proxy o un firewall](allow-device-traffic.md).


| Endpoint | Porta | Richiesto | Description | 
| --- | --- | --- | --- | 
|  `ecr.region.amazonaws.com`  | 443 | No |  Obbligatorio se scarichi immagini Docker da Amazon ECR.  | 
|  `hub.docker.com` `registry.hub.docker.com/v1`  | 443 | No |  Obbligatorio se scarichi immagini Docker da Docker Hub.  | 

## Dipendenze
<a name="docker-application-manager-component-dependencies"></a>

Quando si distribuisce un componente, distribuisce AWS IoT Greengrass anche versioni compatibili delle relative dipendenze. Ciò significa che è necessario soddisfare i requisiti per il componente e tutte le sue dipendenze per distribuire correttamente il componente. Questa sezione elenca le dipendenze per le [versioni rilasciate](#docker-application-manager-component-changelog) di questo componente e i vincoli di versione semantica che definiscono le versioni dei componenti per ogni dipendenza. [È inoltre possibile visualizzare le dipendenze per ogni versione del componente nella console.AWS IoT Greengrass](https://console.aws.amazon.com//greengrass) Nella pagina dei dettagli del componente, cerca l'elenco delle **dipendenze**.

------
#### [ 2.0.15 ]

La tabella seguente elenca le dipendenze per la versione 2.0.15 di questo componente.


| Dipendenza | Versioni compatibili | Tipo di dipendenza | 
| --- | --- | --- | 
| [Nucleo Greengrass](greengrass-nucleus-component.md) | >=2.1.0 <2.17.0 | Flessibili | 

------
#### [ 2.0.14 ]

La tabella seguente elenca le dipendenze per la versione 2.0.14 di questo componente.


| Dipendenza | Versioni compatibili | Tipo di dipendenza | 
| --- | --- | --- | 
| [Nucleo Greengrass](greengrass-nucleus-component.md) | >=2.1.0 <2.16.0 | Flessibili | 

------
#### [ 2.0.13 ]

La tabella seguente elenca le dipendenze per la versione 2.0.13 di questo componente.


| Dipendenza | Versioni compatibili | Tipo di dipendenza | 
| --- | --- | --- | 
| [Nucleo Greengrass](greengrass-nucleus-component.md) | >=2.1.0 <2.15.0 | Flessibili | 

------
#### [ 2.0.12 ]

La tabella seguente elenca le dipendenze per la versione 2.0.12 di questo componente.


| Dipendenza | Versioni compatibili | Tipo di dipendenza | 
| --- | --- | --- | 
| [Nucleo Greengrass](greengrass-nucleus-component.md) | >=2.1.0 <2.14.0 | Flessibili | 

------
#### [ 2.0.11 ]

La tabella seguente elenca le dipendenze per la versione 2.0.11 di questo componente.


| Dipendenza | Versioni compatibili | Tipo di dipendenza | 
| --- | --- | --- | 
| [Nucleo Greengrass](greengrass-nucleus-component.md) | >=2.1.0 <2.13.0 | Flessibili | 

------
#### [ 2.0.10 ]

La tabella seguente elenca le dipendenze per la versione 2.0.10 di questo componente.


| Dipendenza | Versioni compatibili | Tipo di dipendenza | 
| --- | --- | --- | 
| [Nucleo Greengrass](greengrass-nucleus-component.md) | >=2.1.0 <2.12.0 | Flessibili | 

------
#### [ 2.0.9 ]

La tabella seguente elenca le dipendenze per la versione 2.0.9 di questo componente.


| Dipendenza | Versioni compatibili | Tipo di dipendenza | 
| --- | --- | --- | 
| [Nucleo Greengrass](greengrass-nucleus-component.md) | >=2.1.0 <2.11.0 | Flessibili | 

------
#### [ 2.0.8 ]

La tabella seguente elenca le dipendenze per la versione 2.0.8 di questo componente.


| Dipendenza | Versioni compatibili | Tipo di dipendenza | 
| --- | --- | --- | 
| [Nucleo Greengrass](greengrass-nucleus-component.md) | >=2.1.0 <2.10.0 | Flessibili | 

------
#### [ 2.0.7 ]

La tabella seguente elenca le dipendenze per la versione 2.0.7 di questo componente.


| Dipendenza | Versioni compatibili | Tipo di dipendenza | 
| --- | --- | --- | 
| [Nucleo Greengrass](greengrass-nucleus-component.md) | >=2.1.0 <2.9.0 | Flessibili | 

------
#### [ 2.0.6 ]

La tabella seguente elenca le dipendenze per la versione 2.0.6 di questo componente.


| Dipendenza | Versioni compatibili | Tipo di dipendenza | 
| --- | --- | --- | 
| [Nucleo Greengrass](greengrass-nucleus-component.md) | >=2.1.0 <2.8.0 | Flessibili | 

------
#### [ 2.0.5 ]

La tabella seguente elenca le dipendenze per la versione 2.0.5 di questo componente.


| Dipendenza | Versioni compatibili | Tipo di dipendenza | 
| --- | --- | --- | 
| [Nucleo Greengrass](greengrass-nucleus-component.md) | >=2.1.0 <2.7.0 | Flessibili | 

------
#### [ 2.0.4 ]

La tabella seguente elenca le dipendenze per la versione 2.0.4 di questo componente.


| Dipendenza | Versioni compatibili | Tipo di dipendenza | 
| --- | --- | --- | 
| [Nucleo Greengrass](greengrass-nucleus-component.md) | >=2.1.0 <2.6.0 | Flessibili | 

------
#### [ 2.0.3 ]

La tabella seguente elenca le dipendenze per la versione 2.0.3 di questo componente.


| Dipendenza | Versioni compatibili | Tipo di dipendenza | 
| --- | --- | --- | 
| [Nucleo Greengrass](greengrass-nucleus-component.md) | >=2.1.0 <2.5.0 | Flessibili | 

------
#### [ 2.0.2 ]

La tabella seguente elenca le dipendenze per la versione 2.0.2 di questo componente.


| Dipendenza | Versioni compatibili | Tipo di dipendenza | 
| --- | --- | --- | 
| [Nucleo Greengrass](greengrass-nucleus-component.md) | >=2.1.0 <2.4.0 | Flessibili | 

------
#### [ 2.0.1 ]

La tabella seguente elenca le dipendenze per la versione 2.0.1 di questo componente.


| Dipendenza | Versioni compatibili | Tipo di dipendenza | 
| --- | --- | --- | 
| [Nucleo Greengrass](greengrass-nucleus-component.md) | >=2.1.0 <2.3.0 | Flessibili | 

------
#### [ 2.0.0 ]

La tabella seguente elenca le dipendenze per la versione 2.0.0 di questo componente.


| Dipendenza | Versioni compatibili | Tipo di dipendenza | 
| --- | --- | --- | 
| [Nucleo Greengrass](greengrass-nucleus-component.md) | >=2.1.0 <2.2.0 | Flessibili | 

------

[Per ulteriori informazioni sulle dipendenze dei componenti, vedere il riferimento alla ricetta dei componenti.](component-recipe-reference.md#recipe-reference-component-dependencies)

## Configurazione
<a name="docker-application-manager-component-configuration"></a>

Questo componente non ha parametri di configurazione.

## File di registro locale
<a name="docker-application-manager-component-log-file"></a>

Questo componente utilizza lo stesso file di registro del componente [Greengrass nucleus](greengrass-nucleus-component.md).

------
#### [ Linux ]

```
/greengrass/v2/logs/greengrass.log
```

------
#### [ Windows ]

```
C:\greengrass\v2\logs\greengrass.log
```

------

**Per visualizzare i log di questo componente**
+ Esegui il seguente comando sul dispositivo principale per visualizzare il file di registro di questo componente in tempo reale. Sostituisci `/greengrass/v2` o *C:\$1greengrass\$1v2* con il percorso della cartella AWS IoT Greengrass principale.

------
#### [ Linux ]

  ```
  sudo tail -f /greengrass/v2/logs/greengrass.log
  ```

------
#### [ Windows (PowerShell) ]

  ```
  Get-Content C:\greengrass\v2\logs\greengrass.log -Tail 10 -Wait
  ```

------

## Changelog
<a name="docker-application-manager-component-changelog"></a>

La tabella seguente descrive le modifiche in ogni versione del componente.


|   **Versione**   |   **Modifiche**   | 
| --- | --- | 
|  2.0.15  |  Versione aggiornata per la versione 2.16.0 di Greengrass nucleus.  | 
|  2.0.14  | Versione aggiornata per la versione 2.15.0 di Greengrass nucleus. | 
|  2.0.13  | Versione aggiornata per la versione 2.14.0 di Greengrass nucleus. | 
|  2.0.12  | Versione aggiornata per la versione 2.13.0 di Greengrass nucleus. | 
|  2.0.11  | Versione aggiornata per la versione 2.12.0 di Greengrass nucleus. | 
|  2.0.10  | Versione aggiornata per la versione 2.11.0 di Greengrass nucleus. | 
|  2.0.9  | Versione aggiornata per la versione 2.10.0 di Greengrass nucleus. | 
|  2.0.8  | Versione aggiornata per la versione 2.9.0 di Greengrass nucleus. | 
|  2.0.7  | Versione aggiornata per la versione 2.8.0 di Greengrass nucleus. | 
|  2.0.6  |  Versione aggiornata per la versione 2.7.0 di Greengrass nucleus.  | 
|  2.0.5  |  Versione aggiornata per la versione 2.6.0 di Greengrass nucleus.  | 
|  2.0.4  |  Versione aggiornata per la versione 2.5.0 di Greengrass nucleus.  | 
|  2.0.3  |  Versione aggiornata per la versione 2.4.0 di Greengrass nucleus.  | 
|  2.0.2  |  Versione aggiornata per la versione 2.3.0 di Greengrass nucleus.  | 
|  2.0.1  |  Versione aggiornata per la versione 2.2.0 di Greengrass nucleus.  | 
|  2.0.0  |  Versione iniziale.  | 

## Consulta anche
<a name="docker-application-manager-component-see-also"></a>
+  [Esegui un contenitore Docker](run-docker-container.md) 