

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

# Aggiungere contenitori privati o di terze parti durante la creazione del flusso di lavoro
<a name="containers-workflow-creation"></a>

Quando crei un nuovo flusso di lavoro, puoi definire le mappature del registro e delle immagini richieste dal flusso di lavoro. Per ulteriori informazioni, consulta [Crea un flusso di lavoro privato](create-private-workflow.md). È inoltre possibile aggiornare le mappature del registro e delle immagini quando si crea una nuova versione del flusso di lavoro. Per ulteriori informazioni, consulta [Crea una versione del flusso di lavoro](workflows-version-create.md).

Le sezioni seguenti descrivono le mappature del registro e le mappature delle immagini.

## Mappature del registro
<a name="ecr-pull-through-registry-mapping"></a>

Definisci le mappature del registro per mappare tra i prefissi del tuo registro Amazon ECR privato e i nomi dei registri upstream. Una mappa del registro può contenere sia le mappature di pull through della cache che le mappature per i registri che HealthOmics copie da.

L'esempio seguente mappa Docker Hub, Quay e Amazon ECR Public tramite cache pull through e mappa Seqera Containers (`community.wave.seqera.io`) con una credenziale in modo che HealthOmics copia le sue immagini.

```
{
    "registryMappings": [
        {
            "upstreamRegistryUrl": "registry-1.docker.io",
            "ecrRepositoryPrefix": "docker-hub"
        },
        {
            "upstreamRegistryUrl": "quay.io",
            "ecrRepositoryPrefix": "quay"
        },
        {
            "upstreamRegistryUrl": "public.ecr.aws",
            "ecrRepositoryPrefix": "ecr-public"
        },
        {
            "upstreamRegistryUrl": "community.wave.seqera.io",
            "ecrRepositoryPrefix": "wave-seqera",
            "credentialArn": "arn:aws:secretsmanager:us-east-1:111122223333:secret:omics-registry/seqera-EXAMPLE"
        }
    ]
}
```

Le seguenti regole si applicano alle mappature del registro:
+ `upstreamRegistryUrl` deve corrispondere esattamente all'host del registro all'inizio dell'URI dell'immagine. Ad esempio, una mappatura per `wave.seqera.io` non copre le immagini su `community.wave.seqera.io`.
+ Ogni host di registro upstream a cui fa riferimento il flusso di lavoro necessita di una mappatura. Le immagini a cui fai riferimento tramite il loro URI Amazon ECR privato non ne hanno bisogno.
+ Le mappature della cache pull through non vengono utilizzate `credentialArn`. Se aggiungi `credentialArn` a una mappatura della cache tramite pull through, HealthOmics lo ignora.
+ Mappature per i registri che HealthOmics le copie di devono includere `credentialArn`. Se una di queste mappature non ha `credentialArn`, il flusso di lavoro ha esito negativo con un errore che assegna un nome al registro.
+ Mantieni `upstreamRepositoryPrefix` Non impostato per Wave (`wave.seqera.io`).

`CreateWorkflow` e `CreateWorkflowVersion` sono asincroni. Se lo stato è `FAILED`, l'errore viene visualizzato in `statusMessage` nel `GetWorkflow` risposta per un flusso di lavoro, o `GetWorkflowVersion` risposta per una versione del flusso di lavoro.

Fornisci la mappa in linea con `containerRegistryMap`o come URI Amazon S3 con `containerRegistryMapUri`, non entrambi. Per esempi di CLI, vedi [Configura i parametri di mappatura della cache pull through](create-private-workflow.md#create-prefix-mapping-parameters) e [Configura i parametri di mappatura della cache con modalità non-pull through](create-private-workflow.md#create-non-ptc-mapping-parameters).

L'esecuzione utilizza la mappa del registro del flusso di lavoro o della versione del flusso di lavoro eseguita, in modo da non aggiungere nulla a `StartRun`.

## Mappature delle immagini
<a name="ecr-pull-through-mapping-format"></a>

Definisci le mappature delle immagini per mappare tra i nomi delle immagini definiti nei tuoi flussi di lavoro privati di Amazon ECR e i nomi delle immagini nel registro upstream.

Puoi utilizzare le mappature delle immagini con registri supportati dalla cache pull through di Amazon ECR, come Quay, e con registri che la pull through cache non supporta, come Seqera. HealthOmics non copia le immagini per la mappatura delle immagini, quindi mantieni tu stesso il tuo repository privato sincronizzato con il registro upstream.

**Nota**  
Una mappatura delle immagini ha la precedenza sulle mappature del registro.

L'esempio seguente mostra le mappature da immagini private di Amazon ECR a un'immagine genomica pubblica e all'ultima immagine di Ubuntu.

```
{
    "imageMappings": [
        {
            "sourceImage": "public.ecr.aws/aws-genomics/broadinstitute/gatk:4.6.0.2",
            "destinationImage": "111122223333.dkr.ecr.us-east-1.amazonaws.com/broadinstitute/gatk:4.6.0.2"
        },
        {
            "sourceImage": "ubuntu:latest",
            "destinationImage": "111122223333.dkr.ecr.us-east-1.amazonaws.com/custom/ubuntu:latest"
        }
    ]
}
```

Per ulteriori informazioni sull'utilizzo delle mappature del registro e delle immagini durante la creazione di un flusso di lavoro, consulta [Configura i parametri di mappatura della cache pull through](create-private-workflow.md#create-prefix-mapping-parameters).