Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
Azure DevOps Services | Azure DevOps Server | Azure DevOps Server 2022
Az Azure Pipelines használatával létrehozhatja, tesztelheti és automatikusan üzembe helyezheti a webalkalmazást egy Azure-alkalmazás Service Web App-tárolóban Linuxon. Ebből a cikkből megtudhatja, hogyan használhatja a YAML-et vagy a klasszikus folyamatokat a következőre:
- Docker-rendszerkép létrehozása és közzététele az Azure Container Registryben.
- Azure-webalkalmazás létrehozása.
- Konténer üzembe helyezése az Azure App Service-ben.
- Üzembe helyezés az üzembehelyezési pontokon.
Előfeltételek
| termék | Követelmények |
|---|---|
| Azure DevOps | - Egy Azure DevOps-szervezet és -projekt.
Hozzon létre egyet ingyen. - Engedélyek: – A projekt összes folyamatához való hozzáférés biztosításához: A Projektgazdák csoport tagjának kell lennie. - Szolgáltatáskapcsolatok létrehozásához: A szolgáltatáskapcsolatokhozrendszergazdai vagy létrehozói szerepkör szükséges. – Képes futtatni folyamatokat a Microsoft által üzemeltetett ügynökökön. Vásárolhat párhuzamos feladatot , vagy ingyenes szintet kérhet. |
| GitHub | - Egy GitHub-fiók . |
| Kék | - Egy Azure Container Registry. Hozzon létre egy Azure-tárolóregisztrációs adatbázist , ha még nincs ilyenje. |
A kód letöltése
Készíts másolatot a következő mintapéldányról a GitHub-on.
https://github.com/spring-guides/gs-spring-boot-docker.git
Docker-rendszerkép létrehozása és közzététele az Azure Container Registryben
A szakasz sikeres elvégzéséhez rendelkeznie kell egy Azure Container Registry-beállításjegyzékel. A részletekért tekintse meg az előfeltételek szakaszt.
Jelentkezzen be az Azure DevOps-szervezetbe, és lépjen a projekthez.
Válassza a Folyamatok, majd az Új folyamat lehetőséget.
Válassza a GitHubot , amikor a rendszer kéri a forráskód helyét, majd válassza ki az adattárat.
Válassza ki a Dockert: hozzon létre és küldjön le egy lemezképet az Azure Container Registry-folyamatsablonba .
Válassza ki az Azure-előfizetését, majd válassza a Folytatás lehetőséget.
Válassza ki a Tárolóregisztrációs adatbázist a legördülő menüből, majd válassza az Ellenőrzés és konfigurálás lehetőséget.
Tekintse át a folyamat YAML-sablont, majd válassza a Mentés és futtatás lehetőséget a Docker-rendszerkép létrehozásához és közzétételéhez az Azure Container Registryben.
trigger: - main resources: - repo: self variables: # Container registry service connection established during pipeline creation dockerRegistryServiceConnection: '{{ containerRegistryConnection.Id }}' imageRepository: 'javascriptdocker' containerRegistry: 'sampleappcontainerregistry.azurecr.io' dockerfilePath: '$(Build.SourcesDirectory)/app/Dockerfile' tag: '$(Build.BuildId)' # Agent VM image name vmImageName: 'ubuntu-latest' stages: - stage: Build displayName: Build and push stage jobs: - job: Build displayName: Build pool: vmImage: $(vmImageName) steps: - task: Docker@2 displayName: Build and push an image to container registry inputs: command: buildAndPush repository: $(imageRepository) dockerfile: $(dockerfilePath) containerRegistry: $(dockerRegistryServiceConnection) tags: | $(tag)Ha a közzétett Docker-rendszerképet a folyamat futtatása után szeretné megtekinteni, nyissa meg a tárolóregisztrációs adatbázist az Azure Portalon, majd válassza az Adattárak lehetőséget.
Ha a lemezképet a tárolóregisztrációs adatbázisból szeretné üzembe helyezni, engedélyezze a rendszergazdai felhasználói fiókot. Nyissa meg a tárolóregisztrációs adatbázist az Azure Portalon, és válassza az Access-kulcsokat. Ezután válassza a váltógombot a rendszergazdai felhasználó engedélyezéséhez.
Webalkalmazás létrehozása
Lépjen az Azure Portalra.
Válassza a Erőforrás létrehozása>Tárolók, majd válassza a Web App for Containers lehetőséget.
Adja meg az új webalkalmazás nevét, és hozzon létre egy új erőforráscsoportot. Válassza a Linuxot az operációs rendszerhez.
A Tarifacsomagok szakaszban válassza ki az F1 Ingyenes csomagot.
Válassza a Véleményezés és létrehozás lehetőséget. Tekintse át a konfigurációt, és ha elkészült, válassza a Létrehozás lehetőséget .
Üzembe helyezés a Web App for Containersben
Ebben a YAML-ben létrehoz és leküld egy Docker-lemezképet egy tárolóregisztrációs adatbázisba, majd üzembe helyezi azt az Azure Web App for Containersben. A buildelési szakaszban docker-rendszerképet hozhat létre és küldhet le egy Azure Container Registrybe a Docker@2 feladattal. A AzureWebAppContainer@1 feladat üzembe helyezi a képfájlt a Web App for Containers nevű szolgáltatásba.
trigger:
- main
resources:
- repo: self
variables:
## Add this under variables section in the pipeline
azureSubscription: <Name of the Azure subscription>
appName: <Name of the Web App>
containerRegistry: <Name of the Azure container registry>
dockerRegistryServiceConnection: '4fa4efbc-59af-4c0b-8637-1d5bf7f268fc'
imageRepository: <Name of image repository>
dockerfilePath: '$(Build.SourcesDirectory)/Dockerfile'
tag: '$(Build.BuildId)'
vmImageName: 'ubuntu-latest'
stages:
- stage: Build
displayName: Build and push stage
jobs:
- job: Build
displayName: Build
pool:
vmImage: $(vmImageName)
steps:
- task: Docker@2
displayName: Build and push an image to container registry
inputs:
command: buildAndPush
repository: $(imageRepository)
dockerfile: $(dockerfilePath)
containerRegistry: $(dockerRegistryServiceConnection)
tags: |
$(tag)
## Add the below snippet at the end of your pipeline
- task: AzureWebAppContainer@1
displayName: 'Azure Web App on Container Deploy'
inputs:
azureSubscription: $(azureSubscription)
appName: $(appName)
containers: $(containerRegistry)/$(imageRepository):$(tag)
Üzembe helyezés telepítési példányra
Konfigurálja úgy az Azure Web App-tárolót, hogy több tárolóhely legyen. A szlotok lehetővé teszik az alkalmazás biztonságos üzembe helyezését és tesztelését, mielőtt elérhetővé tenné az ügyfelek számára. További információ az előkészítési környezetek létrehozásáról.
Az alábbi YAML-kódrészlet bemutatja, hogyan lehet üzembe helyezni egy tesztkörnyezetbe, majd áttérni egy éles környezetbe.
- task: AzureWebAppContainer@1
inputs:
azureSubscription: '<Azure service connection>'
appName: '<Name of the web app>'
containers: $(containerRegistry)/$(imageRepository):$(tag)
deployToSlotOrASE: true
resourceGroupName: '<Name of the resource group>'
slotName: staging
- task: AzureAppServiceManage@0
inputs:
azureSubscription: '<Azure service connection>'
WebAppName: '<name of web app>'
ResourceGroupName: '<name of resource group>'
SourceSlot: staging
SwapWithProduction: true
GYIK
K: Hogyan találom meg a Docker-beállításjegyzék hitelesítő adatait?
Válasz: Nyissa meg az Azure Portalt, és válassza ki a Web App for Containers alkalmazást. Válassza a Konfigurációs>alkalmazás beállításai lehetőséget, majd válassza az érték megjelenítéséhez.