Oktatóanyag: Tárolórendszerkép létrehozása az Azure Container Instancesben való üzembe helyezéshez
Az Azure Container Instances lehetővé teszi Docker-tárolók üzembe helyezését az Azure-infrastruktúrában anélkül, hogy ehhez virtuális gépeket kellene üzembe helyeznie vagy magasabb szintű szolgáltatást kellene alkalmaznia. Ebben az oktatóanyagban egy kisméretű Node.js-webalkalmazást csomagolunk egy, az Azure Container Instances használatával futtatható tárolórendszerképbe.
A cikk, amely a sorozat első része, a következő lépésekből áll:
- Alkalmazás forráskódjának klónozása a GitHubról
- Tárolórendszerkép létrehozása az alkalmazás forrásából
- A rendszerkép tesztelése helyi Docker-környezetben
Az oktatóanyag második és harmadik részében feltöltjük a rendszerképet az Azure Container Registrybe, majd üzembe helyezzük az Azure Container Instancesben.
Mielőtt elkezdené
Az oktatóanyag teljesítéséhez a következők szükségesek:
Azure CLI: Az Azure CLI 2.0.29-es vagy újabb verziójának telepítve kell lennie a helyi számítógépen. A verzió azonosításához futtassa a következőt: az --version
. Ha telepíteni vagy frissíteni szeretne, olvassa el az Azure CLI telepítését ismertető cikket.
Docker: Az oktatóanyag feltételezi, hogy rendelkezik a Docker fő fogalmaira, például a tárolókra, tárolórendszerképekre és az alapszintű docker
-parancsokra vonatkozó alapvető ismeretekkel. A Docker és a tárolók alapszintű ismertetéséért lásd a Docker felhasználói útmutatóját.
Docker: Az oktatóanyag elvégzéséhez helyileg kell telepítenie a Dockert. A Docker csomagokat biztosít a Docker-környezet konfigurálásához macOS, Windows és Linux rendszereken.
Fontos
Mivel az Azure Cloud Shell nem tartalmazza a Docker-démont, ezért az oktatóanyag teljesítéséhez telepíteni kell a helyi számítógépen az Azure CLI-t és a Docker Engine-t. Ehhez az oktatóanyaghoz nem használható az Azure Cloud Shell.
Az alkalmazáskód letöltése
Az oktatóanyagban szereplő mintaalkalmazás egy, a Node.js használatával létrehozott egyszerű webalkalmazás. Az alkalmazás egy statikus HTML-oldalt szolgál ki, és a következő képernyőképen láthatóakhoz hasonló:
A Git használatával klónozza a mintaalkalmazás adattárát:
git clone https://github.com/Azure-Samples/aci-helloworld.git
Közvetlenül a GitHubról is letöltheti a ZIP-archívumot.
Építse fel a tárolórendszerképet
A mintaalkalmazásban szereplő Dockerfile bemutatja a tároló összeállításának menetét. Egy hivatalos Node.js-rendszerképpel indul, amely az Alpine Linux rendszeren alapul – ez egy kisebb kiadás, amely jól használható a tárolókkal. Ezután bemásolja az alkalmazásfájlokat a tárolóba, telepíti a függőségeket a Node Package Managerrel, végül pedig elindítja az alkalmazást.
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
A docker build paranccsal hozza létre a tárolórendszerképet, és lássa el az aci-tutorial-app címkével:
docker build ./aci-helloworld -t aci-tutorial-app
A docker build parancs kimenete a következőhöz hasonló (az olvashatóság érdekében csonkolva):
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
A docker images paranccsal megtekintheti az összeállított rendszerképet:
docker images
Az újonnan létrehozott rendszerképnek meg kell jelennie a listán:
docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
aci-tutorial-app latest 5c745774dfa9 39 seconds ago 68.1 MB
Futtassa helyileg a tárolót
Mielőtt megpróbálná üzembe helyezni a tárolót az Azure Container Instancesben, futtassa helyileg a docker run paranccsal, hogy ellenőrizze a működését. A -d
kapcsolóval a tároló a háttérben működtethető, míg a -p
kapcsolóval leképezheti a számítógép egy tetszőleges portját a tároló 80-as portjára.
docker run -d -p 8080:80 aci-tutorial-app
Ha a parancs sikeres volt, a docker run
parancs kimenete megjeleníti a futó tároló azonosítóját:
docker run -d -p 8080:80 aci-tutorial-app
```output
a2e3e4435db58ab0c664ce521854c2e1a1bda88c9cf2fcff46aedf48df86cccf
Ezután lépjen a http://localhost:8080
címre a böngészőben, hogy ellenőrizze, a tároló fut-e. A következőhöz hasonló webhely jelenik meg:
Következő lépések
Az oktatóanyagban egy, az Azure Container Instancesben üzembe helyezhető tárolórendszerképet hozott létre, és ellenőrizte, hogy helyben fut-e. Eddig a következőket hajtotta végre:
- Az alkalmazás forrásának klónozása a GitHubról
- Tárolórendszerkép létrehozása az alkalmazás forrásából
- A tároló helyi tesztelése
Folytassa a sorozat következő oktatóanyagával, amelyben a tárolórendszerkép az Azure Container Registryben való tárolását ismerheti meg: