Oktatóanyag: Alkalmazás előkészítése az Azure Kubernetes Service (AKS) szolgáltatáshoz
Ebben az oktatóanyagban, amely a hét első része, egy többtárolós alkalmazást készít elő a Kubernetesben való használatra. A meglévő fejlesztői eszközök, például a Docker Compose használatával helyileg hozhatja létre és tesztelheti az alkalmazást. Az alábbiak végrehajtásának módját ismerheti meg:
- Mintaalkalmazás forrásának klónozása a GitHubról
- Tárolórendszerkép létrehozása a mintaalkalmazás forrásából
- A többtárolós alkalmazás tesztelése helyi Docker-környezetben
Miután végzett ezzel, az alábbi alkalmazás a helyi fejlesztői környezetben fut majd.
A későbbi oktatóanyagokban feltölti a tárolórendszerképet egy Azure Container Registry (ACR), majd üzembe helyezi azt egy AKS-fürtön.
Előkészületek
Az oktatóanyag feltételezi, hogy rendelkezik a Docker fő fogalmaira, például a tárolókra, tárolórendszerképekre és a docker
-parancsokra vonatkozó alapvető ismeretekkel. A tárolókkal kapcsolatos alapfogalmakért tekintse meg a Docker használatának első lépéseivel foglalkozó témakört.
Az oktatóanyag elvégzéséhez szüksége lesz egy Linuxos tárolókat futtató helyi Docker fejlesztési környezetre. A Docker csomagokat biztosít, amelyekkel a Docker Mac, Windows vagy Linux rendszereken konfigurálható.
Megjegyzés
Az Azure Cloud Shell nem tartalmazza a jelen oktatóanyagok lépéseinek elvégzéséhez szükséges Docker-összetevőket. Ezért ajánlott egy teljes Docker fejlesztési környezet használata.
Az alkalmazáskód letöltése
Az oktatóanyagban használt mintaalkalmazás egy alapszintű szavazóalkalmazás, amely egy előtér-webösszetevőből és egy háttérbeli Redis-példányból áll. A webes összetevő egy egyéni tárolórendszerképbe van csomagolva. A Redis-példány a Docker Hubról származó, módosítatlan rendszerképet használ.
A git használatával klónozza a mintaalkalmazást a fejlesztői környezetbe.
git clone https://github.com/Azure-Samples/azure-voting-app-redis.git
Váltson át a klónozott könyvtárra.
cd azure-voting-app-redis
A könyvtár tartalmazza az alkalmazás forráskódját, egy előre létrehozott Docker-levélírási fájlt és egy Kubernetes-jegyzékfájlt. Ezeket a fájlokat használjuk az oktatóanyagokban. A könyvtár tartalma és szerkezete a következő:
azure-voting-app-redis
│ azure-vote-all-in-one-redis.yaml
│ docker-compose.yaml
│ LICENSE
│ README.md
│
├───azure-vote
│ │ app_init.supervisord.conf
│ │ Dockerfile
│ │ Dockerfile-for-app-service
│ │ sshd_config
│ │
│ └───azure-vote
│ │ config_file.cfg
│ │ main.py
│ │
│ ├───static
│ │ default.css
│ │
│ └───templates
│ index.html
│
└───jenkins-tutorial
config-jenkins.sh
deploy-jenkins-vm.sh
Tárolórendszerképek létrehozása
A Docker Compose segítségével automatizálhatja a tárolórendszerképek összeállítását és a többtárolós alkalmazások üzembe helyezését.
A következő parancs a mintafájlt docker-compose.yaml
használja a tárolórendszerkép létrehozásához, a Redis-lemezkép letöltéséhez és az alkalmazás elindításához.
docker-compose up -d
Ha elkészült, a docker images
paranccsal tekintse meg a létrehozott képeket. A rendszer három képet tölt le vagy hoz létre. Az azure-vote-front rendszerkép tartalmazza az előtér-alkalmazást, és az nginx-flask rendszerképet használja alapként. A Redis-rendszerkép egy Redis-példány elindítására szolgál.
$ docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
mcr.microsoft.com/azuredocs/azure-vote-front v1 84b41c268ad9 9 seconds ago 944MB
mcr.microsoft.com/oss/bitnami/redis 6.0.8 3a54a920bb6c 2 days ago 103MB
tiangolo/uwsgi-nginx-flask python3.6 a16ce562e863 6 weeks ago 944MB
Futtassa a docker ps
parancsot a futó tárolók megtekintéséhez.
$ docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
d10e5244f237 mcr.microsoft.com/azuredocs/azure-vote-front:v1 "/entrypoint.sh /sta…" 3 minutes ago Up 3 minutes 443/tcp, 0.0.0.0:8080->80/tcp azure-vote-front
21574cb38c1f mcr.microsoft.com/oss/bitnami/redis:6.0.8 "/opt/bitnami/script…" 3 minutes ago Up 3 minutes 0.0.0.0:6379->6379/tcp azure-vote-back
Az alkalmazás helyi tesztelése
A futó alkalmazás megtekintéséhez nyissa meg http://localhost:8080
a következőt egy helyi webböngészőben. A mintaalkalmazás betöltődik az alábbi példában látható módon:
Az erőforrások eltávolítása
Most, hogy az alkalmazás működésének ellenőrzése megtörtént, a futó tárolók leállíthatók és eltávolíthatók. Ne törölje a tárolórendszerképeket – a következő oktatóanyagban feltölti az azure-vote-front rendszerképet egy ACR-példányba.
A tárolópéldányok és -erőforrások leállításához és eltávolításához használja a docker-compose down
parancsot.
docker-compose down
A helyi alkalmazás eltávolítása után rendelkezik egy Docker-rendszerképpel, amely tartalmazza az Azure Vote alkalmazást( azure-vote-front), amelyet a következő oktatóanyagban használni fog.
Következő lépések
Ebben az oktatóanyagban létrehozott egy mintaalkalmazást, létrehozott egy tárolórendszerképeket az alkalmazáshoz, majd tesztelte az alkalmazást. Megtanulta végrehajtani az alábbi műveleteket:
- Mintaalkalmazás forrásának klónozása a GitHubról
- Tárolórendszerkép létrehozása a mintaalkalmazás forrásából
- A többtárolós alkalmazás tesztelése helyi Docker-környezetben
A következő oktatóanyagban megtudhatja, hogyan tárolhat tárolólemezképeket egy ACR-ben.