Introduzione a Azure Container Registry – CloudSavvy IT


logo blu

Nello sviluppo del software, sembra che non importa dove tu vada, non importa con chi parli, i contenitori sono la nuova normalità. Se non stai ancora sviluppando o migrando la tua applicazione, stai creando sistemi di supporto che li utilizzano per supportare un’applicazione legacy. I contenitori sono ovunque.

Tuttavia, ciò significa che, come ingegnere, dovrai mettere i tuoi contenitori da qualche parte. Ai vecchi tempi, ciò significava costruire un artefatto di qualche tipo, che si trattasse di un file binario o di un file, quindi di scriverlo su disco o un file condiviso e distribuirlo. Nell’ecosistema contenitore, sarà un registro contenitore e gli artefatti che costruirai saranno immagini contenitore.

Idealmente, un record del contenitore dovrebbe trovarsi in un luogo sicuro che potrebbe automatizzare parte del lavoro per te, come la scansione del contenitore e le azioni di attivazione su ogni commit o pianificazione. Fortunatamente, Azure ha coperto tutto quanto sopra con Azure Container Registry, o in breve ACR.

Prerequisiti

Per seguirlo, avrai bisogno di quanto segue:

  • Un account Azure
  • Un contenitore per spingere e tirare il repository
  • (Facoltativo) Un terminale PowerShell autenticato Azure o un’istanza CloudShell

Il contenitore non deve essere più di hello-world Perché questa è un’esercitazione sui record contenitore, non sui contenitori stessi. Se non si ha familiarità con Docker o contenitori, è possibile ottenere ulteriori informazioni su di essi qui.

Crea il record

La prima cosa che dovrai fare è creare un registro, prima con Azure Portal e poi con Azure PowerShell.

Utilizzando il portale

Vai su “Crea una risorsa”, quindi cerca in Contenitori> Registro contenitori.

Cerca in Contenitori data-src=

Una volta effettuato il provisioning, vai alla pagina delle risorse e trova la scheda “Password”. Da qui, assicurati di abilitare l’opzione “Utente amministratore” in modo da poter accedere utilizzando la CLI in un secondo momento.

Sotto

Usare Azure PowerShell

Con Azure PowerShell, questo viene fatto con una riga, in un’istanza CloudShell o in una console PowerShell autenticata localmente con il modulo Azure PowerShell installato.

New-AzContainerRegistry -ResourceGroupName -Name -EnableAdminUser

Quindi puoi usare il Get-AzContainerRegistry cmdlet per elencare i record associati al tenant. Avrai ancora bisogno del LoginServer Proprietà per inviare l’immagine al registro, ma è possibile estrarla da Azure PowerShell mostrata nel resto della demo.

Utilizzare il cmdlet Get-AzContainerRegistry per elencare i record associati al tenant.

Finché hai incluso il -EnableAdminUser flag, puoi anche usare il Get-AzContainerRegistryCredential cmdlet per ottenere le credenziali di accesso per il passaggio successivo.

Utilizzare il cmdlet Get-AzContainerRegistryCredential per ottenere le credenziali di accesso.

Spingendo l’immagine su ACR

Ora che la registrazione e l’utente sono configurati, è il momento di accedere e inviare loro un’immagine. È possibile accedere utilizzando il docker login Io mando. Se si usa uno script, assicurarsi che le credenziali non vengano visualizzate in testo normale, passandole in quel modo o usando Azure Key Vault.

# Azure PowerShell

$RG_NAME  = 
$ACR_NAME = 

$registry = Get-AzContainerRegistry -ResourceGroupName $RG_NAME -Name $ACR_NAME
$creds = Get-AzContainerRegistryCredential -Registry $registry
$creds.Password | docker login $registry.LoginServer -u $creds.Username --password-stdin

Se lo stai facendo manualmente semplicemente eseguendo docker login e sostituisci “ “Con il valore di” Login Server “nella scheda Chiavi di accesso sopra, quindi nome utente e password dell’amministratore.

Ora che hai effettuato l’accesso, puoi spingere ed estrarre le immagini dal contenitore del repository quanto vuoi. Dopo aver creato o estratto un contenitore localmente, utilizzare il docker tag comando per aggiungere l’URL del record e il tag della versione all’immagine, quindi il docker push comando per inviarlo ad ACR. Dovrebbe assomigliare a qualcosa di simile a questo:

# Docker CLI

docker tag  /:
docker push /:

Con l’immagine in ACR, è possibile utilizzare docker pull da qualsiasi dispositivo autenticato per scaricare l’immagine ed eseguirla.

Utilizzare l'estrazione docker da qualsiasi dispositivo autenticato per estrarre l'immagine ed eseguirla.

Sommario

A questo punto, dovresti avere familiarità con la configurazione di un registro in ACR con Azure Portal o Azure PowerShell e come estrarre ed estrarre i contenitori da esso.

Da qui, è possibile cercare per abilitare la scansione della vulnerabilità del contenitore con il Centro sicurezza di Azure o l’automazione usando le Attività ACR.