Mulai cepat: Meluncurkan aplikasi Java pertama Anda di Azure Container Apps
Artikel ini memperlihatkan kepada Anda cara menyebarkan aplikasi sampel Spring PetClinic untuk dijalankan di Azure Container Apps. Daripada membuat Dockerfile secara manual dan langsung menggunakan registri kontainer, Anda dapat menyebarkan aplikasi Java langsung dari file Java Archive (JAR) atau file arsip aplikasi web (WAR).
Pada akhir tutorial ini, Anda menyebarkan aplikasi web, yang dapat Anda kelola melalui portal Azure.
Gambar berikut adalah cuplikan layar tampilan aplikasi Anda setelah disebarkan ke Azure.
Prasyarat
Persyaratan | Petunjuk |
---|---|
Akun Azure | Jika Anda tidak memilikinya, buat akun secara gratis. Anda memerlukan izin Kontributor atau Pemilik pada langganan Azure untuk melanjutkan. Lihat Menetapkan peran Azure menggunakan portal Azure untuk detailnya. |
Akun GitHub | Dapatkan satu secara gratis. |
git | Instal git |
Azure CLI | Instal Azure CLI. |
Ekstensi CLI Container Apps | Gunakan versi atau yang 0.3.47 lebih tinggi. az extension add --name containerapp --upgrade --allow-preview Gunakan perintah untuk menginstal versi terbaru. |
Java | Instal Java Development Kit. Gunakan versi 17 atau yang lebih baru. |
Apache Maven | Unduh dan instal Apache Maven. |
Menyiapkan proyek
Kloning aplikasi sampel Spring PetClinic ke komputer Anda.
git clone https://github.com/spring-projects/spring-petclinic.git
git clone https://github.com/spring-petclinic/spring-framework-petclinic.git
Membangun proyek
Ubah ke folder spring-petclinic .
cd spring-petclinic
Bersihkan area build Maven, kompilasi kode proyek, dan buat file JAR, sambil melewati pengujian apa pun.
mvn clean verify
Setelah Anda menjalankan perintah build, file bernama petclinic.jar dihasilkan di folder /target.
Catatan
Jika perlu, Anda dapat menentukan versi Tomcat di variabel lingkungan build Java.
Ubah menjadi folder spring-framework-petclinic .
cd spring-framework-petclinic
Bersihkan area build Maven, kompilasi kode proyek, dan buat file WAR, sambil melewati pengujian apa pun.
mvn clean verify
Setelah Anda menjalankan perintah build, file bernama petclinic.war dihasilkan di folder /target .
Menyebarkan proyek
Sebarkan paket JAR ke Azure Container Apps.
Catatan
Jika perlu, Anda dapat menentukan versi JDK di variabel lingkungan build Java.
Sekarang Anda dapat menyebarkan file WAR Anda dengan az containerapp up
perintah CLI.
az containerapp up \
--name <CONTAINER_APP_NAME> \
--resource-group <RESOURCE_GROUP> \
--subscription <SUBSCRIPTION_ID>\
--location <LOCATION> \
--environment <ENVIRONMENT_NAME> \
--artifact <JAR_FILE_PATH_AND_NAME> \
--ingress external \
--target-port 8080 \
--query properties.configuration.ingress.fqdn
Catatan
Versi JDK default adalah 17. Jika Anda perlu mengubah versi JDK untuk kompatibilitas dengan aplikasi, Anda dapat menggunakan --build-env-vars BP_JVM_VERSION=<YOUR_JDK_VERSION>
argumen untuk menyesuaikan nomor versi.
Anda dapat menemukan variabel lingkungan build yang lebih berlaku di variabel lingkungan build Java.
Sebarkan paket WAR ke Azure Container Apps.
Sekarang Anda dapat menyebarkan file WAR Anda dengan az containerapp up
perintah CLI.
az containerapp up \
--name <CONTAINER_APP_NAME> \
--resource-group <RESOURCE_GROUP> \
--subscription <SUBSCRIPTION>\
--location <LOCATION> \
--environment <ENVIRONMENT_NAME> \
--artifact <WAR_FILE_PATH_AND_NAME> \
--build-env-vars BP_TOMCAT_VERSION=10.* \
--ingress external \
--target-port 8080 \
--query properties.configuration.ingress.fqdn
Catatan
Versi Tomcat default adalah 9. Jika Anda perlu mengubah versi Tomcat untuk kompatibilitas dengan aplikasi, Anda dapat menggunakan --build-env-vars BP_TOMCAT_VERSION=<YOUR_TOMCAT_VERSION>
argumen untuk menyesuaikan nomor versi.
Dalam contoh ini, versi Tomcat diatur ke 10
(termasuk versi minor apa pun) dengan mengatur BP_TOMCAT_VERSION=10.*
variabel lingkungan.
Anda dapat menemukan variabel lingkungan build yang lebih berlaku di variabel lingkungan build Java.
Memverifikasi status aplikasi
Dalam contoh ini, containerapp up
perintah menyertakan --query properties.configuration.ingress.fqdn
argumen, yang mengembalikan nama domain yang sepenuhnya memenuhi syarat (FQDN), juga dikenal sebagai URL aplikasi.
Lihat aplikasi dengan menempelkan URL ini ke browser. Aplikasi Anda harus menyerupai cuplikan layar berikut.