Alkalmazástelepítések automatizálása az Azure Spring Appsben
Feljegyzés
Az Alapszintű, a Standard és a Nagyvállalati csomag 2025. március közepétől megszűnik, 3 éves nyugdíjazási időszakkal. Javasoljuk, hogy váltson az Azure Container Appsre. További információkért lásd az Azure Spring Apps kivonási bejelentését.
A standard felhasználás és a dedikált csomag 2024. szeptember 30-tól megszűnik, hat hónap után pedig teljes leállítással. Javasoljuk, hogy váltson az Azure Container Appsre. További információ: Azure Spring Apps Standard-használat migrálása és dedikált csomag az Azure Container Appsbe.
Ez a cikk a következőre vonatkozik: ✔️ Basic/Standard ✔️ Enterprise
Ez a cikk bemutatja, hogyan helyezhet üzembe alkalmazásokat az Azure Pipelines Azure Spring Apps-feladatával .
A folyamatos integrációs és folyamatos kézbesítési eszközök lehetővé teszik a frissítések gyors üzembe helyezését a meglévő alkalmazásokban minimális erőfeszítéssel és kockázattal. Az Azure DevOps segít ezeknek a kulcsfontosságú feladatoknak a rendszerezésében és szabályozásában.
Az alábbi videó a végpontok közötti automatizálást ismerteti az Ön által választott eszközökkel, beleértve az Azure Pipelinest is.
Azure Resource Manager-szolgáltatáskapcsolat létrehozása
Először hozzon létre egy Azure Resource Manager-szolgáltatáskapcsolatot az Azure DevOps-projekthez. Útmutatásért lásd: Csatlakozás a Microsoft Azure-hoz. Ügyeljen arra, hogy ugyanazt az előfizetést válassza ki, mint amit az Azure Spring Apps-szolgáltatáspéldányhoz használ.
Alkalmazások létrehozása és üzembe helyezése
Most már több feladattal is létrehozhatja és üzembe helyezheti projektjeit. Az alábbi Azure Pipelines-sablon változókat, .NET Core-feladatokat határoz meg az alkalmazás létrehozásához, valamint egy Azure Spring Apps-feladatot az alkalmazás üzembe helyezéséhez.
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-példány és Azure DevOps-projekt beállítása
Először az alábbi lépésekkel állítson be egy meglévő Azure Spring Apps-példányt az Azure DevOpshoz való használatra.
- Nyissa meg az Azure Spring Apps-példányt, majd hozzon létre egy új alkalmazást.
- Nyissa meg az Azure DevOps portált, majd hozzon létre egy új projektet a választott szervezet alatt. Ha nem rendelkezik Azure DevOps-szervezettel, ingyenesen létrehozhat egyet.
- Válassza az Adattár lehetőséget, majd importálja a Spring Boot demókódot az adattárba.
Azure Resource Manager-szolgáltatáskapcsolat létrehozása
Ezután hozzon létre egy Azure Resource Manager-szolgáltatáskapcsolatot az Azure DevOps-projekthez. Útmutatásért lásd: Csatlakozás a Microsoft Azure-hoz. Ügyeljen arra, hogy ugyanazt az előfizetést válassza ki, mint amit az Azure Spring Apps-szolgáltatáspéldányhoz használ.
Alkalmazások létrehozása és üzembe helyezése
Most már több feladattal is létrehozhatja és üzembe helyezheti projektjeit. Az alábbi szakaszok az alkalmazás Azure DevOps használatával történő üzembe helyezésének különböző lehetőségeit mutatják be.
Üzembe helyezés folyamattal
Folyamat használatával történő üzembe helyezéshez kövesse az alábbi lépéseket:
Válassza a Folyamatok lehetőséget, majd hozzon létre egy új folyamatot egy Maven-sablonnal.
A azure-pipelines.yml fájl szerkesztésével állítsa a
mavenPomFile
mezőt "complete/pom.xml" értékre.Válassza az Asszisztens megjelenítése lehetőséget a jobb oldalon, majd válassza az Azure Spring Apps-sablont .
Válassza ki az Azure-előfizetéshez létrehozott szolgáltatáskapcsolatot, majd válassza ki az Azure Spring Apps-példányt és az alkalmazáspéldányt.
Tiltsa le az előkészítési üzembe helyezés használatát.
A Csomag vagy mappa beállítása teljes/cél/spring-boot-complete-0.0.1-SNAPSHOT.jar.
Válassza a Hozzáadás lehetőséget a feladat folyamathoz való hozzáadásához.
A folyamatbeállításoknak meg kell egyeznie az alábbi képpel.
A projekteket a következő folyamatsablonnal is létrehozhatja és üzembe helyezheti. Ez a példa először egy Maven-feladatot határoz meg az alkalmazás létrehozásához, majd egy második feladatot, amely üzembe helyezi a JAR-fájlt az Azure Pipelines Azure Spring Apps-feladatával.
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
Válassza a Mentés és futtatás lehetőséget, majd várja meg, amíg a feladat befejeződik.
Kék-zöld környezetek
Az előző szakaszban látható üzembe helyezés azonnal megkapja az alkalmazás forgalmát az üzembe helyezés után. Ez lehetővé teszi, hogy tesztelje az alkalmazást az éles környezetben, mielőtt bármilyen ügyfélforgalmat fogad.
A folyamatfájl szerkesztése
Ha az alkalmazást a korábban bemutatott módon szeretné létrehozni, és üzembe szeretné helyezni egy átmeneti üzembe helyezésben, használja az alábbi sablont. Ebben a példában az átmeneti üzembe helyezésnek már léteznie kell. Alternatív megközelítésért tekintse meg a kék-zöld üzembehelyezési stratégiákat.
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
A Kiadások szakasz használata
Az alábbi lépések bemutatják, hogyan engedélyezheti a kék-zöld üzembe helyezést a Kiadások szakaszban.
Válassza a Folyamatok lehetőséget, és hozzon létre egy új folyamatot a Maven buildjéhez és közzétételéhez.
- A kód helyéhez válassza az Azure Repos Git lehetőséget.
- Válasszon ki egy adattárat, ahol a kód található.
- Válassza ki a Maven-sablont , és módosítsa a fájlt a
mavenPomFile
mező beállításáhozcomplete/pom.xml
. - A jobb oldalon válassza az Asszisztens megjelenítése lehetőséget, és válassza a Buildösszetevők közzététele sablont .
- Adja meg a közzététel elérési útját teljes/cél/spring-boot-complete-0.0.1-SNAPSHOT.jar.
- Válassza a Mentés és futtatás lehetőséget.
Válassza a Kiadások, majd a Kiadás létrehozása lehetőséget.
Adjon hozzá egy új folyamatot, és válassza az Üres feladat lehetőséget a feladat létrehozásához.
A Szakaszok területen válassza ki az 1. sor feladatát, 0 feladatot
- Jelölje ki a + feladatot a feladathoz való hozzáadásához.
- Keresse meg az Azure Spring Apps-sablont, majd a Hozzáadás gombra kattintva adja hozzá a feladatot a feladathoz.
- Válassza az Azure Spring Apps Deploy(Üzembe helyezés) lehetőséget a feladat szerkesztéséhez.
- Töltse ki ezt a feladatot az alkalmazás adataival, majd tiltsa le az átmeneti üzembe helyezés használatát.
- Ha nem létezik, engedélyezze az új átmeneti üzembe helyezés létrehozását, majd adjon meg egy nevet az üzembe helyezésben.
- A feladat mentéséhez válassza a Mentés lehetőséget.
- Kattintson az OK gombra.
Válassza a Folyamat lehetőséget, majd válassza az Összetevő hozzáadása lehetőséget.
- A Forrás (buildfolyamat) területen válassza ki a korábban létrehozott folyamatot.
- Válassza a Hozzáadás, majd a Mentés lehetőséget.
Válassza ki az 1 feladatot, 1 feladatot a Szakaszok területen.
Lépjen az Azure Spring Apps Üzembe helyezési feladatához az 1. fázisban, majd válassza ki a három pontot a Csomag vagy mappa mellett.
Válassza spring-boot-complete-0.0.1-SNAPSHOT.jar a párbeszédpanelen, majd kattintson az OK gombra.
Válassza ki a + lehetőséget, ha egy másik Azure Spring Apps-feladatot szeretne hozzáadni a feladathoz.
Módosítsa a műveletet az éles üzembe helyezés beállítására.
Válassza a Mentés, majd a Kiadás létrehozása lehetőséget az üzembe helyezés automatikus elindításához.
Az alkalmazás aktuális kiadási állapotának ellenőrzéséhez válassza a Kiadás megtekintése lehetőséget. A feladat befejezése után látogasson el az Azure Portalra az alkalmazás állapotának ellenőrzéséhez.
Üzembe helyezés forrásból
Ha külön buildelési lépés nélkül szeretne közvetlenül üzembe helyezni az Azure-ban, használja a következő folyamatsablont.
- 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)
Üzembe helyezés egyéni rendszerképből
Ha közvetlenül egy meglévő tárolórendszerképből szeretne üzembe helyezni, használja az alábbi folyamatsablont.
- 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>'
Szerkesztő üzembe helyezése és megadása (csak vállalati csomag esetén)
Ha az Azure Spring Apps Enterprise-csomagot használja, megadhatja azt is, hogy melyik szerkesztőt használja a műveletek üzembe helyezéséhez az builder
alábbi példában látható módon. További információ: A Tanzu buildszolgáltatás használata.
- 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>'