Sebarkan Open Liberty Micro 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 Open Liberty 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 memulai.
Penting
Meskipun Azure App Service dirancang, dioperasikan, dan didukung oleh Microsoft, perangkat lunak yang Anda jalankan di atasnya tunduk pada rencana dukungan dan syarat lisensinya sendiri. Untuk detail tentang dukungan perangkat lunak yang dijelaskan dalam artikel ini, lihat halaman utama untuk perangkat lunak tersebut sebagaimana tercantum dalam artikel. Untuk dukungan terhadap Open Liberty, lihat Halaman dukungan Open Liberty. Untuk dukungan WebSphere Liberty, lihat IBM Cloud Support.
Prasyarat
- Azure CLI, baik secara lokal atau melalui Azure Cloud Shell.
- Kit Pengembangan Java (JDK) yang didukung. Untuk informasi selengkapnya tentang JDK yang tersedia untuk digunakan saat mengembangkan Azure, lihat dukungan Java pada Azure dan Azure Stack.
- Apache Maven, versi 3.
Masuk ke Azure CLI
Cara paling sederhana dan termudah untuk mendapatkan Maven Plugin yang menyebarkan aplikasi Open Liberty Anda ialah 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 Open Liberty dan mengujinya secara lokal.
Buka browser web dan arahkan ke situs MicroProfile Starter.
Gunakan nilai dalam tabel berikut untuk mengisi MicroProfile Starter.
Bidang Nilai groupid com.microsoft.azure.samples.openliberty artifactId openliberty-hello-azure Versi MicroProfile MP 4.0 Versi Java SE Java 11 MicroProfile Runtime Open Liberty Contoh untuk Spesifikasi Metrics, OpenAPI Pilih UNDUH untuk mengunduh proyek.
Ekstrak file arsip; misalnya:
unzip openliberty-hello-azure.zip
Jalankan aplikasi di lingkungan lokal
Ubah direktori ke proyek yang sudah selesai; misalnya:
cd openliberty-hello-azure/
Bangun proyek menggunakan Maven; misalnya:
mvn clean package
Jalankan proyek; misalnya:
java -jar target/openliberty-hello-azure.jar
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:9080/data/hello
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 Open Liberty sehingga Maven dapat menyebarkan aplikasi ke Azure App Service di Linux.
Untuk mengonfigurasikan penyebaran, jalankan perintah Maven berikut:
mvn com.microsoft.azure:azure-webapp-maven-plugin:2.3.0: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): 2. Java 11 Tentukan nilai untuk runtimeStack(Default: TOMCAT 8.5): 2. TOMCAT 8.5 Konfirmasi (Y/T) y
Catatan
Meskipun kami tidak menggunakan Tomcat, pilih TOMCAT 8.5
saat ini. Selama konfigurasi terperinci, Anda akan mengubah nilai dari TOMCAT 8.5
ke Java
.
Contoh ini menggunakan versi tertentu dari plugin Maven Azure App Service. Anda harus mempertimbangkan untuk menggunakan versi terbaru yang tersedia. Anda dapat menemukan nomor versi terbaru dengan mengunjungi situs seperti mvnrepository.com.
Perintah ini menghasilkan output yang mirip dengan contoh berikut:
[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] ------------------------------------------------------------------------
Ubah file server.xml di bawah direktori /src/main/liberty/config/ untuk menjalankan Aplikasi di Azure Web Apps. Dalam file tersebut, tambahkan baris
host="*"
dalam tag<httpEndpoint>
, seperti yang ditunjukkan pada contoh berikut:<httpEndpoint id="defaultHttpEndpoint" host="*" httpPort="9080" httpsPort="9443"/>
Ubah entri
runtime
dariTOMCAT 8.5
kejava
dan entrideployment
dari*.war
ke*.jar
dalam file pom.xml. Lalu tambahkan bagian<appSettings>
ke bagian<configuration>
dariPORT
,WEBSITES_PORT
, danWEBSITES_CONTAINER_START_TIME_LIMIT
. Entri XML Anda untukazure-webapp-maven-plugin
akan terlihat mirip dengan contoh berikut:<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>
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:
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
Menyebarkan aplikasi web Anda ke Azure dengan menggunakan Maven; misalnya:
mvn azure-webapp:deploy
Jika penyebaran berhasil, Anda akan melihat output berikut.
[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 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 layar berikut.
Ketika aplikasi Anda telah disebarkan, Anda dapat mengelolanya melalui portal Azure.
Aplikasi web Anda akan tercantum di grup sumber daya.
Anda dapat mengakses aplikasi web Anda dengan memilih Telusuri di halaman Gambaran Umum untuk aplikasi web Anda. Pastikan penyebaran berhasil dan Berjalan.
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 openliberty-hello-azure-1642075767899-rg \
--name openliberty-hello-azure-1642075767899
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:
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk