

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à.

# In che modo Amazon SageMaker Processing esegue l'immagine del tuo contenitore di elaborazione
<a name="byoc-run-image"></a>

Amazon SageMaker Processing esegue l'immagine del contenitore di elaborazione in modo simile al seguente comando, dove si `AppSpecification.ImageUri` trova l'URI dell'immagine Amazon ECR specificato in un'`CreateProcessingJob`operazione. 

```
docker run [AppSpecification.ImageUri]
```

Questo comando esegue il comando `ENTRYPOINT` configurato nell'immagine Docker. 

È inoltre possibile sovrascrivere il comando entrypoint nell'immagine o fornire argomenti della riga di comando al comando entrypoint utilizzando i parametri `AppSpecification.ContainerEntrypoint` e `AppSpecification.ContainerArgument` nella richiesta `CreateProcessingJob`. La specificazione di questi parametri configura Amazon SageMaker Processing per eseguire il contenitore in modo simile al comando seguente. 

```
 docker run --entry-point [AppSpecification.ContainerEntrypoint] [AppSpecification.ImageUri] [AppSpecification.ContainerArguments]
```

Ad esempio, se specifichi `ContainerEntrypoint` to be `[python3, -v, /processing_script.py]` nella tua `CreateProcessingJob ` richiesta e `ContainerArguments` to be`[data-format, csv]`, Amazon SageMaker Processing esegue il contenitore con il seguente comando. 

```
 python3 -v /processing_script.py data-format csv 
```

 Quando si costruisce il container di elaborazione, tieni presenti i seguenti dettagli: 
+ Amazon SageMaker Processing decide se il processo viene completato o meno in base al codice di uscita del comando eseguito. Un'attività di elaborazione viene completata se tutti i container di elaborazione escono correttamente con un codice di uscita pari a 0 e non riesce se uno dei container esce con un codice di uscita diverso da zero.
+  Amazon SageMaker Processing ti consente di sovrascrivere il punto di ingresso del contenitore di elaborazione e impostare argomenti della riga di comando proprio come puoi fare con l'API Docker. Le immagini Docker possono anche configurare gli argomenti dell'entrypoint e della riga di comando utilizzando le istruzioni `ENTRYPOINT` e CMD. Il modo in cui i parametri `ContainerEntrypoint` e `ContainerArgument` di `CreateProcessingJob` configurano l'entrypoint e gli argomenti di un'immagine Docker rispecchia il modo in cui Docker sovrascrive l'entrypoint e gli argomenti attraverso l'API Docker:
  + Se non vengono forniti né `ContainerEntrypoint` né `ContainerArguments`, Processing utilizza l'`ENTRYPOINT` o il CMD predefinito nell'immagine.
  + Se viene fornito `ContainerEntrypoint`, ma non `ContainerArguments`, Processing esegue l'immagine con il punto di ingresso specificato e ignora l'`ENTRYPOINT` e il CMD nell'immagine.
  + Se viene fornito `ContainerArguments`, ma non `ContainerEntrypoint`, Processing esegue l'immagine con l'`ENTRYPOINT` predefinito nell'immagine e con gli argomenti forniti.
  + Se vengono forniti sia `ContainerEntrypoint` sia `ContainerArguments`, Processing esegue l'immagine con l'entrypoint e gli argomenti specificati e ignora l'`ENTRYPOINT` e il CMD nell'immagine.
+ Utilizza il modulo exec dell'istruzione `ENTRYPOINT` nel Dockerfile (`ENTRYPOINT` `["executable", "param1", "param2"])` invece del modulo shell (`ENTRYPOINT`` command param1 param2`). Ciò consente al container di elaborazione di ricevere segnali `SIGINT` e `SIGKILL`, che Processing utilizza per interrompere le attività di elaborazione utilizzando l'API `StopProcessingJob`.
+ `/opt/ml`e tutte le sue sottodirectory sono riservate dall'IA. SageMaker Quando si crea l'immagine Docker di elaborazione, non inserire i dati richiesti dal container di elaborazione in queste directory.
+ Se si prevede di utilizzare dispositivi GPU, assicurarsi che i container siano compatibili con nvidia-docker. Includi solo il toolkit CUDA nei container. Non aggregare i driver NVIDIA con l'immagine. Per ulteriori informazioni su nvidia-docker, consulta [NVIDIA/nvidia-docker](https://github.com/NVIDIA/nvidia-docker).