Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
Met Azure Container Instances kunt u Docker-containers implementeren in de Azure-infrastructuur zonder virtuele machines in te richten of een service op een hoger niveau te gebruiken. In deze handleiding plaats je een kleine Node.js webtoepassing in een containerimage die kan worden uitgevoerd met behulp van Azure Container Instances.
In dit artikel, deel één van de reeks, gaat u als volgt te werk:
- Broncode van toepassing klonen vanuit GitHub
- Een containerafbeelding maken vanuit de applicatiebron
- De afbeelding testen in een lokale Docker-omgeving
In tutorial onderdelen twee en drie, uploadt u uw image naar Azure Container Registry en implementeert u deze vervolgens naar Azure Container Instances.
Voordat u begint
U moet voldoen aan de volgende vereisten om deze zelfstudie te voltooien:
Azure CLI: U moet Azure CLI versie 2.0.29 of hoger hebben geïnstalleerd op uw lokale computer. Voer az --version uit om de versie te vinden. Raadpleeg Azure CLI installeren als u de Azure CLI moet installeren of upgraden.
Docker: In deze zelfstudie wordt ervan uitgegaan dat u basiskennis hebt van Docker-kernconcepten, zoals containers, containerimages en basisopdrachtendocker. Zie het Docker-overzicht voor een inleiding tot de basisprincipes van Docker en containers.
Docker: Als u deze zelfstudie wilt voltooien, moet Docker lokaal zijn geïnstalleerd. Docker biedt pakketten waarmee de Docker-omgeving op MacOS, Windows en Linux kan worden geconfigureerd.
Important
Omdat de Azure Cloud Shell de Docker-daemon niet bevat, moet u zowel de Azure CLI als docker-engine op uw lokale computer installeren om deze zelfstudie te voltooien. U kunt de Azure Cloud Shell niet gebruiken voor deze zelfstudie.
Toepassingscode ophalen
De voorbeeldtoepassing in deze zelfstudie is een eenvoudige web-app die is gebouwd in Node.js. De toepassing fungeert voor een statische HTML-pagina en ziet er ongeveer als volgt uit:
Gebruik Git om de opslagplaats van de voorbeeldtoepassing te klonen:
git clone https://github.com/Azure-Samples/aci-helloworld.git
U kunt het ZIP-archief ook rechtstreeks downloaden vanuit GitHub.
De containerafbeelding bouwen
Het Dockerfile in de voorbeeldtoepassing laat zien hoe de container is gebouwd. Het begint met een officiële Node.js installatiekopieën op basis van Alpine Linux, een kleine distributie die geschikt is voor gebruik met containers. Vervolgens worden de toepassingsbestanden gekopieerd naar de container, worden afhankelijkheden geïnstalleerd met behulp van Node Package Manager en wordt de toepassing ten slotte gestart.
FROM node:8.9.3-alpine
RUN mkdir -p /usr/src/app
COPY ./app/* /usr/src/app/
WORKDIR /usr/src/app
RUN npm install
CMD node /usr/src/app/index.js
Gebruik de docker build opdracht om de containerafbeelding te maken en deze als aci-tutorial-app te taggen.
docker build ./aci-helloworld -t aci-tutorial-app
Uitvoer van de docker-buildopdracht is vergelijkbaar met het volgende (afgekapt voor leesbaarheid):
docker build ./aci-helloworld -t aci-tutorial-app
Sending build context to Docker daemon 119.3kB
Step 1/6 : FROM node:8.9.3-alpine
8.9.3-alpine: Pulling from library/node
88286f41530e: Pull complete
84f3a4bf8410: Pull complete
d0d9b2214720: Pull complete
Digest: sha256:c73277ccc763752b42bb2400d1aaecb4e3d32e3a9dbedd0e49885c71bea07354
Status: Downloaded newer image for node:8.9.3-alpine
---> 90f5ee24bee2
...
Step 6/6 : CMD node /usr/src/app/index.js
---> Running in f4a1ea099eec
---> 6edad76d09e9
Removing intermediate container f4a1ea099eec
Successfully built 6edad76d09e9
Successfully tagged aci-tutorial-app:latest
Gebruik de docker images opdracht om de gebouwde image te bekijken.
docker images
De zojuist gemaakte image moet worden weergegeven in de lijst:
docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
aci-tutorial-app latest 5c745774dfa9 39 seconds ago 68.1 MB
De container lokaal uitvoeren
Voordat u de container implementeert in Azure Container Instances, gebruikt u Docker run om deze lokaal uit te voeren en te bevestigen dat deze werkt. De -d switch laat de container op de achtergrond draaien, terwijl -p u een willekeurige poort op uw computer kunt koppelen aan poort 80 in de container.
docker run -d -p 8080:80 aci-tutorial-app
De uitvoer van de docker run opdracht geeft de id van de actieve container weer als de opdracht is geslaagd:
docker run -d -p 8080:80 aci-tutorial-app
```output
a2e3e4435db58ab0c664ce521854c2e1a1bda88c9cf2fcff46aedf48df86cccf
Navigeer nu in uw browser naar http://localhost:8080 om te bevestigen dat de container actief is. Als het goed is, ziet u een webpagina die lijkt op de volgende schermopname.
Volgende stappen
In deze zelfstudie hebt u een containerinstallatiekopie gemaakt die kan worden geïmplementeerd in Azure Container Instances en hebt u gecontroleerd of deze lokaal wordt uitgevoerd. Tot nu toe hebt u de volgende stappen uitgevoerd:
- De toepassingsbron gekloond vanuit GitHub
- Een containerimage gemaakt vanuit de toepassingsbron
- De container lokaal getest
Ga naar de volgende zelfstudie in de reeks voor meer informatie over het opslaan van uw containerinstallatiekopieën in Azure Container Registry: