Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
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:
Önkoşullar
- Bir Azure aboneliği. Ücretsiz bir tane oluşturun.
- Azure aboneliğindeki
Contributor
veyaOwner
izni. Daha fazla bilgi edinmek için bkz. Azure portal kullanarak Azure rolleri atama. - GitHub hesabı.
- Aptal
- Azure CLI
- Azure Container Apps CLI uzantısı, sürüm 0.3.47 veya üzeri. En son sürümü yüklemek için aşağıdaki komutu kullanın:
az extension add --name containerapp --upgrade --allow-preview
- Java Geliştirme Seti, sürüm 17 veya üzeri.
- Apache Maven
Projeyi oluştur
Aşağıdaki adımları kullanarak projeyi oluşturun:
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
Aşağıdaki komutu kullanarak Spring PetClinic Örnek Uygulama deposunu kopyalayın:
git clone https://github.com/spring-petclinic/spring-framework-petclinic.git
Aşağıdaki komutu kullanarak spring-petclinic klasörüne gidin:
cd azure-container-apps-java-samples/spring-petclinic/spring-petclinic/
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
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.
Aşağıdaki komutu kullanarak spring-framework-petclinic klasörüne gidin:
cd spring-framework-petclinic
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>