Delen via


Een KumuluzEE-web-app implementeren in Azure App Service met Maven

In deze quickstart gebruikt u de Maven-invoegtoepassing voor Azure App Service Web Apps om een KumuluzEE-toepassing te implementeren in Azure App Service op Linux. U kiest java SE-implementatie via Tomcat- en WAR-bestanden wanneer u de afhankelijkheden, runtime en configuratie van uw app wilt consolideren in één implementeerbaar artefact.

Als u geen Azure-abonnement hebt, maakt u een gratis account voordat u begint.

Voorwaarden

Aanmelden bij de Azure CLI

De eenvoudigste manier om de Maven-invoegtoepassing te gebruiken voor het implementeren van uw KumuluzEE-applicatie, is door gebruik te maken van de Azure CLI. Meld u aan bij uw Azure-account met behulp van de Azure CLI:

az login

Volg de instructies om het aanmeldingsproces te voltooien.

Een voorbeeld-app maken op basis van MicroProfile Starter

In deze sectie maakt u een KumuluzEE-toepassing en test u deze lokaal.

Java SE 8-basisproject maken

  1. Open een webbrowser en navigeer naar de MicroProfile Starter-site.

    Schermopname van MicroProfile Starter met KumuluzEE-runtime geselecteerd.

  2. Voer de veldwaarden in of selecteer deze in de volgende tabel:

    Veld Waarde
    groupId com.microsoft.azure.samples.kumuluzee
    artifactId kumuluzEE-hello-azure
    MicroProfile-versie MP 3.2
    Java SE-versie Java 8
    MicroProfile Runtime Kumuluzee
    Voorbeelden voor specificaties Metrische gegevens, OpenAPI
  3. Selecteer DOWNLOAD- om het project te downloaden.

  4. Pak het archiefbestand uit met behulp van de volgende opdracht:

    unzip kumuluzEE-hello-azure.zip
    

De toepassing uitvoeren in een lokale omgeving

  1. Wijzig de map in het voltooide project met behulp van de volgende opdracht:

    cd kumuluzEE-hello-azure/
    
  2. Bouw het project met behulp van Maven met behulp van de volgende opdracht:

    mvn clean package
    
  3. Voer de toepassing uit met behulp van de volgende opdracht:

    java -jar target/kumuluzEE-hello-azure.jar
    
  4. Test de web-app door er lokaal naar te bladeren met behulp van een webbrowser. U kunt bijvoorbeeld de volgende opdracht gebruiken als u curl beschikbaar hebt:

    curl http://localhost:8080/data/hello
    
  5. Het volgende bericht wordt weergegeven: Hallo wereld.

De Maven-invoegtoepassing configureren voor Azure App Service

In deze sectie configureert u het KumuluzEE-project pom.xml-bestand, zodat Maven de app kan implementeren in Azure App Service op Linux.

  1. Open het pom.xml-bestand in een code-editor.

  2. Voeg in de sectie <build> van het pom.xml-bestand de volgende <plugin> vermelding in de <plugins>-tag in:

    <build>
      <finalName>kumuluzEE-hello-azure</finalName>
      <plugins>
        <plugin>
          <groupId>com.microsoft.azure</groupId>
          <artifactId>azure-webapp-maven-plugin</artifactId>
          <version>1.10.0</version>
        </plugin>
      </plugins>
    </build>
    
  3. Configureer de implementatie door de volgende Maven-opdracht uit te voeren:

    mvn azure-webapp:config
    

    Selecteer de volgende opties wanneer u hierom wordt gevraagd:

    Invoerveld Invoer/waarde selecteren
    Definieer de waarde voor het besturingssysteem (standaard: Linux): 1. Linux
    Waarde definiëren voor javaVersion(standaard: Java 8): 2. Java 8
    Bevestigen (Y/N) y

    Met deze opdracht wordt uitvoer geproduceerd die vergelijkbaar is met het volgende voorbeeld:

    [INFO] Scanning for projects...
    [INFO]
    [INFO] ----< com.microsoft.azure.samples.kumuluzee:kumuluzEE-hello-azure >-----
    [INFO] Building kumuluzEE-hello-azure 1.0-SNAPSHOT
    [INFO] --------------------------------[ jar ]---------------------------------
    [INFO]
    [INFO] --- azure-webapp-maven-plugin:1.10.0:config (default-cli) @ kumuluzEE-hello-azure ---
    1. linux [*]
    2. windows
    3. docker
    Enter index to use: 1
    Define value for javaVersion(Default: Java 8):
    1. Java 11
    2. Java 8 [*]
    Enter index to use: 2
    Please confirm webapp properties
    AppName : kumuluzEE-hello-azure-1601006602397
    ResourceGroup : kumuluzEE-hello-azure-1601006602397-rg
    Region : westeurope
    PricingTier : PremiumV2_P1v2
    OS : Linux
    RuntimeStack : JAVA 8-jre8
    Deploy to slot : false
    Confirm (Y/N)? : y
    [INFO] Saving configuration to pom.
    [INFO] ------------------------------------------------------------------------
    [INFO] BUILD SUCCESS
    [INFO] ------------------------------------------------------------------------
    [INFO] Total time:  44.223 s
    [INFO] Finished at: 2020-09-25T13:04:02+09:00
    [INFO] ------------------------------------------------------------------------
    
  4. Voeg de sectie <appSettings> toe aan de sectie <configuration> van PORT, WEBSITES_PORTen WEBSITES_CONTAINER_START_TIME_LIMIT. De XML-vermelding voor azure-webapp-maven-plugin moet er ongeveer uitzien als in het volgende voorbeeld:

    <plugin>
      <groupId>com.microsoft.azure</groupId>
      <artifactId>azure-webapp-maven-plugin</artifactId>
      <version>1.10.0</version>
      <configuration>
        <schemaVersion>V2</schemaVersion>
        <resourceGroup>microprofile</resourceGroup>
        <appName>kumuluzEE-hello-azure-1601006602397</appName>
        <pricingTier>P1v2</pricingTier>
        <region>japaneast</region>
        <runtime>
          <os>linux</os>
          <javaVersion>jre8</javaVersion>
          <webContainer>jre8</webContainer>
        </runtime>
        <appSettings>
          <property>
            <name>PORT</name>
            <value>8080</value>
          </property>
          <property>
            <name>WEBSITES_PORT</name>
            <value>8080</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>
    

