Bagikan melalui


Menyebarkan Helidon Web App ke Azure App Service dengan Maven

Dalam mulai cepat ini, Anda akan menggunakan Maven Plugin untuk Azure App Service Web Apps untuk menyebarkan aplikasi Helidon ke Azure App Service di Linux. Anda akan memilih penyebaran Java SE atas file Tomcat dan WAR ketika Anda ingin mengonsolidasikan dependensi, runtime, dan konfigurasi aplikasi Anda menjadi satu artefak yang dapat disebarkan.

Jika Anda tidak memiliki langganan Azure, buat akun gratis sebelum Anda memulai.

Prasyarat

Masuk ke Azure CLI

Cara paling sederhana dan mudah untuk membuat Maven Plugin menyebarkan aplikasi Helidon Anda adalah dengan menggunakan Azure CLI.

Masuk ke akun Azure Anda dengan menggunakan Azure CLI:

az login

Ikuti petunjuk untuk menyelesaikan proses masuk.

Buat aplikasi sampel dari MicroProfile Starter

Di bagian ini, Anda akan membuat aplikasi Helidon dan mengujinya secara lokal.

  1. Buka browser web dan arahkan ke situs MicroProfile Starter.

    Cuplikan layar memperlihatkan MicroProfile Starter dengan runtime Helidon dipilih.

  2. Masukkan atau Pilih bidang seperti berikut.

    Bidang Nilai
    groupid com.microsoft.azure.samples.helidon
    artifactId helidon-hello-azure
    Versi MicroProfile MP-3.2
    Versi Java SE Java 11
    MicroProfile Runtime Helidon
    Contoh untuk Spesifikasi Metrics, OpenAPI
  3. Pilih UNDUH untuk mengunduh proyek.

  4. Ekstrak file arsip; misalnya:

    unzip helidon-hello-azure.zip
    
  5. Atau Anda dapat membuat proyek dengan perintah berikut:

    mvn -U archetype:generate -DinteractiveMode=false \
        -DarchetypeGroupId=io.helidon.archetypes \
        -DarchetypeArtifactId=helidon-quickstart-se \
        -DarchetypeVersion=2.0.0 \
        -DgroupId=com.microsoft.azure.samples.helidon \
        -DartifactId=helidon-hello-azure \
        -Dpackage=com.microsoft.azure.samples.helidon
    
  6. Ubah direktori ke proyek yang sudah selesai; misalnya:

    cd helidon-hello-azure/
    
  7. Bangun file JAR menggunakan Maven; misalnya:

    mvn clean package
    
  8. Ketika aplikasi web telah dibuat, mulai aplikasi web menggunakan Maven; misalnya:

    java -jar target/helidon-hello-azure.jar
    
  9. Uji aplikasi web dengan menelusurinya secara lokal menggunakan browser web. Misalnya, Anda dapat menggunakan perintah berikut jika Anda memiliki curl yang tersedia:

    curl http://localhost:8080/greet
    
  10. Anda akan melihat pesan berikut ditampilkan: Halo Dunia

Mengonfigurasi Plugin Maven untuk Azure App Service

