Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Poznámka:
Plány Basic, Standarda Enterprise vstoupily do důchodového období 17. března 2025. Další informace najdete v oznámení o vyřazení Azure Spring Apps.
Tento článek se vztahuje na:✅ Basic/Standard ✅ Enterprise
V tomto článku se dozvíte, jak pomocí úlohy Azure Spring Apps pro Azure Pipelines nasazovat aplikace.
Nástroje pro kontinuální integraci a průběžné doručování umožňují rychle nasazovat aktualizace do stávajících aplikací s minimálním úsilím a rizikem. Azure DevOps pomáhá organizovat a řídit tyto klíčové úlohy.
Následující video popisuje kompletní automatizaci pomocí nástrojů podle vašeho výběru, včetně Azure Pipelines.
Vytvoření připojení služby Azure Resource Manager
Nejprve vytvořte připojení služby Azure Resource Manager k projektu Azure DevOps. Pokyny najdete v tématu Připojení k Microsoft Azure. Nezapomeňte vybrat stejné předplatné, které používáte pro instanci služby Azure Spring Apps.
Sestavování a nasazování aplikací
Teď můžete vytvářet a nasazovat projekty pomocí řady úkolů. Následující šablona Azure Pipelines definuje proměnné, úlohu .NET Core pro sestavení aplikace a úlohu Azure Spring Apps pro nasazení aplikace.
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)
Nastavení instance Azure Spring Apps a projektu Azure DevOps
Nejprve pomocí následujícího postupu nastavte existující instanci Azure Spring Apps pro použití s Azure DevOps.
- Přejděte do instance Azure Spring Apps a pak vytvořte novou aplikaci.
- Přejděte na portál Azure DevOps a pak ve zvolené organizaci vytvořte nový projekt. Pokud nemáte organizaci Azure DevOps, můžete si ji zdarma vytvořit.
- Vyberte Úložiště a pak naimportujte ukázkový kód Spring Bootu do úložiště.
Vytvoření připojení služby Azure Resource Manager
Dále vytvořte připojení služby Azure Resource Manager k projektu Azure DevOps. Pokyny najdete v tématu Připojení k Microsoft Azure. Nezapomeňte vybrat stejné předplatné, které používáte pro instanci služby Azure Spring Apps.
Sestavování a nasazování aplikací
Teď můžete vytvářet a nasazovat projekty pomocí řady úkolů. Následující části ukazují různé možnosti nasazení aplikace pomocí Azure DevOps.
Nasazení pomocí pipeline
Pokud chcete nasadit pomocí pipeline, postupujte následujícím způsobem:
Vyberte Kanály a pak vytvořte nový kanál s šablonou Mavenu.
Upravte soubor azure-pipelines.yml a nastavte
mavenPomFilepole na complete/pom.xml.Na pravé straně vyberte Zobrazit asistenta a pak vyberte šablonu Azure Spring Apps.
Vyberte připojení služby, které jste vytvořili pro vaše předplatné Azure, poté vyberte instanci aplikací Azure Spring Apps a instanci aplikace.
Zakázat použití přípravného nasazení
Nastavte balíček nebo složku na complete/target/spring-boot-complete-0.0.1-SNAPSHOT.jar.
Výběrem možnosti Přidat přidáte tuto úlohu do kanálu.
Nastavení potrubí by se mělo shodovat s následujícím obrázkem.
Vaše projekty můžete také sestavit a nasadit pomocí následující šablony pracovního postupu. Tento příklad nejprve definuje úlohu Mavenu pro sestavení aplikace a druhou úlohu, která nasadí soubor JAR pomocí úlohy Azure Spring Apps pro Azure Pipelines.
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.jarVyberte Uložit a spusťte a počkejte na dokončení úlohy.
Nasazení s modrou zelenou barvou
Nasazení zobrazené v předchozí části přijímá provoz aplikací okamžitě po nasazení. To vám umožní otestovat aplikaci v produkčním prostředí předtím, než obdrží jakýkoliv zákaznický provoz.
Úprava souboru potrubí
Pokud chcete vytvořit aplikaci stejným způsobem, jak je znázorněno dříve, a nasadit ji do přípravného nasazení, použijte následující šablonu. V tomto příkladu už musí existovat přípravné nasazení. Alternativní přístup najdete v tématu strategií nasazení typu blue-green.
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
Použijte sekci Vydané verze
Následující kroky ukazují, jak povolit blue-green deployment v části Vydané verze.
Vyberte Pipeline a vytvořte nové pipeline pro vaše sestavení a publikování Mavenu.
- Jako umístění kódu vyberte Azure Repos Git.
- Vyberte úložiště, ve kterém se nachází váš kód.
-
Vyberte šablonu Maven a upravte soubor tak, abyste nastavili pole na
mavenPomFile. - Vyberte Zobrazit asistenta na pravé straně a vyberte šablonu Publikovat artefakty sestavení.
- Nastavte cestu k publikování na complete/target/spring-boot-complete-0.0.1-SNAPSHOT.jar.
- Zvolte Uložit a Spustit.
Vyberte Vydané verze a pak Vytvořte verzi.
Přidejte novou pipeline a vyberte prázdnou úlohu pro vytvoření úlohy.
V části Fáze vyberte řádek 1 úloha, 0 úkol.
- Vyberte +, abyste přidali úkol k úloze.
- Vyhledejte šablonu Azure Spring Apps a pak vyberte Přidat a přidejte úkol do úlohy.
- Vyberte Azure Spring Apps Deploy: k úpravě úlohy.
- Vyplňte tuto úlohu informacemi o aplikaci a pak zakažte použití přípravného nasazení.
- Povolte Vytvořit nové přípravné nasazení, pokud neexistuje, a poté zadejte název v Nasazení.
- Chcete-li uložit tento úkol, vyberte Uložit .
- Vyberte OK.
Vyberte Kanál a pak vyberte Přidat artefakt.
- V části Zdroj (kanál buildu) vyberte kanál vytvořený dříve.
- Vyberte Přidat a pak Uložit.
V části Fáze vyberte 1 úkol, 1 úloha.
Přejděte na úlohu Azure Spring Apps Deploy ve fáze 1, a pak vyberte ikonu se třemi tečkami vedle položky Balíček nebo složka.
V dialogovém okně vyberte spring-boot-complete-0.0.1-SNAPSHOT.jar a pak vyberte OK.
Vyberte +, abyste do úlohy přidali další Azure Spring Apps.
Změňte akci na Nastavení produkčního nasazení.
Vyberte Uložit a poté Vytvořte verzi, aby se nasazení spustilo automaticky.
Pokud chcete ověřit aktuální stav vydané verze aplikace, vyberte Zobrazit verzi. Po dokončení této úlohy přejděte na web Azure Portal a ověřte stav aplikace.
Nasazení ze zdroje
Pokud chcete nasadit přímo na Azure bez samostatného kroku sestavení, použijte následující šablonu potrubí.
- 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)
Nasazení z vlastního obrazu
Pokud chcete nasadit přímo z již existující image kontejneru, použijte následující šablonu pipeline.
- 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>'
Nasadit a specifikovat stavitele (pouze tarif Enterprise)
Pokud používáte plán Azure Spring Apps Enterprise, můžete také určit, který kompilační program se má použít pro nasazování pomocí volby builder, jak je znázorněno v následujícím příkladu. Další informace najdete v tématu Použití služby Tanzu Build Service.
- 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>'