Gyakorlat – Webalkalmazás üzembe helyezése az Azure App Service-ben

Befejeződött

Ebben az egységben üzembe helyezi a Java Tomcat-webalkalmazást az Azure App Service-ben.

Maven bővítmény az Azure App Service-hez

A Microsoft az Azure App Service-hez készült Maven beépülő modult biztosítja, hogy a Java-fejlesztők könnyebben üzembe helyezhessenek alkalmazásokat az Azure-ban. Ezzel a beépülő modullal egyszerűen konfigurálhatja és üzembe helyezheti az alkalmazást az Azure-ban. A következő szakaszokban ismertetett lépésekkel konfigurálhatja a beépülő modult, lefordíthatja a forráskódot, és üzembe helyezheti az alkalmazást.

A Maven beépülő modul konfigurálása az Azure App Service-hez

Az Azure App Service Maven beépülő moduljának konfigurálásához kövesse az alábbi lépéseket:

  1. Kezdje el a konfigurációt a következő paranccsal:

    mvn com.microsoft.azure:azure-webapp-maven-plugin:2.10.0:config
    
  2. A parancs használata után néhány kérdés megjelenik a parancssorban, így különböző beállításokat konfigurálhat. Konfigurálja a beállításokat és az értékeket az alábbi táblázatban szereplő információk szerint:

    Cikk Bemeneti érték
    Előfizetés Válassza ki az Azure-előfizetését.
    Az operációs rendszer értékének meghatározása Linux
    A tarifacsomag értékének meghatározása B1
    Java-verzió értékének meghatározása Java 21
    Határozza meg a futtatás közbeni verem értékét. TOMCAT 10.0
    Megerősítés (Y/N) Y

    A beállítások konfigurálása után a következő kimenet jellemző:

    mvn com.microsoft.azure:azure-webapp-maven-plugin:2.10.0:config
    [INFO] Scanning for projects...
    [INFO]
    [INFO] -------------------< com.example:simple-tomcat-app >--------------------
    [INFO] Building simple-tomcat-app 1.0-SNAPSHOT
    [INFO]   from pom.xml
    [INFO] --------------------------------[ war ]---------------------------------
    [INFO]
    [INFO] --- azure-webapp:2.10.0:config (default-cli) @ simple-tomcat-app ---
    Downloading from central: https://repo.maven.apache.org/maven2/net/minidev/json-smart/maven-metadata.xml
    Downloading from ossrh: https://oss.sonatype.org/content/repositories/snapshots/net/minidev/json-smart/maven-metadata.xml
    Downloading from shibboleth-repo: https://build.shibboleth.net/nexus/content/repositories/releases/net/minidev/json-smart/maven-metadata.xml
    Downloaded from central: https://repo.maven.apache.org/maven2/net/minidev/json-smart/maven-metadata.xml (1.3 kB at 6.3 kB/s)
    Please choose which part to config [Application]:
    * 1: Application
      2: Runtime
      3: DeploymentSlot
    Enter your choice: 1
    Define value for appName [simple-tomcat-app]: tomcatmavendemo
    Define value for resourceGroup [tomcatmavendemo-rg]: MyResourceGroup
    Define value for region [{azure.region}]: centralus
    Define value for pricingTier [B1]:
    *  1: B1
       2: B2
       3: B3
       4: D1
       5: EP1
       6: EP2
       7: EP3
       8: F1
       9: P1v2
      10: P1v3
      11: P2v2
      12: P2v3
      13: P3v2
      14: P3v3
      15: S1
      16: S2
      17: S3
      18: Y1
    Enter your choice: 1
    Please confirm webapp properties
    AppName : tomcatmavendemo
    ResourceGroup : MyResourceGroup
    Region : centralus
    PricingTier : B1
    OS : Linux
    Java Version: 21
    Web server stack: Tomcat 10.1
    Deploy to slot : false
    Confirm (Y/N) [Y]: Y
    [INFO] Saving configuration to pom.
    [INFO] ------------------------------------------------------------------------
    [INFO] BUILD SUCCESS
    [INFO] ------------------------------------------------------------------------
    [INFO] Total time:  01:49 min
    [INFO] Finished at: 2024-11-07T09:54:55-08:00
    [INFO] ------------------------------------------------------------------------
    
  3. A pom.xml fájl most már tartalmaz egy új szakaszt a <plugins> szakaszban. Ha módosítani szeretné az erőforráscsoport nevét, a példány nevét vagy az üzembe helyezés helyét, módosítsa a <resourceGroup>, <appName>vagy <region> az elemek értékeit. Az alábbi példa egy tipikus pom.xml fájlt mutat be:

          <!-- Azure Web App Maven Plugin -->
    <plugin>
        <groupId>com.microsoft.azure</groupId>
        <artifactId>azure-webapp-maven-plugin</artifactId>
        <version>2.10.0</version>
        <configuration>
            <resourceGroup>MyResourceGroup</resourceGroup>
            <appName>tomcatmavendemo</appName>
            <region>centralus</region>
            <pricingTier>B1</pricingTier>
            <runtime>
                <os>linux</os>
                <javaVersion>21</javaVersion>
                <webContainer>Tomcat 10.1</webContainer>
            </runtime>
            <deployment>
                <resources>
                    <resource>
                        <directory>${project.build.directory}</directory>
                        <includes>
                            <include>*.war</include>
                        </includes>
                    </resource>
                </resources>
            </deployment>
        </configuration>
    </plugin>
    

Fordítás és üzembe helyezés az Azure App Service-ben

Most, hogy befejezte az Azure App Service-ben való üzembe helyezési beállítások konfigurálását, az alábbi lépésekkel lefordíthatja a forráskódot, és üzembe helyezheti az alkalmazást az Azure App Servicesben:

  1. Fordítsd le újra a forráskódot az alábbi paranccsal:

    mvn clean package
    
  2. A forráskód fordítása után az alábbi paranccsal helyezze üzembe az alkalmazást:

    mvn azure-webapp:deploy
    

Amikor az üzembe helyezés befejeződött, a következő kimenet jellemző:

[INFO] Successfully deployed the artifact to https://tomcatmavendemo.azurewebsites.net
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time:  06:55 min
[INFO] Finished at: 2024-11-07T10:05:19-08:00
[INFO] ------------------------------------------------------------------------

Mint látható, ez a kimenet az üzembe helyezett alkalmazás nyilvános URL-címét adja meg: Successfully deployed the artifact to https://tomcatmavendemo.azurewebsites.net.

Az alkalmazáshoz való navigáláskor az alábbi képernyőképhez hasonlóan kell kinéznie:

Képernyőkép az üzembe helyezett webalkalmazásról egy böngészőben.

Ellenőrizze a naplóstreamet

A naplóstream eléréséhez használja a következő parancsot:

az webapp log tail \
    --resource-group <your-resource-group> \
    --name <your-app-name>

A következő kimenet jellemző:

2024-11-07T18:14:37  Welcome, you are now connected to log-streaming service.
Starting Log Tail -n 10 of existing logs ----
/appsvctmp/volatile/logs/runtime/container.log
2024-11-07T18:06:05.3874260Z  java.base/java.lang.Thread.run(Thread.java:1583)
2024-11-07T18:06:05.5635356Z Nov 07, 2024 6:06:05 PM org.apache.coyote.AbstractProtocol stop
2024-11-07T18:06:05.5636042Z INFO: Stopping ProtocolHandler ["http-nio-127.0.0.1-80"]
2024-11-07T18:06:05.6020767Z Nov 07, 2024 6:06:05 PM org.apache.coyote.AbstractProtocol stop
2024-11-07T18:06:05.6021438Z INFO: Stopping ProtocolHandler ["http-nio-169.254.129.3-80"]
2024-11-07T18:06:05.6423756Z Nov 07, 2024 6:06:05 PM org.apache.coyote.AbstractProtocol destroy
2024-11-07T18:06:05.6424403Z INFO: Destroying ProtocolHandler ["http-nio-127.0.0.1-80"]
2024-11-07T18:06:05.6893602Z Nov 07, 2024 6:06:05 PM org.apache.coyote.AbstractProtocol destroy
2024-11-07T18:06:05.6894311Z INFO: Destroying ProtocolHandler ["http-nio-169.254.129.3-80"]
2024-11-07T18:06:05.7849816Z Done processing signal SIGTERM. Exiting now!
Ending Log Tail of existing logs ---
Starting Live Log Stream ---

Gyakorlat összefoglalása

Ebben a leckében megtanulta, hogyan hozhat létre Tomcat-webalkalmazást a Maven használatával. Azt is megtanulta, hogyan hozhat létre egy servletet, és hogyan működik. Ezután helyileg telepítette a webalkalmazást a Tomcat használatával. Végül üzembe helyezte az Azure App Service-ben, hogy a világon bárki hozzáférhessen.