Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
Ez a cikk bemutatja, hogyan helyezheti üzembe a kódot ZIP, WAR, JAR vagy EAR csomagként Azure App Service. Azt is bemutatja, hogyan helyezhet üzembe egyes fájlokat az App Service-ben, az alkalmazáscsomagtól elkülönítve.
Előfeltételek
A cikk lépéseinek elvégzéséhez hozzon létre egy App Service-alkalmazást, vagy használjon egy másik oktatóanyaghoz létrehozott alkalmazást.
Ha nincs Azure fiókja, a kezdés előtt hozzon létre egy felszabadító fiókot.
Projekt ZIP-csomag létrehozása
Fontos
Amikor létrehozza a ZIP-csomagot az üzembe helyezéshez, ne foglalja bele a gyökérkönyvtárat. Csak a fájlokat és könyvtárakat vegye fel a gyökérkönyvtárba. Ha zip-fájlként tölt le egy GitHub-adattárat, nem helyezheti üzembe a fájlt as-is az App Service-ben. GitHub beágyazott könyvtárakat ad hozzá a legfelső szinten, ami nem működik az App Service-ben.
Egy helyi terminálablakban keresse fel az alkalmazásprojekt gyökérkönyvtárát.
Ennek a könyvtárnak tartalmaznia kell a webalkalmazás bejegyzés fájlját, például index.html, index.php és app.js. Olyan csomagkezelési fájlokat is tartalmazhat, mint a project.json, composer.json, package.json, bower.jsonés requirements.txt.
Ha nem szeretné, hogy az App Service üzembe helyezési automatizálást futtasson Önnek, futtassa az összes buildelési feladatot. Például: npm, bower, gulp, composerés pip. Győződjön meg arról, hogy rendelkezik az alkalmazás futtatásához szükséges összes fájllal. Erre a lépésre akkor van szükség, ha közvetlenül szeretné futtatni a csomagot.
Készítsen ZIP-archívumot a projekt minden eleméről. Projektek esetén adjon hozzá mindent a dotnet parancs kimeneti könyvtárában, kivéve magát a kimeneti könyvtárat dotnet publish. Írja be például a következő parancsot a terminálba egy olyan ZIP-csomag létrehozásához, amely tartalmazza az aktuális könyvtár tartalmát:
# Bash
zip -r <file-name>.zip .
# PowerShell
Compress-Archive -Path * -DestinationPath <file-name>.zip
ZIP-csomag üzembe helyezése
ZIP-csomag üzembe helyezésekor az App Service kicsomagolja annak tartalmát az alkalmazás alapértelmezett elérési útján: D:\home\site\wwwroot Windows és /home/site/wwwroot Linux esetén.
Ez a ZIP-csomag üzembe helyezése ugyanazt a Kudu szolgáltatást használja, amely folyamatos integrációs alapú üzembe helyezéseket működtet. A Kudu a következő funkciókat támogatja a ZIP-csomagok üzembe helyezéséhez:
- Az előző üzembe helyezésből hátrahagyott fájlok törlése
- Az alapértelmezett összeállítási folyamat bekapcsolásának lehetősége, amely magában foglalja a csomag-visszaállítást is
- Üzembe helyezés testreszabása, beleértve az üzembehelyezési szkriptek futtatását is
- Telepítési naplók
- 2048 megabájtos csomagméretkorlát
Megjegyzés
A ZIP-csomagban lévő fájlok csak akkor lesznek másolva, ha az időbélyegeik nem egyeznek a már üzembe helyezett fájlokkal.
Üzembe helyezés ZIP üzembe helyezési felhasználói felülettel a Kuduban
- Nyissa meg az alkalmazást a Azure portálon, és válassza a Development Tools>Advanced Tools, majd a Go lehetőséget.
- A Kuduban válassza aZip Push Deploy>.
- Töltse fel a projekt ZIP-csomag létrehozása szolgáltatásban létrehozott ZIP-csomagot. Húzza a weblap fájlkezelő területére.
Ha az üzembe helyezés folyamatban van, a jobb felső sarokban látható ikon megjeleníti az előrehaladás százalékos arányát. A lapon a Fájlkezelő terület alatti művelet üzenetei is megjelennek. Amikor az üzembe helyezés befejeződik, az utolsó üzenetnek a következőt kell mondania: "Sikeres üzembe helyezés".
Ez a végpont jelenleg nem működik az „App Service on Linux” esetén. Fontolja meg inkább az FTP vagy a ZIP üzembe helyezési API használatát.
Üzembe helyezés Kudu felületen ZIP üzembe helyezési funkció használata nélkül
Zip-csomag üzembe helyezése a webalkalmazásban a az webapp deploy parancs használatával. A CLI-parancs a Kudu publish API használatával telepíti a fájlokat, és teljes mértékben testre szabható.
Az alábbi példa egy ZIP-csomagot küld a webhelyére. Adja meg a --src-path helyi ZIP-csomag elérési útját.
az webapp deploy --resource-group <group-name> --name <app-name> --src-path <zip-package-path>
Ez a parancs újraindítja az alkalmazást a ZIP-csomag üzembe helyezése után.
Automatizált build engedélyezése ZIP telepítéshez
Alapértelmezés szerint az üzembehelyezési motor feltételezi, hogy egy ZIP-csomag készen áll a futtatásra, és nem futtat semmilyen buildautomatizálást. A Git-környezetekben használt buildautomatizálás engedélyezéséhez állítsa be az SCM_DO_BUILD_DURING_DEPLOYMENT alkalmazásbeállítást. Futtassa a következő parancsot Azure Cloud Shell:
az webapp config appsettings set --resource-group <group-name> --name <app-name> --settings SCM_DO_BUILD_DURING_DEPLOYMENT=true
További információt a Kudu dokumentációjában talál.
WAR-, JAR- vagy EAR-csomagok üzembe helyezése
A WAR, JAR vagy EAR csomagot az App Service-ben telepítheti a Java webalkalmazás futtatásához a Azure CLI, a PowerShell vagy a Kudu publish API használatával.
Az itt látható üzembe helyezési folyamat az alkalmazás tartalommegosztására helyezi a csomagot a megfelelő elnevezési konvencióval és címtárstruktúrával. További információ: Kudu publish API reference. Ezt a megközelítést javasoljuk. Ha WAR-, JAR- vagy EAR-csomagokat FTP vagy Web Deploy használatával helyez üzembe ahelyett, hogy más módszert választana, az elnevezés vagy a struktúra hibái miatt ismeretlen hibák fordulhatnak elő.
A parancs használatával helyezzen üzembe egy WAR-csomagot a Tomcat vagy a az webapp deploy JBoss EAP-ben. Adja meg a --src-path helyi Java csomagjának elérési útját.
az webapp deploy --resource-group <group-name> --name <app-name> --src-path ./<package-name>.war
A CLI-parancs a Kudu publish API használatával telepíti a csomagot, és teljes mértékben testre szabható.
Egyedi fájlok üzembe helyezése
Üzembe helyezhet egy indítási szkriptet, tárat és statikus fájlt a webalkalmazásban a az webapp deploy paraméterrel rendelkező --type paranccsal.
Ha így helyez üzembe egy indítási szkriptet, az App Service automatikusan a szkript használatával indítja el az alkalmazást.
A CLI-parancs a Kudu publish API használatával telepíti a fájlokat. A parancs teljesen testre szabható.
Indítási szkript üzembe helyezése
az webapp deploy --resource-group <group-name> --name <app-name> --src-path scripts/startup.sh --type=startup
Könyvtárfájl üzembe helyezése
az webapp deploy --resource-group <group-name> --name <app-name> --src-path driver.jar --type=lib
Statikus fájl üzembe helyezése
az webapp deploy --resource-group <group-name> --name <app-name> --src-path config.json --type=static
Hálózati biztonságú alkalmazásokra való üzembe helyezés
A webalkalmazás hálózati konfigurációjától függően előfordulhat, hogy a fejlesztési környezetből közvetlenül nem érhető el az alkalmazás. (Lásd: Üzembe helyezés a hálózat által védett helyeken és üzembe helyezés a hálózat által védett helyeken, 2. rész.) Ahelyett, hogy közvetlenül a webalkalmazásba küldi a csomagot vagy a fájlt, közzéteheti egy olyan tárolórendszerben, amely elérhető a webalkalmazásból, és aktiválhatja az alkalmazást, hogy lekérje a ZIP-t a tárolási helyről.
A távoli URL-cím bármilyen nyilvánosan elérhető hely lehet, de a legjobb, ha egy blobtárolót használ közös hozzáférésű jogosultságkóddal (SAS) a védelemhez.
Használja a az webapp deploy parancsot, mint a többi szakaszban, de --src-url -t használjon --src-path helyett. Az alábbi példa a --src-url paraméterrel adja meg egy Azure Storage-fiókban üzemeltetett ZIP-fájl URL-címét.
az webapp deploy --resource-group <group-name> --name <app-name> --src-url "https://storagesample.blob.core.windows.net/sample-container/myapp.zip?sv=2021-10-01&sb&sig=slk22f3UrS823n4kSh8Skjpa7Naj4CG3 --type zip
Kudu API közzétételi referencia
A publish Kudu API lehetővé teszi, hogy ugyanazokat a paramétereket adja meg a CLI-parancsból, mint az URL-lekérdezési paraméterek. A Kudu REST API-val való hitelesítéshez jogkivonat-hitelesítést javasoljuk, de az alkalmazás üzembehelyezési hitelesítő adataival is használhat alapszintű hitelesítést.
Az alábbi táblázat az elérhető lekérdezési paramétereket, azok engedélyezett értékeit és leírását mutatja be.
| Kulcs | Megengedett értékek | Leírás | Kötelező | Típus |
|---|---|---|---|---|
type |
war|jar|ear|lib|startup|static|zip |
Ez a telepített artefaktum típusa. Beállítja az alapértelmezett célelérési utat, és tájékoztatja a webalkalmazást az üzembe helyezés kezeléséről. type=zip: ZIP-csomag üzembe helyezése a tartalom /home/site/wwwroot könyvtárba való kicsomagolásával.
path paraméter megadása nem kötelező. type=war: WAR-csomag üzembe helyezése. A WAR-csomag alapértelmezés szerint a /home/site/wwwroot/app.war területre van telepítve. A cél elérési útja megadható a következővel path: . type=jar: JAR-csomag üzembe helyezése a /home/site/wwwroot/app.jar A path paraméter figyelmen kívül lesz hagyva. type=ear: EAR-csomag üzembe helyezése ide /home/site/wwwroot/app.ear. A path paraméter figyelmen kívül lesz hagyva. type=lib: JAR-kódtárfájl üzembe helyezése. Alapértelmezés szerint a fájl a következőre van üzembe helyezve: /home/site/libs. A cél elérési útja megadható a következővel path: . type=static: Statikus fájl, például szkript üzembe helyezése. Alapértelmezés szerint a fájl a következőre van üzembe helyezve: /home/site/wwwroot. type=startup: Helyezzen üzembe egy szkriptet, amelyet az App Service automatikusan használ az alkalmazás indítási szkriptjeként. Alapértelmezés szerint a szkript D:\home\site\scripts\<name-of-source> Windows és home/site/wwwroot/startup.sh linuxos környezetben van üzembe helyezve. A cél elérési útja megadható a következővel path: . |
Igen | Sztring |
restart |
true|false |
Alapértelmezés szerint az API újraindítja az alkalmazást az üzembe helyezési művelet (restart=true) után. Ha több összetevőt helyez üzembe, az utolsót kivéve minden üzembe helyezésnél megakadályozhatja az újraindulásokat a restart=false beállításával. |
Nem | logikai |
clean |
true|false |
Meghatározza, hogy törölje-e a célkörnyezetet, mielőtt az artefaktumot oda telepítené. | Nem | logikai |
ignorestack |
true|false |
A közzétételi API a WEBSITE_STACK környezeti változóval választja ki a biztonságos alapértelmezett értékeket a webhely nyelvi veremétől függően. Ha ezt a paramétert úgy állítja be, hogy false letiltsa a nyelvspecifikus alapértelmezett beállításokat. |
Nem | logikai |
path |
Abszolút elérési út | Az artefaktum üzembe helyezésének abszolút elérési útja. Például, /home/site/deployments/tools/driver.jar vagy /home/site/scripts/helper.sh. |
Nem | Sztring |
Kapcsolódó tartalom
A fejlettebb üzembe helyezési forgatókönyvekért próbálja meg a Git-tel az Azure-ba történő telepítést. A Git-alapú üzembe helyezés Azure lehetővé teszi a verziókövetést, a csomag-visszaállítást, az MSBuildet és egyebeket.