Compilare e gestire i contenitori con attività

Completato

Le attività di Registro Azure Container (ACR) sono una suite di funzionalità che consentono di:

  • Fornire la creazione di immagini dei contenitori basate sul cloud per piattaforme come Linux, Windows e Advanced RISC Machines (Arm).
  • Estendere le fasi iniziali di un ciclo di sviluppo di applicazioni al cloud con compilazioni di immagini del contenitore su richiesta.
  • Abilitare compilazioni automatizzate attivate da aggiornamenti del codice sorgente, aggiornamenti all'immagine di base di un contenitore o timer.

Scenari di attività

Attività del Registro Azure Container supporta diversi scenari per compilare e gestire immagini di contenitore e altri artefatti.

  • Attività rapide: compilare ed eseguire il push di una singola immagine di contenitore in un registro contenitori su richiesta, in Azure, senza la necessità di un'installazione locale del motore Docker. Pensare docker build, docker push nel cloud.

  • Attività attivate automaticamente: abilitare uno o più trigger per creare un'immagine:

    • Generare un'attività all'aggiornamento del codice sorgente
    • Generare un'attività all'aggiornamento dell'immagine di base
    • Generare attività in base a una pianificazione
  • Attività in più passaggi: estendono la singola funzionalità di creazione ed esecuzione del push di Attività di Registro Azure Container con flussi di lavoro basati su più contenitori e più passaggi.

Ogni attività del Registro Azure Container ha un contesto di codice sorgente associato, ovvero il percorso di un set di file di origine usati per creare un'immagine del contenitore o un altro artefatto. I contesti di esempio includono un repository Git o un file system locale.

Attività rapida

Il ciclo di sviluppo con ciclo interno è il processo iterativo di scrittura di codice, compilazione e test dell'applicazione prima di eseguire il commit nel controllo del codice sorgente. Si tratta davvero dell'inizio della gestione del ciclo di vita dei contenitori.

Prima di eseguire il commit della prima riga di codice, la funzionalità di attività rapida presente in Attività del Registro Azure Container può offrire un'esperienza di sviluppo integrata tramite l'offload delle compilazioni delle immagini di contenitore in Azure. Grazie alle attività rapide, è possibile verificare le definizioni di compilazione automatizzate e rilevare potenziali problemi prima di eseguire il commit del codice.

Usando il noto formato docker build, il comando az acr build nell'interfaccia della riga di comando di Azure accetta un contesto (l'insieme di file da compilare), lo invia al servizio Attività del Registro Azure Container e al termine, per impostazione predefinita, esegue il push dell'immagine creata nel registro.

Generare un'attività all'aggiornamento del codice sorgente

Attivare la compilazione di un'immagine di contenitore o un'attività a più passaggi quando viene eseguito il commit del codice o quando viene effettuata o aggiornata una richiesta pull in un repository Git in GitHub o Azure DevOps Services. Ad esempio, configurare un'attività di compilazione con il comando dell'interfaccia della riga di comando az acr task create specificando un repository Git e facoltativamente un ramo e un Dockerfile. Quando il team aggiorna il codice nel repository, un webhook creato da Attività del Registro Azure Container attiva una compilazione dell'immagine di contenitore definita nel repository.

Generare un'attività all'aggiornamento dell'immagine di base

È possibile configurare un'attività del Registro Azure Container per tenere traccia di una dipendenza da un'immagine di base durante la compilazione di un'immagine dell'applicazione. Quando si esegue il push dell'immagine di base aggiornata nel registro o si aggiorna un'immagine di base in un repository pubblico, ad esempio in Docker Hub, Attività del Registro Azure Container può compilare automaticamente tutte le immagini dell'applicazione basate su di essa.

Pianificare un'attività

Se lo si desidera, è possibile pianificare un'attività configurando uno o più trigger timer quando si crea o si aggiorna l'attività. La pianificazione di un'attività è utile per eseguire carichi di lavoro del contenitore in base a una pianificazione definita o per eseguire operazioni di manutenzione o test sulle immagini di cui è stato eseguito regolarmente il push nel registro.

Attività a più passaggi

Le attività a più passaggi, definite in un file YAML, specificano singole operazioni di compilazione e push per le immagini di contenitore o altri artefatti. Possono anche definire l'esecuzione di uno o più contenitori, con ogni passaggio che usa il contenitore come ambiente di esecuzione. È ad esempio possibile creare un'attività a più passaggi che automatizza quanto segue:

  1. Compilazione di un'immagine di applicazione Web
  2. Esecuzione di un contenitore di applicazione Web
  3. Compilazione di un'immagine di test di un'applicazione Web
  4. Esecuzione del contenitore di test dell'applicazione Web, che esegue i test sul contenitore dell'applicazione in esecuzione
  5. Se i test vengono superati, compilazione di un pacchetto di archivio del grafico Helm
  6. Eseguire un helm upgrade usando il nuovo pacchetto di archivio del grafico di Helm

Piattaforme di immagini

Per impostazione predefinita, Attività del Registro Azure Container compila immagini per il sistema operativo Linux e l'architettura amd64. Specificare il tag --platform per compilare immagini Windows o immagini Linux per altre architetture. Specificare il sistema operativo e facoltativamente un'architettura supportata in formato os/architecture (ad esempio, --platform Linux/arm). Per le architetture ARM, specificare facoltativamente una variante in formato os/architecture/variant (ad esempio, --platform Linux/arm64/v8):

Sistema operativo Architettura
Linux AMD64
Arm
Arm64
386
Windows AMD64