De containerafbeelding uploaden naar Azure Container Registry

Voltooid

In deze eenheid gebruikt u de Azure Container Registry-service om een containerinstallatiekopieën naar uw Azure-containerregister te pushen. Met Azure Container Registry kunt u containerinstallatiekopieën en artefacten bouwen, opslaan en beheren in een privéregister voor alle typen containerimplementaties. Gebruik Azure-containerregisters met uw bestaande pijplijnen voor containerontwikkeling en -implementatie.

Notitie

Als uw sessie is uitgeschakeld of als u deze stap op een ander moment of vanuit een andere CLI uitvoert, moet u mogelijk uw omgevingsvariabelen opnieuw initialiseren en opnieuw verifiëren met behulp van de volgende opdrachten:

Herstel de resourcevariabelewaarden die in de installatie worden gebruikt. Vervang <your-subscription-ID> hieronder door de id van het abonnement dat u voor deze module hebt gebruikt. Als aanmelding een abonnementskiezer weergeeft, kiest u datzelfde abonnement. Voer de verificatieopdrachten één voor één uit. Controleer az account showdaarna of het actieve abonnement overeenkomt met de installatie voordat u doorgaat. Als een opdracht mislukt, stop dan en los de fout op.

export AZ_RESOURCE_GROUP=java-containerization-demo-rg
export AZ_CONTAINER_REGISTRY=<your-container-registry>
export AZ_KUBERNETES_CLUSTER=java-containerization-demo-aks
export AZ_LOCATION=<your-Azure-region>
export AZ_KUBERNETES_CLUSTER_DNS_PREFIX=<your-unique-DNS-prefix-to-access-your-AKS-cluster>
az login
az account set --subscription "<your-subscription-ID>"
az account show --output table
az acr login --name "$AZ_CONTAINER_REGISTRY"

Een containerimage uploaden

U kunt uw zojuist gemaakte containerinstallatiekopie naar uw Azure-containerregister pushen. Hierdoor bevindt uw containerinstallatiekopieën zich dicht bij al uw Azure-resources, zoals uw AKS-cluster (Azure Kubernetes Service). Later configureert u AKS om de flightbookingsystemsample installatiekopie op te halen uit het register. Gebruik de volgende stappen om de containerinstallatiekopieën naar uw register te pushen:

  1. Gebruik de volgende opdracht om u aan te melden bij Azure Container Registry als u dat nog niet hebt gedaan:

    az acr login
    
  2. Controleer de werkelijke lokale image voordat u tagt of pusht:

    docker image inspect flightbookingsystemsample:latest \
      --format '{{.Os}}/{{.Architecture}}'
    

    Voor dit pad moet het resultaat zijn linux/amd64. Als deze verschilt, bouwt u de installatiekopie opnieuw en voert u deze uit, --platform linux/amd64 zoals beschreven in de vorige les voordat u verdergaat. Taggen en pushen behouden het imageplatform; ze veranderen de eigen architectuur niet.

  3. Gebruik de volgende opdracht om de eerder gemaakte containerinstallatiekopie te taggen met uw Azure-containerregister:

    docker tag flightbookingsystemsample $AZ_CONTAINER_REGISTRY.azurecr.io/flightbookingsystemsample
    
  4. Gebruik de volgende opdracht om de containerinstallatiekopieën naar uw Azure-containerregister te pushen:

    docker push $AZ_CONTAINER_REGISTRY.azurecr.io/flightbookingsystemsample
    
  5. Nadat de push is voltooid, kunt u de metagegevens van de azure-containerregisterinstallatiekopieën van de zojuist gepushte installatiekopieën weergeven met behulp van de volgende opdracht:

    az acr repository show \
        --name $AZ_CONTAINER_REGISTRY \
        --image flightbookingsystemsample:latest
    

De volgende historische metagegevens zijn illustratief. Uw image-digest en tijdstempels kunnen verschillen nadat u de bijgewerkte image hebt gebouwd en gepusht:

{
  "changeableAttributes": {
    "deleteEnabled": true,
    "listEnabled": true,
    "readEnabled": true,
    "writeEnabled": true
  },
  "createdTime": "2024-11-15T12:23:55.5624474Z",
  "digest": "sha256:13851640a3****************************************f7f1e482c6eaa825",
  "lastUpdateTime": "2024-11-15T12:23:55.5624474Z",
  "name": "latest",
  "signed": false
}

Uw containerinstallatiekopieën bevinden zich nu in uw Azure-containerregister en zijn klaar voor implementaties door Azure Services, zoals AKS.