Di bagian ini, Anda akan mengonfigurasi file pom.xml proyek Helidon sehingga Maven dapat menyebarkan aplikasi ke Azure App Service di Linux.

  1. Buka file pom.xml di editor teks.

  2. Di <build> bagian file pom.xml, sisipkan entri berikut <plugin> ke dalam tag <plugins>.

    <build>
      <finalName>helidon-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. Kemudian Anda dapat mengonfigurasikan penyebaran, jalankan perintah Maven berikut:

    mvn azure-webapp:config
    

    Pilih opsi berikut saat diminta:

    Input Bidang Input/Pilih Nilai
    Tentukan nilai untuk OS(Default: Linux): 1. Linux
    Tentukan nilai untuk javaVersion(Default: Java 8): 1. Java 11
    Konfirmasi (Y/T) y

    Perintah ini menghasilkan output yang mirip dengan contoh berikut:

    [INFO] Scanning for projects...
    [INFO]
    [INFO] ------< com.microsoft.azure.samples.helidon:helidon-hello-azure >-------
    [INFO] Building myproject 1.0-SNAPSHOT
    [INFO] --------------------------------[ jar ]---------------------------------
    [INFO]
    [INFO] --- azure-webapp-maven-plugin:1.10.0:config (default-cli) @ helidon-hello-azure ---
    Define value for OS(Default: Linux):
    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: 1
    Please confirm webapp properties
    AppName : helidon-hello-azure-1600998900939
    ResourceGroup : helidon-hello-azure-1600998900939-rg
    Region : westeurope
    PricingTier : PremiumV2_P1v2
    OS : Linux
    RuntimeStack : JAVA 11-java11
    Deploy to slot : false
    Confirm (Y/N)? : y
    [INFO] Saving configuration to pom.
    [INFO] ------------------------------------------------------------------------
    [INFO] BUILD SUCCESS
    [INFO] ------------------------------------------------------------------------
    [INFO] Total time:  02:44 min
    [INFO] Finished at: 2020-09-25T10:57:35+09:00
    [INFO] ------------------------------------------------------------------------
    
  4. Tambahkan bagian <appSettings> ke bagian <configuration> dari PORT, WEBSITES_PORT, dan WEBSITES_CONTAINER_START_TIME_LIMIT. Tambahkan ke <include>/libs/*.jar</include> sumber daya dalam penyebaran.

    <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>helidon-hello-azure-1591663020899</appName>
        <pricingTier>P1v2</pricingTier>
        <region>japaneast</region>
        <runtime>
          <os>linux</os>
          <javaVersion>java11</javaVersion>
          <webContainer>java11</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>
                <include>/libs/*.jar</include>
              </includes>
            </resource>
          </resources>
        </deployment>
      </configuration>
    

Menyebarkan aplikasi ke Azure

Setelah mengonfigurasi semua pengaturan di bagian sebelumnya dari artikel ini, Anda siap untuk menyebarkan aplikasi web ke Azure. Untuk melakukannya, gunakan langkah-langkah berikut:

  1. Dari jendela perintah atau terminal yang Anda gunakan sebelumnya, bangun kembali file JAR menggunakan Maven jika Anda membuat perubahan apa pun pada file pom.xml; misalnya:

    mvn clean package
    
  2. Menyebarkan aplikasi web Anda ke Azure dengan menggunakan Maven; misalnya:

    mvn azure-webapp:deploy
    

Maven akan menyebarkan aplikasi web Anda ke Azure. Jika aplikasi web atau paket aplikasi web belum ada, mereka akan dibuat untuk Anda. Mungkin akan perlu beberapa menit sebelum aplikasi web terlihat di URL yang ditampilkan pada output. Arahkan ke URL di browser Web. Anda akan melihat pesan berikut ditampilkan: Halo Dunia

Ketika web Anda telah disebarkan, Anda dapat mengelolanya melalui portal Microsoft Azure.

Aplikasi web Anda akan tercantum di App Services.

Anda dapat mengakses aplikasi web dengan memilih Browse di halaman Gambaran Umum untuk aplikasi web Anda.

Verifikasi bahwa penyebaran telah berhasil dengan menggunakan perintah cURL yang sama seperti sebelumnya(/data/hello), menggunakan URL aplikasi web Anda dari Portal, bukan localhost. Anda akan melihat pesan berikut ditampilkan: Halo Dunia

Konfirmasi aliran log dari App Service yang sedang berjalan

Anda dapat melihat (atau "mengikuti") log dari App Service yang sedang berjalan. Setiap panggilan ke console.log dalam kode situs ditampilkan di terminal.

az webapp log tail \
    --resource-group microprofile \
    --name helidon-hello-azure-1600998900939

Cuplikan layar jendela terminal memperlihatkan output log.

Membersihkan sumber daya

Saat sumber daya Azure tidak lagi diperlukan, bersihkan sumber daya yang Anda sebarkan dengan menghapus grup sumber daya.

  • Dari portal Microsoft Azure, pilih Grup sumber daya dari menu sebelah kiri.
  • Masukkan microprofile di bidang Filter menurut nama, grup sumber daya yang dibuat dalam tutorial ini harus memiliki prefiks ini.
  • Pilih grup sumber daya yang Anda buat dalam tutorial ini.
  • Pilih Hapus grup sumber daya dari menu atas.

Langkah berikutnya

Untuk mempelajari selengkapnya tentang MicroProfile dan Azure, lanjutkan ke pusat dokumentasi MicroProfile pada Azure.

Sumber Daya Tambahan:

Untuk informasi lebih lanjut tentang berbagai teknologi yang dibahas dalam artikel ini, lihat artikel berikut: