Sdílet prostřednictvím


Nasazení webové aplikace Open Liberty Micro do služby Aplikace Azure Pomocí Mavenu

V tomto rychlém startu použijete modul plug-in Maven pro Aplikace Azure Service Web Apps k nasazení aplikace Open Liberty do služby Aplikace Azure Service v Linuxu. Pokud chcete sloučit závislosti aplikace, modul runtime a konfiguraci do jediného nasaditelného artefaktu, můžete zvolit nasazení Java SE pomocí Tomcatu a souborů WAR.

Pokud ještě nemáte předplatné Azure, vytvořte si napřed bezplatný účet.

Důležité

Zatímco služba Aplikace Azure je navržena, provozována a podporována společností Microsoft, software, na který běžíte, podléhá vlastním plánům podpory a licenčním podmínkám. Podrobnosti o podpoře softwaru popsaného v tomto článku najdete na hlavních stránkách tohoto softwaru, jak je uvedeno v článku. Podporu pro Open Liberty naleznete na stránce podpory Open Liberty. Podporu pro WebSphere Liberty najdete v tématu Podpora IBM Cloud.

Požadavky

Přihlášení k Azure CLI

Nejjednodušším a nejsnadnějším způsobem, jak získat modul plug-in Maven, který nasazuje vaši aplikaci Open Liberty, je použití Azure CLI.

Přihlaste se k účtu Azure pomocí Azure CLI:

az login

Postupujte podle pokynů a dokončete proces přihlášení.

Vytvoření ukázkové aplikace z MicroProfile Starter

V této části vytvoříte aplikaci Open Liberty a otestujete ji místně.

  1. Otevřete webový prohlížeč a přejděte na úvodní web MicroProfile.

    Snímek obrazovky s vybranou možností MicroProfile Starter s vybraným modulem Open Liberty runtime

  2. Pomocí hodnot v následující tabulce vyplňte úvodní soubor MicroProfile.

    Pole Hodnota
    groupId com.microsoft.azure.samples.openliberty
    artifactId openliberty-hello-azure
    Verze MicroProfile MP 4.0
    Verze Java SE Java 11
    MicroProfile Runtime Otevřít Svobodu
    Příklady pro specifikace Metriky, OpenAPI
  3. Vyberte STÁHNOUT a stáhněte projekt.

  4. Rozbalte archivní soubor; Například:

    unzip openliberty-hello-azure.zip
    

Spuštění aplikace v místním prostředí

  1. Přejděte do adresáře pro dokončený projekt; například:

    cd openliberty-hello-azure/
    
  2. Sestavení projektu pomocí Mavenu; Například:

    mvn clean package
    
  3. Spusťte projekt; Například:

    java -jar target/openliberty-hello-azure.jar
    
  4. Otestujte webovou aplikaci tak, že ji místně otevřete ve webovém prohlížeči. Pokud máte k dispozici nástroj curl, můžete například použít následující příkaz:

    curl http://localhost:9080/data/hello
    
  5. Měla by se zobrazit následující zpráva: Hello World

Konfigurace modulu plug-in Maven pro Azure App Service

V této části nakonfigurujete projekt Open Liberty pom.xml soubor tak, aby Maven mohl aplikaci nasadit do služby Aplikace Azure Service v Linuxu.

  1. Pokud chcete nakonfigurovat nasazení, spusťte následující příkaz Mavenu:

    mvn com.microsoft.azure:azure-webapp-maven-plugin:2.3.0:config
    

    Po zobrazení výzvy vyberte následující možnosti:

    Vstupní pole Vstupní/výběrové hodnoty
    Definujte hodnotu pro OS(Default: Linux): 1. linux
    Definovat hodnotu pro javaVersion(Výchozí: Java 8): 2. Java 11
    Definujte hodnotu pro runtimeStack(Default: TOMCAT 8.5): 2. TOMCAT 8.5
    Confirm (Y/N) y

Poznámka:

I když tomcat nepoužíváme, vyberte TOMCAT 8.5 v tuto chvíli. Během podrobné konfigurace upravíte hodnotu z TOMCAT 8.5 hodnoty do Java. Tento příklad používá konkrétní verzi modulu plug-in Aplikace Azure Service Maven. Měli byste zvážit použití nejnovější dostupné verze. Počet nejnovějších verzí můžete zjistit na webu, jako je například mvnrepository.com.

Tento příkaz vytvoří výstup podobný následujícímu příkladu:

 [INFO] Scanning for projects...
 [INFO]
 [INFO] ---< com.microsoft.azure.samples.openliberty:openliberty-hello-azure >----
 [INFO] Building openliberty-hello-azure 1.0-SNAPSHOT
 [INFO] --------------------------------[ war ]---------------------------------
 [INFO]
 [INFO] --- azure-webapp-maven-plugin:2.3.0:config (default-cli) @ openliberty-hello-azure ---
 Auth type: AZURE_CLI
 Default subscription:
 Username:
 [INFO] Subscription:
 [INFO] It may take a few minutes to load all Java Web Apps, please be patient.
 Define value for OS [Linux]:
   1: Windows
 * 2: Linux
   3: Docker
 Enter your choice:
 Define value for javaVersion [Java 8]:
 * 1: Java 8
   2: Java 11
 Enter your choice: 2
 Define value for webContainer [Tomcat 8.5]:
   1: Jbosseap 7
 * 2: Tomcat 8.5
   3: Tomcat 9.0
 Enter your choice:
 Define value for pricingTier [P1v2]:
   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:
 Please confirm webapp properties
 Subscription Id : ********-****-****-****-************
 AppName : openliberty-hello-azure-1642075767899
 ResourceGroup : openliberty-hello-azure-1642075767899-rg
 Region : centralus
 PricingTier : P1v2
 OS : Linux
 Java : Java 11
 Web server stack: Tomcat 8.5
 Deploy to slot : false
 Confirm (Y/N) [Y]:
 [INFO] Saving configuration to pom.
 [INFO] ------------------------------------------------------------------------
 [INFO] BUILD SUCCESS
 [INFO] ------------------------------------------------------------------------
 [INFO] Total time:  21.981 s
 [INFO] Finished at: 2022-01-13T21:09:39+09:00
 [INFO] ------------------------------------------------------------------------
  1. Upravte soubor server.xml v adresáři /src/main/liberty/config/ pro spuštění aplikace ve službě Azure Web Apps. Do souboru přidejte host="*" řádek do <httpEndpoint> značky, jak je znázorněno v následujícím příkladu:

    <httpEndpoint id="defaultHttpEndpoint"
                  host="*"
                  httpPort="9080"
                  httpsPort="9443"/>
    
  2. runtime Upravte položku z TOMCAT 8.5 do java a deployment z *.war do *.jar souboru pom.xml. Pak přidejte <appSettings> oddíl do oddílu <configuration> PORT, WEBSITES_PORTa WEBSITES_CONTAINER_START_TIME_LIMIT. Položka azure-webapp-maven-plugin XML bude vypadat podobně jako v následujícím příkladu:

    <plugin>
      <groupId>com.microsoft.azure</groupId>
      <artifactId>azure-webapp-maven-plugin</artifactId>
      <version>2.3.0</version>
      <configuration>
        <schemaVersion>v2</schemaVersion>
        <subscriptionId>********-****-****-****-************</subscriptionId>
        <resourceGroup>openliberty-hello-azure-1642075767899-rg</resourceGroup>
        <appName>openliberty-hello-azure-1642075767899</appName>
        <pricingTier>P1v2</pricingTier>
        <region>japaneast</region>
        <runtime>
          <os>Linux</os>
          <javaVersion>Java 11</javaVersion>
          <webContainer>java</webContainer>
        </runtime>
      <appSettings>
        <property>
          <name>PORT</name>
          <value>9080</value>
        </property>
          <property>
          <name>WEBSITES_PORT</name>
          <value>9080</value>
        </property>
        <property>
          <name>WEBSITES_CONTAINER_START_TIME_LIMIT</name>
          <value>600</value>
        </property>
      </appSettings>
        <deployment>
          <resources>
            <resource>
              <directory>${project.basedir}/target</directory>
              <includes>
                <include>*.jar</include>
              </includes>
            </resource>
          </resources>
        </deployment>
      </configuration>
    </plugin>
    

Nasadit aplikaci do Azure

Jakmile nakonfigurujete všechna nastavení v předchozích částech tohoto článku, jste připraveni nasadit webovou aplikaci do Azure. Můžete to udělat podle následujících kroků:

  1. Pokud jste provedli nějaké změny v souboru pom.xml, na příkazovém řádku nebo v okně terminálu, které jste používali dříve, znovu zkompilujte soubor JAR pomocí Mavenu. Například:

    mvn clean package
    
  2. Nasaďte webovou aplikaci do Azure pomocí Mavenu. Například:

    mvn azure-webapp:deploy
    

Pokud nasazení proběhlo úspěšně, zobrazí se následující výstup.

[INFO] Scanning for projects...
[INFO]
[INFO] ---< com.microsoft.azure.samples.openliberty:openliberty-hello-azure >----
[INFO] Building openliberty-hello-azure 1.0-SNAPSHOT
[INFO] --------------------------------[ war ]---------------------------------
[INFO]
[INFO] --- azure-webapp-maven-plugin:2.3.0:deploy (default-cli) @ openliberty-hello-azure ---
Auth type: AZURE_CLI
[INFO] Creating web app openliberty-hello-azure-1642075767899...
[INFO] Successfully created Web App openliberty-hello-azure-1642075767899.
[INFO] Trying to deploy external resources to openliberty-hello-azure-1642075767899...
[INFO] Successfully deployed the resources to openliberty-hello-azure-1642075767899
[INFO] Trying to deploy artifact to openliberty-hello-azure-1642075767899...
[INFO] Deploying (/Users/Downloads/openliberty-hello-azure/target/openliberty-hello-azure.jar)[jar]  ...
[INFO] Successfully deployed the artifact to https://openliberty-hello-azure-1642075767899.azurewebsites.net
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time:  01:11 min
[INFO] Finished at: 2022-01-13T21:29:50+09:00
[INFO] ------------------------------------------------------------------------

Maven nasadí vaši webovou aplikaci do Azure. Pokud webová aplikace nebo plán webové aplikace ještě neexistují, vytvoří se za vás. Může trvat několik minut, než bude webová aplikace viditelná na adrese URL zobrazené ve výstupu. Ve webovém prohlížeči přejděte na příslušnou adresu URL. Měla by se zobrazit následující obrazovka.

Snímek obrazovky webového prohlížeče s úvodní stránkou Open Liberty

Po nasazení aplikace ji můžete spravovat prostřednictvím webu Azure Portal.

Vaše webová aplikace bude uvedená ve skupině prostředků.

Ke své webové aplikaci se dostanete tak , že vyberete Procházet na stránce Přehled vaší webové aplikace. Ověřte, že nasazení proběhlo úspěšně a spuštěno.

Potvrzení streamu protokolu ze spuštěné služby App Service

Zobrazí se (nebo "tail") protokoly ze spuštěné služby App Service. Všechna volání console.log v kódu lokality se zobrazí v terminálu.

az webapp log tail \
    --resource-group openliberty-hello-azure-1642075767899-rg \
    --name openliberty-hello-azure-1642075767899

Snímek obrazovky okna terminálu s streamem protokolu

Vyčištění prostředků

Pokud už nasazené prostředky Azure nepotřebujete, vyčistěte je odstraněním skupiny prostředků.

  • Na webu Azure Portal vyberte v nabídce nalevo Skupina prostředků.
  • Do pole Filtrovat podle názvu zadejte mikroprofile, skupina prostředků vytvořená v tomto kurzu by měla mít tuto předponu.
  • Vyberte skupinu prostředků, kterou jste vytvořili v tomto kurzu.
  • V horní nabídce vyberte Odstranit skupinu prostředků.

Další kroky

Další informace o MicroProfile a Azure najdete v centru dokumentace k MicroProfile v Azure.

Další materiály

Další informace o různých technologiích popsaných v tomto článku najdete v následujících článcích: