Aracılığıyla paylaş


Hızlı Başlangıç: WAR veya JAR dosyası kullanarak Azure Container Apps'te ilk Java uygulamanızı başlatma

Bu makalede, web uygulaması arşiv (WAR) dosyası veya Java Arşivi (JAR) dosyası kullanarak Spring PetClinic örnek uygulamasını Azure Container Apps'e dağıtma adımları gösterilmektedir.

Java uygulamalarını dağıtmak için aşağıdaki seçenekler de dahil olmak üzere çeşitli seçenekler vardır:

  • Yerel dosya sisteminden veya kod deposundan dağıtım.
  • Maven veya IDE kullanarak dağıtım.
  • WAR dosyası, JAR dosyası veya doğrudan kaynak kodu kullanarak dağıtım.

Bu öğreticinin sonunda, Azure portalı üzerinden yönetebileceğiniz bir web uygulaması dağıtacaksınız. Aşağıdaki ekran görüntüsünde, Azure Container Apps'e dağıtılan PetClinic uygulamasının giriş sayfası gösterilmektedir:

PetClinic uygulamasının giriş sayfasının ekran görüntüsü.

Önkoşullar

Projeyi oluştur

Aşağıdaki adımları kullanarak projeyi oluşturun:

  1. Aşağıdaki komutu kullanarak Azure Container Apps Java Örnekleri deposunu kopyalayın:

    git clone https://github.com/Azure-Samples/azure-container-apps-java-samples.git
    
  1. Aşağıdaki komutu kullanarak Spring PetClinic Örnek Uygulama deposunu kopyalayın:

    git clone https://github.com/spring-petclinic/spring-framework-petclinic.git
    
  1. Aşağıdaki komutu kullanarak spring-petclinic klasörüne gidin:

    cd azure-container-apps-java-samples/spring-petclinic/spring-petclinic/
    
  2. Aşağıdaki komutu kullanarak Spring PetClinic Örnek Uygulama deposunu başlatın ve en son sürüme güncelleştirin:

    git submodule update --init --recursive
    
  3. Maven derleme alanını temizlemek, projenin kodunu derlemek ve bu işlemler sırasında tüm testleri atlayarak bir JAR dosyası oluşturmak için aşağıdaki komutu kullanın:

    mvn clean verify
    

Artık bir /target/petclinic.jar dosyanız var.

  1. Aşağıdaki komutu kullanarak spring-framework-petclinic klasörüne gidin:

    cd spring-framework-petclinic
    
  2. Maven derleme alanını temizlemek, projenin kodunu derlemek ve bu işlemler sırasında tüm testleri atlayarak bir JAR dosyası oluşturmak için aşağıdaki komutu kullanın:

    mvn clean verify
    

Artık bir /target/petclinic.war dosyanız var.

Projeyi dağıtma

Aşağıdaki komutu kullanarak JAR paketini Azure Container Apps'e dağıtın:

Uyarı

Varsayılan JDK sürümü 17'dir. Ortam değişkenlerini kullanarak sürümü belirtme seçeneğiniz vardır. Uygulamanızla uyumluluk için JDK sürümünü değiştirmek için bağımsız değişkenini --build-env-vars BP_JVM_VERSION=<your-JDK-version> kullanın. Daha fazla bilgi için bkz. Azure Container Apps'te Java için ortam değişkenleri oluşturma (önizleme).

az containerapp up \
    --resource-group <resource-group> \
    --name <container-app-name> \
    --subscription <subscription-ID>\
    --location <location> \
    --environment <environment-name> \
    --artifact <JAR-file-path-and-name> \
    --ingress external \
    --target-port 8080 \
    --query properties.configuration.ingress.fqdn

Aşağıdaki komutu kullanarak WAR dosyasını Azure Container Apps'e dağıtın:

Uyarı

Varsayılan Tomcat sürümü 9'dur. Uygulamanızla uyumluluk için sürümü değiştirmek amacıyla --build-env-vars BP_TOMCAT_VERSION=<your-Tomcat-version> bağımsız değişkenini kullanın. Bu örnekte, BP_TOMCAT_VERSION=10.* ayarıyla Tomcat sürümü, küçük sürümler de dahil olmak üzere, 10 olarak belirlenmiştir. Daha fazla bilgi için bkz. Azure Container Apps'te Java için ortam değişkenleri oluşturma (önizleme).

az containerapp up \
    --resource-group <resource-group> \
    --name <container-app-name> \
    --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

Uygulama durumunu doğrulama

Bu örnekte, containerapp up komutu, --query properties.configuration.ingress.fqdn bağımsız değişkenini içerir, bu da uygulamanın URL'si olarak da bilinen tam etki alanı adını (FQDN) döndürür.

Bu URL'yi bir tarayıcıya yapıştırarak uygulamayı görüntüleyin.

Kaynakları temizleme

Daha hızlı başlangıçlar ve öğreticilerle çalışmaya devam etmek istiyorsanız, bu kaynakları yerinde bırakmak isteyebilirsiniz. Kaynaklara artık ihtiyacınız kalmadığında, aşağıdaki komutu kullanarak Azure ücretlerinden kaçınmak için bunları kaldırabilirsiniz:

az group delete --name <resource-group>