De app implementeren in Azure

Nadat u alle instellingen in de voorgaande secties van dit artikel hebt geconfigureerd, kunt u uw web-app implementeren in Azure. Gebruik hiervoor de volgende stappen:

  1. Bouw vanaf de opdrachtprompt of het terminalvenster dat u eerder gebruikte het JAR-bestand opnieuw met behulp van Maven, als u wijzigingen hebt aangebracht in het pom.xml-bestand met behulp van de volgende opdracht:

    mvn clean package
    
  2. Implementeer uw web-app in Azure met behulp van de volgende Maven-opdracht:

    mvn azure-webapp:deploy
    

Als de implementatie is geslaagd, ziet u de volgende uitvoer:

[INFO] Successfully deployed the artifact to https://kumuluzee-hello-azure-1601006602397.azurewebsites.net
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time:  01:23 min
[INFO] Finished at: 2020-09-25T13:13:14+09:00
[INFO] ------------------------------------------------------------------------

Maven implementeert uw web-app in Azure. Als de webapp of het webapp-plan nog niet bestaat, wordt het voor u gemaakt. Het kan enkele minuten duren voordat de web-app zichtbaar is op de URL die in de uitvoer wordt weergegeven. Navigeer naar de URL in een webbrowser. U ziet het volgende scherm:

Schermopname van webbrowser met kumuluzEE voorpagina.

Nadat uw web-app is geïmplementeerd, kunt u deze beheren via de Azure Portal. Uw web-app wordt vermeld in de microprofile resource-groep.

U kunt toegang krijgen tot de web-app door op de Overzichtspagina de optie Bladeren te selecteren voor uw web-app. Controleer of de implementatie is geslaagd en wordt uitgevoerd.

Bevestig de logboekstream van de actieve App Service

U kunt de volgende opdracht gebruiken om de logboeken van de actieve App Service weer te geven ( of tail). Alle aanroepen naar console.log in de sitecode worden weergegeven in de terminal.

az webapp log tail \
    --resource-group microprofile \
    --name kumuluzEE-hello-azure-1601006602397

Schermopname van het terminalvenster met de logboekstream.

Middelen opschonen

Wanneer de Azure-resources niet meer nodig zijn, schoont u de resources op die u hebt geïmplementeerd door de resourcegroep te verwijderen.

  1. Selecteer in Azure Portal resourcegroep in het menu.
  2. Voer microprofiel in het veld Filteren op naam in. De bronngroep die in deze cursus is gemaakt, moet dit voorvoegsel hebben.
  3. Selecteer de resourcegroep die in deze zelfstudie is gemaakt.
  4. Selecteer Verwijder resourcegroep in het menu.

Volgende stappen

Ga naar het documentatiecentrum van Azure voor meer informatie over MicroProfile en Azure.

Aanvullende informatiebronnen

Zie de volgende artikelen voor meer informatie over de verschillende technologieën die in dit artikel worden besproken: