Übung – Erstellen von Containerimages mithilfe von Azure Container Registry Tasks

Abgeschlossen

Erstellen eines Containerimages mithilfe von Azure Container Registry Tasks

Verwenden Sie eine Dockerfile-Datei, um Buildanweisungen bereitzustellen. Mit Azure Container Registry Tasks können Sie alle derzeit in Ihrer Umgebung verfügbaren Dockerfiles wiederverwenden, mehrstufige Builds eingeschlossen. In diesem Beispiel erstellen Sie eine neue Dockerfile-Datei, die eine Node.js-Anwendung erstellt.

  1. Öffnen Sie den Cloud Shell-Editor, und erstellen Sie mithilfe des Befehls code eine neue Datei namens Dockerfile.

    code Dockerfile
    
  2. Fügen Sie den folgenden Dockerfile-Inhalt in die Datei ein.

    Diese Dockerfile-Datei verwendet das Image node:9-alpine als Basisimage. Anschließend werden dem Image die Node.js-Anwendungsdateien hinzugefügt und die Anwendungsabhängigkeiten installiert. Abschließend wird der Container so konfiguriert, dass er die Anwendung über die Anweisung EXPOSE auf Port 80 bereitstellt.

    FROM    node:9-alpine
    ADD     https://raw.githubusercontent.com/Azure-Samples/acr-build-helloworld-node/master/package.json /
    ADD     https://raw.githubusercontent.com/Azure-Samples/acr-build-helloworld-node/master/server.js /
    RUN     npm install
    EXPOSE  80
    CMD     ["node", "server.js"]
    
  3. Speichern Sie die Datei, und schließen Sie den Editor.

  4. Erstellen Sie das Containerimage mithilfe des Befehls az acr build aus der Dockerfile-Datei.

    Hinweis

    Stellen Sie sicher, dass Sie den Punkt (.) am Ende des Befehls hinzufügen. Er stellt das Quellverzeichnis dar, das die Dockerfile-Datei enthält. Da Sie den Namen einer Datei nicht mit dem Parameter --file angegeben haben, sucht der Befehl im aktuellen Verzeichnis nach einer Datei mit dem Namen Dockerfile.

    az acr build --registry $ACR_NAME --image helloacrtasks:v1 .
    
  5. Stellen Sie mithilfe des Befehls az acr repository list sicher, dass das Image in der Registrierung erstellt und gespeichert wurde.

    az acr repository list --name $ACR_NAME --output table
    

    Ihre Ausgabe sollte in etwa dem folgendem Beispiel entsprechen:

    Result
    -------------
    helloacrtasks