Maven kullanarak Spring Boot uygulamalarını dağıtma
Not
Azure Spring Apps, Azure Spring Cloud hizmetinin yeni adıdır. Hizmetin yeni bir adı olsa da, ekran görüntüleri, videolar ve diyagramlar gibi varlıkları güncelleştirmek için çalışırken bazı yerlerde eski adı bir süre görürsünüz.
Bu makale şunlar için geçerlidir: ✔️ Java ❌ C#
Bu makale şunlar için geçerlidir: ✔️ Temel/Standart ✔️ Kurumsal
Bu makalede, uygulamaları yapılandırmak ve Azure Spring Apps'e dağıtmak için Azure Spring Apps Maven eklentisinin nasıl kullanılacağı gösterilmektedir.
Önkoşullar
- Etkin aboneliği olan bir Azure hesabı. Ücretsiz hesap oluşturun.
- Önceden sağlanmış bir Azure Spring Apps örneği.
- JDK 8 veya JDK 11
- Apache Maven
- Azure Spring Apps uzantısıyla Azure CLI sürüm 2.45.0 veya üzeri . Uzantıyı yüklemek için aşağıdaki komutu kullanabilirsiniz:
az extension add --name spring
Spring projesi oluşturma
Bu makalede kullanmak üzere bir Spring projesi oluşturmak için aşağıdaki adımları kullanın:
Azure Spring Apps için önerilen bağımlılıklarla örnek bir proje oluşturmak için Spring Initializr'a gidin. Bu bağlantı, sizin için varsayılan ayarları sağlamak için aşağıdaki URL'yi kullanır.
https://start.spring.io/#!type=maven-project&language=java&platformVersion=2.5.7&packaging=jar&jvmVersion=1.8&groupId=com.example&artifactId=hellospring&name=hellospring&description=Demo%20project%20for%20Spring%20Boot&packageName=com.example.hellospring&dependencies=web,cloud-eureka,actuator,cloud-config-client
Aşağıdaki görüntüde bu örnek proje için önerilen Spring Initializr kurulumu gösterilmektedir.
Bu örnekte Java sürüm 8 kullanılır. Java sürüm 11'i kullanmak istiyorsanız Proje Meta Verileri altındaki seçeneği değiştirin.
Tüm bağımlılıklar ayarlandığında Oluştur'a tıklayın.
Paketi indirip açın, ardından bir web uygulaması için bir web denetleyicisi oluşturun. src/main/java/com/example/hellospring/HelloController.java dosyasını aşağıdaki içeriklerle ekleyin:
package com.example.hellospring; import org.springframework.web.bind.annotation.RestController; import org.springframework.web.bind.annotation.RequestMapping; @RestController public class HelloController { @RequestMapping("/") public String index() { return "Greetings from Azure Spring Apps!"; } }
Spring uygulamalarını yerel olarak derleme
Maven kullanarak projeyi derlemek için aşağıdaki komutları çalıştırın:
cd hellospring
mvn clean package -DskipTests -Denv=cloud
Projenin derlenmesi birkaç dakika sürer. Tamamlandıktan sonra, ilgili klasörlerinde her hizmet için ayrı JAR dosyalarınız olmalıdır.
Azure Spring Apps örneği sağlama
Aşağıdaki yordam, Azure portalını kullanarak bir Azure Spring Apps örneği oluşturur.
Üstteki arama kutusunda Azure Spring Apps'i arayın.
Sonuçlardan Azure Spring Apps'i seçin.
Azure Spring Apps sayfasında Oluştur'u seçin.
Azure Spring Apps Oluştur sayfasında formu doldurun. Aşağıdaki yönergeleri göz önünde bulundurun:
- Abonelik: Bu kaynak için faturalanmasını istediğiniz aboneliği seçin.
- Kaynak grubu: Yeni kaynaklar için yeni kaynak grupları oluşturmak en iyi yöntemdir. Bu kaynak grubunu sonraki adımlarda kaynak grubu adı> olarak <kullanacaksınız.
- Hizmet Ayrıntıları/Adı: Hizmet örneği adını> belirtin<. Ad 4 ile 32 karakter uzunluğunda olmalıdır ve yalnızca küçük harf, sayı ve kısa çizgi içerebilir. Hizmet adının ilk karakteri bir harf, son karakter ise harf veya sayı olmalıdır.
- Konum: Hizmet örneğiniz için bölgeyi seçin.
İncele ve oluştur'u seçin.
Yapılandırmalar oluşturma ve Azure Spring Apps'e dağıtma
Yapılandırmalar oluşturmak ve uygulamayı dağıtmak için şu adımları izleyin:
POM dosyasını içeren hellospring kök klasöründen aşağıdaki komutu çalıştırın. Azure CLI ile zaten oturum açtıysanız, komut kimlik bilgilerini otomatik olarak alır. Aksi takdirde, komut oturum açma yönergelerini size sorar. Daha fazla bilgi için bkz. GitHub'daki azure-maven-plugins deposunda kimlik doğrulaması.
mvn com.microsoft.azure:azure-spring-apps-maven-plugin:1.10.0:config
Şunu seçmeniz istenir:
- Abonelik Kimliği - Azure Spring Apps örneği oluşturmak için kullandığınız abonelik.
- Hizmet örneği - Azure Spring Apps örneğinizin adı.
- Uygulama adı - seçtiğiniz bir uygulama adı veya varsayılan değerini
artifactId
kullanın. - Uygulamayı genel erişime açmak için genel uç nokta - true ; aksi takdirde false.
POM dosyasındaki
appName
öğenin doğru değere sahip olduğunu doğrulayın. POM dosyasının ilgili bölümü aşağıdaki örneğe benzer olmalıdır.<build> <plugins> <plugin> <groupId>com.microsoft.azure</groupId> <artifactId>azure-spring-apps-maven-plugin</artifactId> <version>1.10.0</version> <configuration> <subscriptionId>xxxxxxxxx-xxxx-xxxx-xxxxxxxxxxxx</subscriptionId> <clusterName>v-spr-cld</clusterName> <appName>hellospring</appName>
POM dosyası artık eklenti bağımlılıklarını ve yapılandırmalarını içerir.
Aşağıdaki komutu kullanarak uygulamayı dağıtın.
mvn azure-spring-apps:deploy
Hizmetleri doğrulama
Dağıtım tamamlandıktan sonra uygulamasına adresinden https://<service instance name>-hellospring.azuremicroservices.io/
erişebilirsiniz.
Kaynakları temizleme
Örnek uygulamayla çalışmaya devam etmek istiyorsanız kaynakları yerinde bırakmak isteyebilirsiniz. Artık gerekli olmadığında Azure Spring Apps örneğinizi içeren kaynak grubunu silin. Azure CLI kullanarak kaynak grubunu silmek için aşağıdaki komutları kullanın:
echo "Enter the Resource Group name:" &&
read resourceGroupName &&
az group delete --name $resourceGroupName &&
echo "Press [ENTER] to continue ..."