Komma Igång med Azure Behållare Registret

0
47

I utveckling av programvara, det verkar som att oavsett var du befinner dig, oavsett vem du pratar med, behållare är det nya normala. Om du inte utveckla dem eller migrera din ansökan redan, du håller på att bygga stödjande system att använda dem för att stödja en äldre ansökan. Behållare finns överallt.

Detta innebär dock att som ingenjör, du kommer att behöva sätta din behållare någonstans. I gamla dagar, detta innebar att bygga en artefakt av något slag, oavsett om en binär eller ett arkiv, och sedan skriva det till en skiva eller en fil dela och distribuera den. I behållaren ekosystem, det kommer att vara en behållare registret, och de artefakter som bygger du kommer att vara behållare bilder.

Idealiskt, en behållare registret skulle vara någonstans säkra på att kunna automatisera en del av jobbet åt dig, till exempel container-scanning och utlösa åtgärder på varje begå eller på ett schema. Lyckligtvis, Azure har du täckt med alla ovanstående med Azure Container-Registret, eller ACR för kort.

Förutsättningar

Att följa med, du behöver följande:

  • En Azure-Konto
  • En container för att driva och dra från arkivet
  • (Valfritt) Ett PowerShell-terminal som är autentiserad till Azure eller en CloudShell exempel

Behållaren behöver inte vara något mer än hej-världen eftersom detta är en handledning om behållaren register, inte behållare själva. Om du inte är bekant med Docker eller behållare, kan du lära dig mer om dem här.

Skapa Registret

Det första du behöver göra är att skapa ett register, först med hjälp av Azure-Portalen, och sedan med hjälp av Azure PowerShell.

Med hjälp av Portalen

Gå till “Skapa En Resurs” och sedan titta under Containrar > Behållare Registret.

Du kommer då att bli ombedd att fylla i lite information om vilka lagring-konto och prenumeration på att sätta den i registret. Det anses vara en god praxis att sätta registret i samma region som du kommer att vara utbyggnaden av containrar.

När det är anskaffade, gå till resurs sidan och leta efter “Access Keys” – fliken. Från här, se till att aktivera “Admin Användarnamn” så att du kan logga in med CLI senare.

Med Hjälp Av Azure PowerShell

Med Azure PowerShell, detta är gjort med en linje, antingen på en CloudShell instans eller ett lokalt autentiserade PowerShell-konsol med Azure PowerShell-modul installerad.

Ny-AzContainerRegistry -ResourceGroupName <Resource Group Name> Namn <Register-Name> -EnableAdminUser

Du kan sedan använda Get-AzContainerRegistry cmdlet för att lista de register i samband med din hyresgäst. Du kommer fortfarande att behöva LoginServer fastigheten för att driva din bild till registret, men du kan dra det från Azure PowerShell som visas i resten av demo.

Så länge som du inkluderat -EnableAdminUser flagga, du kommer också att kunna använda Get-AzContainerRegistryCredential cmdlet för att få inloggningsuppgifter för nästa steg.

Trycka på Bilden för att ACR

Nu när registret och användaren för att det sätts upp, är det dags att logga in och tryck in en bild på den. Du kan logga in med hjälp av docker logga in kommandot. Om du använder ett skript, se till att referenserna visas inte i klartext, genom att skicka dem som denna, eller med hjälp av Azure Nyckeln Vault.

# Azure PowerShell

$RG_NAME = <Resource_Group_Name>
$ACR_NAME = <Registry_Name>

$registry = Get-AzContainerRegistry -ResourceGroupName $RG_NAME -Namn $ACR_NAME
$creds = Get-AzContainerRegistryCredential -Registret $registret
$creds.Lösenord | docker logga in $registret.LoginServer -u $creds.Användarnamn-lösenord-stdin

Om du gör det manuellt, så är det bara att köra docker logga in <RegistryURL> och ersätta “<RegistryURL> “med värdet från “Logga in “Server” under snabbtangenter fliken från tidigare, då admin användarnamn och lösenord.

Nu när du är inloggad, kan du trycka och dra container bilder från arkivet så mycket som du vill. När du har byggt eller dras en behållare lokalt, använda docker tag kommandot för att lägga till i registret för URL och version tag till bilden, då docker tryck kommandot för att driva det till ACR. Det bör se ut ungefär så här:

# Docker CLI

docker taggen <Image_Name> <Registry_URL>/<Image_Name>:<Version_Tag>
docker tryck <Registry_URL>/<Image_Name>:<Version_Tag>

Med den bilden i ACR, kan du använda docker dra från alla autentiserade enheten för att dra bilden ner och köra det.

Sammanfattning

Nu, bör du vara bekant med hur man ställer upp ett register i ACR hjälp av Azure-portalen eller Azure PowerShell, så väl som hur att driva och dra behållare från det.

Här kan du titta på aktivera Behållare sårbarhet scanning med Azure Security Center eller automatisering med ACR Uppgifter.