Gyakorlat – A lemezkép módosítása és a webalkalmazás ismételt üzembe helyezése
Ebben az egységben konfigurálhatja a folyamatos üzembe helyezést a webalkalmazáshoz, és létrehozhat egy olyan webhookot, amely a Docker-lemezképet tartalmazó regisztrációs adatbázisra hivatkozik. Ezután módosíthatja a webalkalmazás forráskódját, és újraépítheti a lemezképet. Végül megnyithatja a minta-webalkalmazást üzemeltető webhelyet, ahol ellenőrizheti, hogy az a legújabb verziót alkalmazza.
Megjegyzés:
Ebben a gyakorlatban nem hoz létre Azure Container Registry-feladatot. Ehelyett manuálisan újraépíti a mintaalkalmazás Docker-lemezképét. A webhook megnyílik az új Docker-rendszerkép létrehozásakor.
A folyamatos üzembe helyezés konfigurálása és webhook létrehozása
Térjen vissza az Azure Portalra , és válassza ki a webalkalmazást. Megjelenik az App Service panel a webalkalmazáshoz.
A bal oldali menüpanel Üzembe helyezés csoportjában válassza az Üzembe helyezési központ lehetőséget. Megjelenik az Üzembe helyezési központ panel az App Service -hez (webalkalmazáshoz).
A Gépház lap Beállításjegyzék-beállításai csoportjában állítsa be a Folyamatos üzembe helyezés beállítást, majd válassza a Mentés lehetőséget a felső menüsávon. Ezzel a beállítással egy olyan webhookot konfigurál, amellyel a Container Registry értesítheti a webalkalmazást, hogy megváltozott a Docker-lemezkép.
A webalkalmazás frissítése és a webhook tesztelése
Az Azure Cloud Shellben nyissa meg a dotnet/SampleWeb/Pages mappát. Ez a mappa tartalmazza a webalkalmazás által megjelenített HTML-lapok forráskódját.
cd ~/mslearn-deploy-run-container-app-service/dotnet/SampleWeb/Pages
Futtassa az alábbi parancsokat, amelyekkel lecserélheti a webalkalmazás alapértelmezett lapját (Index.cshtml) egy új verziójára, amely egy további elemmel rendelkezik a forgótáron. Ezek a parancsok folyamatos fejlesztést szimulálnak az alkalmazásban, és új lapot adnak hozzá a körhintához.
mv Index.cshtml Index.cshtml.old mv Index.cshtml.new Index.cshtml
Futtassa a következő parancskészletet a webalkalmazás rendszerképének újraépítéséhez és a Container Registrybe való leküldéséhez. Cserélje le a
<container_registry_name>
elemet a tárolójegyzék nevére. Ne felejtsen pontot (.
) tenni a második parancs végére. Várjon, amíg a build befejeződik.cd ~/mslearn-deploy-run-container-app-service/dotnet az acr build --registry <container_registry_name> --image webimage .
Térjen vissza az Azure Portal kezdőlapjára. Válassza ki a tárolóregisztrációs adatbázist a Legutóbbi erőforrások területen. Megjelenik a Tárolóregisztrációs adatbázis ablaktábla.
A bal oldali menüpanel Szolgáltatások csoportjában válassza a Webhookok lehetőséget. Megjelenik a Webhooks panel a tárolóregisztrációs adatbázishoz.
Válassza ki az egyetlen webhookot a listában. Megjelenik a Tárolóregisztrációs adatbázis webhookja .
Figyelje meg a webhook rekordját, amely az imént aktiválódott a buildre és a leküldésre, amelyet futtatott.
A webalkalmazás ismételt tesztelése
Térjen vissza a webalkalmazáshoz a böngészőben. Ha korábban bezárta a lapfület, lépjen az alkalmazás Áttekintés lapjára az Azure Portalon, és válassza a Tallózás lehetőséget. Hidegindítási késést tapasztalhat, amíg a webalkalmazás betölti az új lemezképet a Container Registryből.
Tekintse át a forgótár elemeit. A vezérlő ekkor már négy lapot tartalmaz. Az új oldal a következő képhez hasonlóan néz ki:
A webalkalmazás automatikusan frissült, és újból üzembe lett helyezve az új lemezkép alapján. A regisztrációs adatbázis webhookszolgáltatása értesítette a webalkalmazást, hogy a tárolólemezkép megváltozott, ami frissítést idézett elő.
Az Azure Cloud Shellben nyissa meg a csomópont/útvonalak mappát. Ez a mappa tartalmazza a webalkalmazás által megjelenített lapokat létrehozó forráskódot.
cd ~/mslearn-deploy-run-container-app-service/node/routes
Nyissa meg
index.js
a Cloud Shell-szerkesztőben.code index.js
A szerkesztőben módosítsa a kódot a nézetnek
Express
átadott tulajdonság értékénektitle
módosításáhozMicrosoft Learn
.... res.render('index', { title: 'Microsoft Learn' }); ...
Ha elkészült, mentse a fájlt.
A Cloud Shellben futtassa a következő parancskészletet a webalkalmazás rendszerképének újraépítéséhez, majd a Container Registrybe való leküldéséhez. Cserélje le a
<container_registry_name>
elemet a tárolójegyzék nevére. Ne felejtsen pontot (.
) tenni a második parancs végére. Várjon, amíg a build befejeződik.cd ~/mslearn-deploy-run-container-app-service/node az acr build --registry <container_registry_name> --image webimage .
A bal oldali menüpanel Szolgáltatások csoportjában válassza a Webhookok lehetőséget. A tárolóregisztrációs adatbázis Webhookok paneljén válassza ki az egyetlen webhookot a listában.
Figyelje meg, hogy van egy rekord a webhookról, amely az imént aktiválódott a buildre és a leküldésre.
A webalkalmazás ismételt tesztelése
Térjen vissza a webalkalmazáshoz a böngészőben. Ha korábban bezárta a lapfület, nyissa meg a webalkalmazás Áttekintés lapját az Azure Portalon, és a felső menüsávon válassza a Tallózás lehetőséget. Hidegindítási késést tapasztalhat, amíg a webalkalmazás betölti az új lemezképet a Container Registryből.
Figyelje meg, hogy a lap tartalma úgy módosult, hogy tükrözze a tároló rendszerképének frissítéseit.
A webalkalmazás automatikusan frissült, és újból üzembe lett helyezve az új lemezkép alapján. A regisztrációs adatbázis webhookszolgáltatása értesítette a webalkalmazást, hogy a tárolólemezkép megváltozott, ami frissítést idézett elő.