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.
Not
Temel, Standardve Enterprise planları 17 Mart 2025'te kullanımdan kaldırma dönemine girdi. Daha fazla bilgi için bkz . Azure Spring Apps kullanımdan kaldırma duyurusu.
Standart tüketim ve ayrılmış planı 30 Eylül 2024'te emeklilik dönemine girdi ve Mart 2025 sonuna kadar tamamen kapatılacak. Daha fazla bilgi için bkz . Azure Spring Apps Standart tüketimini ve ayrılmış planı Azure Container Apps'e geçirme.
Bu makale şunlar için geçerlidir:✅ Temel/Standart ✅ Kurumsal
Bu makalede, uygulamaları dağıtmak için Azure Pipelines için Azure Spring Apps görevinin nasıl kullanılacağı gösterilmektedir .
Sürekli tümleştirme ve sürekli teslim araçları, güncelleştirmeleri en az çaba ve riskle mevcut uygulamalara hızla dağıtmanıza olanak tanır. Azure DevOps, bu önemli işleri düzenlemenize ve denetlemenize yardımcı olur.
Aşağıdaki videoda Azure Pipelines dahil olmak üzere seçtiğiniz araçları kullanarak uçtan uca otomasyon açıklanmaktadır.
Azure Resource Manager hizmet bağlantısı oluşturma
İlk olarak, Azure DevOps projenize bir Azure Resource Manager hizmet bağlantısı oluşturun. Yönergeler için bkz . Microsoft Azure'a bağlanma. Azure Spring Apps hizmet örneğiniz için kullandığınız aboneliği seçtiğinizden emin olun.
Uygulama oluşturma ve dağıtma
Artık bir dizi görevi kullanarak projelerinizi derleyebilir ve dağıtabilirsiniz. Aşağıdaki Azure Pipelines şablonu değişkenleri, uygulamayı oluşturmaya yönelik bir .NET Core görevini ve uygulamayı dağıtmak için bir Azure Spring Apps görevini tanımlar.
variables:
workingDirectory: './steeltoe-sample'
planetMainEntry: 'Microsoft.Azure.SpringCloud.Sample.PlanetWeatherProvider.dll'
solarMainEntry: 'Microsoft.Azure.SpringCloud.Sample.SolarSystemWeather.dll'
planetAppName: 'planet-weather-provider'
solarAppName: 'solar-system-weather'
serviceName: '<your service name>'
steps:
# Restore, build, publish and package the zipped planet app
- task: DotNetCoreCLI@2
inputs:
command: 'publish'
publishWebProjects: false
arguments: '--configuration Release'
zipAfterPublish: false
modifyOutputPath: false
workingDirectory: $(workingDirectory)
# Deploy the planet app
- task: AzureSpringCloud@0
inputs:
azureSubscription: '<Service Connection Name>'
Action: 'Deploy'
AzureSpringCloud: $(serviceName)
AppName: 'testapp'
DeploymentType: 'Artifacts'
UseStagingDeployment: false
DeploymentName: 'default'
Package: $(workingDirectory)/src/$(planetAppName)/publish-deploy-planet.zip
RuntimeVersion: 'NetCore_31'
DotNetCoreMainEntryPath: $(planetMainEntry)
# Deploy the solar app
- task: AzureSpringCloud@0
inputs:
azureSubscription: '<Service Connection Name>'
Action: 'Deploy'
AzureSpringCloud: $(serviceName)
AppName: 'testapp'
DeploymentType: 'Artifacts'
UseStagingDeployment: false
DeploymentName: 'default'
Package: $(workingDirectory)/src/$(solarAppName)/publish-deploy-solar.zip
RuntimeVersion: 'NetCore_31'
DotNetCoreMainEntryPath: $(solarMainEntry)
Azure Spring Apps örneği ve Azure DevOps projesi ayarlama
İlk olarak, mevcut bir Azure Spring Apps örneğini Azure DevOps ile kullanmak üzere ayarlamak için aşağıdaki adımları kullanın.
- Azure Spring Apps örneğine gidin ve yeni bir uygulama oluşturun.
- Azure DevOps portalına gidin ve seçtiğiniz kuruluş altında yeni bir proje oluşturun. Azure DevOps kuruluşunuz yoksa ücretsiz bir kuruluş oluşturabilirsiniz.
- Depolar'ı seçin, ardından Spring Boot tanıtım kodunu depoya aktarın.
Azure Resource Manager hizmet bağlantısı oluşturma
Ardından, Azure DevOps projenize bir Azure Resource Manager hizmet bağlantısı oluşturun. Yönergeler için bkz . Microsoft Azure'a bağlanma. Azure Spring Apps hizmet örneğiniz için kullandığınız aboneliği seçtiğinizden emin olun.
Uygulama oluşturma ve dağıtma
Artık bir dizi görevi kullanarak projelerinizi derleyebilir ve dağıtabilirsiniz. Aşağıdaki bölümlerde Azure DevOps kullanarak uygulamanızı dağıtmak için çeşitli seçenekler gösterilmektedir.
İşlem hattı kullanarak dağıtma
İşlem hattı kullanımıyla dağıtım yapmak için şu adımları izleyin:
İşlem Hatları seçin, ardından Maven şablonuyla yeni bir işlem hattı oluşturun.
azure-pipelines.yml dosyasını düzenleyin ve
mavenPomFile
alanını complete/pom.xml olarak ayarlayın.Sağ taraftaki Yardımcıyı göster'i ve ardından Azure Spring Apps şablonunu seçin.
Azure Aboneliğiniz için oluşturduğunuz hizmet bağlantısını ve ardından Azure Spring Apps örneğinizi ve uygulama örneğinizi seçin.
Hazırlık Dağıtımını Kullan seçeneğini devre dışı bırakın.
Paket veya klasörütamamlamak/hedeflemek/spring-boot-complete-0.0.1-SNAPSHOT.jar olarak ayarlayın.
Bu görevi işlem hattınıza eklemek için Ekle'yi seçin.
İşlem hattı ayarlarınız aşağıdaki görüntüyle eşleşmelidir.
Ayrıca aşağıdaki işlem hattı şablonunu kullanarak projelerinizi derleyebilir ve dağıtabilirsiniz. Bu örnek ilk olarak uygulamayı derlemek için bir Maven görevi, ardından Azure Pipelines için Azure Spring Apps görevini kullanarak JAR dosyasını dağıtan ikinci bir görev tanımlar.
steps: - task: Maven@3 inputs: mavenPomFile: 'complete/pom.xml' - task: AzureSpringCloud@0 inputs: azureSubscription: '<your service connection name>' Action: 'Deploy' AzureSpringCloud: <your Azure Spring Apps service> AppName: <app-name> DeploymentType: 'Artifacts' UseStagingDeployment: false DeploymentName: 'default' Package: ./target/your-result-jar.jar
Kaydet ve çalıştır'ı seçin ve işin tamamlanmasını bekleyin.
Mavi-yeşil dağıtım stratejileri
Önceki bölümde gösterilen dağıtım, dağıtımdan hemen sonra uygulama trafiğini alır. Bu, herhangi bir müşteri trafiği almadan önce uygulamayı üretim ortamında test etmenizi sağlar.
İşlem hattı dosyasını düzenleme
Uygulamayı daha önce gösterildiği gibi derlemek ve bir hazırlama dağıtımına dağıtmak için aşağıdaki şablonu kullanın. Bu örnekte hazırlık dağıtımının zaten mevcut olması gerekir. Alternatif bir yaklaşım için bkz . Mavi-yeşil dağıtım stratejileri.
steps:
- task: Maven@3
inputs:
mavenPomFile: 'pom.xml'
- task: AzureSpringCloud@0
inputs:
azureSubscription: '<your service connection name>'
Action: 'Deploy'
AzureSpringCloud: <your Azure Spring Apps service>
AppName: <app-name>
DeploymentType: 'Artifacts'
UseStagingDeployment: true
Package: ./target/your-result-jar.jar
- task: AzureSpringCloud@0
inputs:
azureSubscription: '<your service connection name>'
Action: 'Set Production'
AzureSpringCloud: <your Azure Spring Apps service>
AppName: <app-name>
UseStagingDeployment: true
Sürümler bölümünü kullanma
Aşağıdaki adımlarda, Sürümler bölümünden mavi-yeşil dağıtımın nasıl etkinleştirileceği gösterilmektedir .
İşlem hatlarını seçin ve Maven derlemeniz ve yayınlama yapıtınız için yeni bir işlem hattı oluşturun.
- Kod konumunuz için Azure Repos Git'i seçin.
- Kodunuzun bulunduğu bir depo seçin.
- Maven şablonunu seçin ve dosyayı değiştirerek alanı tamamlandı/pom.xml olarak ayarlayın
mavenPomFile
. - Sağ taraftaki Yardımcıyı göster'i seçin ve Derleme yapıtlarını yayımla şablonunu seçin.
- Yayımlama yolunu complete/target/spring-boot-complete-0.0.1-SNAPSHOT.jar olarak ayarlayın.
- Kaydet ve çalıştır'ı seçin.
Yayınlar'ı seçin, ardından Yayın Oluştur'u seçin.
Yeni bir işlem hattı ekleyin ve bir iş oluşturmak için Boş iş seçeneğini seçin.
Aşamalar altında 1 iş, 0 görev satırını seçin
- Göreve bir görev eklemek için + öğesini seçin.
- Görevi işe eklemek için Azure Spring Apps şablonunu arayın ve Ekle'yi seçin.
- Görevi düzenlemek için Azure Spring Apps Dağıtımı: öğesini seçin.
- Bu görevi uygulamanızın bilgileriyle doldurun, ardından Hazırlama Dağıtımını Kullan'ı devre dışı bırakın.
- Yeni bir hazırlık dağıtımı yoksa Yeni hazırlama dağıtımı oluştur'u etkinleştirin ve Dağıtım'a bir ad girin.
- Bu görevi kaydetmek için Kaydet'i seçin.
- Tamam'ı seçin.
İşlem Hattı'nı seçin, ardından bir eser ekle'yi seçin.
- Kaynak (derleme işlem hattı) altında daha önce oluşturulan işlem hattını seçin.
- Ekle'yi ve ardından Kaydet'i seçin.
Aşamalar'ın altında 1 iş, 1 görev'i seçin.
Aşama 1'deki Azure Spring Apps Dağıtımı görevine gidin, ardından Paket veya klasör yanındaki üç noktayı seçin.
İletişim kutusunda spring-boot-complete-0.0.1-SNAPSHOT.jar'ı ve ardından Tamam'ı seçin.
Başka bir Azure Spring Apps görevi eklemek için + öğesini seçin.
Eylemi Üretim Dağıtımını Ayarla olarak değiştirin.
Dağıtımı otomatik olarak başlatmak için Kaydet'i ve ardından Yayın oluştur'u seçin.
Uygulamanızın geçerli yayın durumunu doğrulamak için Yayını görüntüle'yi seçin. Bu görev tamamlandıktan sonra uygulamanızın durumunu doğrulamak için Azure portalını ziyaret edin.
Kaynak koddan dağıtım
Ayrı bir derleme adımı olmadan doğrudan Azure'a dağıtmak için aşağıdaki işlem hattı şablonunu kullanın.
- task: AzureSpringCloud@0
inputs:
azureSubscription: '<your service connection name>'
Action: 'Deploy'
AzureSpringCloud: <your Azure Spring Apps service>
AppName: <app-name>
DeploymentType: 'Artifacts'
UseStagingDeployment: false
DeploymentName: 'default'
Package: $(Build.SourcesDirectory)
Özel görüntüden kurma
Mevcut bir kapsayıcı görüntüsünden doğrudan dağıtmak için aşağıdaki işlem hattı şablonunu kullanın.
- task: AzureSpringCloud@0
inputs:
azureSubscription: '<your service connection name>'
Action: 'Deploy'
AzureSpringCloud: '<your Azure Spring Apps service>'
AppName: '<app-name>'
DeploymentType: 'CustomContainer'
UseStagingDeployment: false
DeploymentName: 'default'
ContainerRegistry: 'docker.io' # or your Azure Container Registry, e.g: 'contoso.azurecr.io'
RegistryUsername: '$(username)'
RegistryPassword: '$(password)'
ContainerImage: '<your image tag>'
Oluşturucu dağıtma ve belirtme (yalnızca Kurumsal plan)
Azure Spring Apps Enterprise planını kullanıyorsanız, aşağıdaki örnekte gösterildiği gibi seçeneğini kullanarak dağıtım eylemleri için hangi oluşturucunun builder
kullanılacağını da belirtebilirsiniz. Daha fazla bilgi için Tanzu Derleme Hizmeti'ni Kullanma bölümüne bakın.
- task: AzureSpringCloud@0
inputs:
azureSubscription: '<your-service-connection-name>'
Action: 'Deploy'
AzureSpringCloud: '<your-Azure-Spring-Apps-service-instance-name>'
AppName: '<app-name>'
UseStagingDeployment: false
DeploymentName: 'default'
Package: './target/your-result-jar.jar'
Builder: '<your-Tanzu-Build-Service-Builder-resource>'