Share via


AzureContainerApps@0 - Azure Container Apps Deploy v0 görevi

Azure Container Apps'i derlemek ve dağıtmak için bir Azure DevOps Görevi.

Syntax

# Azure Container Apps Deploy v0
# An Azure DevOps Task to build and deploy Azure Container Apps.
- task: AzureContainerApps@0
  inputs:
  # advanced
    #workingDirectory: # string. Alias: cwd. Working Directory. 
    #appSourcePath: # string. Application source path. 
    azureSubscription: # string. Alias: connectedServiceNameARM. Required. Azure Resource Manager connection. 
    #acrName: # string. Azure Container Registry name. 
    #acrUsername: # string. Azure Container Registry username. 
    #acrPassword: # string. Azure Container Registry password. 
    #dockerfilePath: # string. Dockerfile path. 
    #imageToBuild: # string. Docker image to build. 
    #imageToDeploy: # string. Docker image to deploy. 
    #containerAppName: # string. Azure Container App name. 
    #resourceGroup: # string. Azure resource group name. 
    #containerAppEnvironment: # string. Azure Container App environment. 
    #runtimeStack: # string. Application runtime stack. 
    #targetPort: # string. Application target port. 
    #location: # string. Location of the Container App. 
    #environmentVariables: # string. Environment variables. 
    #ingress: # string. Ingress setting. 
    #yamlConfigPath: # string. YAML configuration file path. 
    #disableTelemetry: # boolean. Disable telemetry.

Girişler

workingDirectory - Çalışma Dizini
Giriş diğer adı: cwd. string.

Betiğin çalıştırıldığı geçerli çalışma dizini. Boş, deponun (derleme) veya yapıtların (yayın) köküdür ve $(System.DefaultWorkingDirectory).


appSourcePath - Uygulama kaynak yolu
string.

Oluşturulacak kaynak uygulama kodunun çalıştırıcısı üzerindeki mutlak yol. Sağlanmadıysa, Container App'in başvuracak bir görüntüsü olduğundan emin olmak için 'imageToDeploy' bağımsız değişkeni sağlanmalıdır.

ACR'ye acrName yeni bir görüntü gönderirken ve appSourcePath görev girişleri gereklidir.


azureSubscription - Azure Resource Manager bağlantısı
Giriş diğer adı: connectedServiceNameARM. string. Gereklidir.

Dağıtım için bir Azure Resource Manager hizmeti bağlantısı belirtin. Bu hizmet bağlantısı, kullanıcının Container App'in oluşturulacağı/güncelleştirileceği Azure Aboneliğine bağlanmalıdır. Bu hizmet bağlantısının abonelik içinde bu değişiklikleri yapmak için uygun izinleri olmalıdır , örneğin Katkıda Bulunan rolü.


acrName - Azure Container Registry adı
string.

Çalıştırılabilir uygulama görüntüsünün gönderileceği Azure Container Registry adı.

ACR'ye acrName yeni bir görüntü gönderirken ve appSourcePath görev girişleri gereklidir.


acrUsername - Azure Container Registry kullanıcı adı
string.

Sağlanan Azure Contrainer Kayıt Defteri'nde anında iletme isteklerinin kimliğini doğrulamak için kullanılan kullanıcı adı. Sağlanmazsa, 'az acr login' aracılığıyla bir erişim belirteci oluşturulur ve isteklerin kimliğini doğrulamak için 'docker login' öğesine sağlanır.


acrPassword - parolayı Azure Container Registry
string.

Sağlanan Azure Contrainer Kayıt Defteri'nde anında iletme isteklerinin kimliğini doğrulamak için kullanılan parola. Sağlanmazsa, 'az acr login' aracılığıyla bir erişim belirteci oluşturulur ve isteklerin kimliğini doğrulamak için 'docker login' öğesine sağlanır.


dockerfilePath - Dockerfile yolu
string.

Sağlanan uygulama kaynağındaki Dockerfile'a göreli yol (_without dosya ön ekleri (aşağıdaki Örneklere bakın), daha sonra ACR'ye gönderilen ve Container App'e dağıtılan görüntüyü oluşturmak için kullanılması gerekir. Sağlanmazsa, bu görev sağlanan uygulama kaynağının kökünde 'Dockerfile' adlı bir dosya olup olmadığını denetler ve görüntüyü oluşturmak için bunu kullanır. Aksi takdirde, görüntüyü oluşturmak için Oryx++ Oluşturucusu kullanılır.


imageToBuild - Derlemek için Docker görüntüsü
string.

Oluşturulacak, ACR'ye gönderilen ve bu görev tarafından Container App'e dağıtılacak görüntünün özel adı. Not: Bu görüntü adı ACR sunucusunu içermelidir; örneğin, <acr-name>.azurecr.io/<repo>:<tag>. Bu bağımsız değişken sağlanmazsa, biçiminde <acr-name>.azurecr.io/ado-task/container-app:<build-id>.<build-number>varsayılan bir görüntü adı oluşturulur.


imageToDeploy - Dağıtılacak Docker görüntüsü
string.

ACR'ye zaten gönderilen ve bu görev tarafından Container App'e dağıtılacak görüntünün adı. Not: Görüntü adı ACR sunucusunu içermelidir; örneğin, <acr-name>.azurecr.io/<repo>:<tag>. Bu bağımsız değişken sağlanmazsa, 'imageToBuild' bağımsız değişkeni için sağlanan (veya belirlenen) değer kullanılır. Bu görüntü çekme için kimlik doğrulaması gerektiren bir ACR örneğinde bulunursa, acrName ACR örneğine yönelik isteklerin acrUsername kimliğini doğrulamak için bağımsız değişken veya ve acrPassword bağımsız değişkenleri sağlanabilir.


containerAppName - Azure Container App adı
string.

Oluşturulacak veya güncelleştirilecek Azure Container App'in adı. Sağlanmazsa, bu değer biçiminde ado-task-app-<build-id>-<build-number>olur.


resourceGroup - Azure kaynak grubu adı
string.

Azure Container App'in oluşturulacağı (veya şu anda içinde bulunduğu) kaynak grubu. Sağlanmazsa, bu değer biçiminde <container-app-name>-rgolur.


containerAppEnvironment - Azure Container App ortamı
string.

Uygulamayla kullanılacak Azure Container App ortamının adı. Sağlanmazsa, Kapsayıcı Uygulamasının kaynak grubundaki mevcut bir ortam kullanılır, aksi takdirde biçiminde <container-app-name>-envbir ortam oluşturulur.


runtimeStack - Uygulama çalışma zamanı yığını
string.

Container App'e dağıtılan son çalıştırılabilir uygulama görüntüsünde kullanılan platform sürümü yığını. Değer, oluşumunda <platform>:<version>sağlanmalıdır. Sağlanmadıysa, bu değer Oryx tarafından sağlanan uygulamanın içeriğine göre belirlenir. Oryx için desteklenen çalışma zamanı yığınları hakkında daha fazla bilgi için lütfen bu belgeye bakın.


targetPort - Uygulama hedef bağlantı noktası
string.

Container App'in dinleyeceği hedef bağlantı noktası. Sağlanmazsa, bu değer Python uygulamaları için "80" ve desteklenen diğer tüm platformlar için "8080" olur.


location - Kapsayıcı Uygulamasının Konumu
string.

Kapsayıcı Uygulamasının (ve oluşturulan diğer kaynakların) dağıtılacağı konum.


environmentVariables - Ortam değişkenleri
string.

Kapsayıcı için ortam değişkenlerinin listesi. 'key=value' biçiminde boşlukla ayrılmış değerler. Varolan değerleri temizlemek için boş dize. Gizli diziye başvurmak için 'secretref:' ön ek değeri.


ingress - Giriş ayarı
string.

Olası seçenekler: dış, iç, devre dışı. olarak ayarlanırsa external (Kapsayıcı Uygulaması oluşturulurken sağlanmazsa varsayılan değer), kapsayıcı uygulaması yapılandırılan uygulama ortamı uç noktasına bağlı olarak İnternet'ten veya sanal ağdan görünür. olarak ayarlanırsa internal, Kapsayıcı Uygulaması yalnızca uygulama ortamında görünür. olarak ayarlanırsa disabled, bu Kapsayıcı Uygulaması için giriş devre dışı bırakılır ve bir HTTP veya TCP uç noktası olmaz.


yamlConfigPath - YAML yapılandırma dosyası yolu
string.

Kapsayıcı Uygulamasının yapılandırmasını ayrıntılarıyla yaml dosyasının tam yolu (yürütülen Azure Pipelines aracısının üzerinde).

resourceGroup YAML yapılandırma dosyasındaki özellik kullanılmaz; bunun değeri göreve sağlanan bağımsız değişkenden resourceGroup veya görev tarafından oluşturulan varsayılan kaynak grubu adından gelir. YAML yapılandırma dosyasında sağlanan diğer tüm özellikler, bu göreve bağımsız değişken olarak sağlanan değerleri geçersiz kılar; Örneğin, bağımsız değişken göreve sağlanmışsa ve name özellik YAML yapılandırma dosyasında ayarlanmışsacontainerAppName, name Kapsayıcı Uygulamasını oluştururken veya güncelleştirirken YAML dosyasındaki özellik kullanılır.

Görüntü ve uygulama kaynağı bağımsız değişkenleri (örneğin, appSourcePath, imageToDeploy) kapsayıcı uygulaması tarafından kullanılan bir görüntüyü derlemek ve/veya göndermek için kullanılmaya devam eder; bu durumda, sağlanan YAML yapılandırma dosyasının (veya imageToBuildsenaryonuza bağlı olarak) tarafından imageToDeploy belirtilen görüntüye başvurması gerekir.

Yeni bir Kapsayıcı Uygulaması oluştururken, Kapsayıcı Uygulaması oluşturulduğunda YAML yapılandırma dosyasında listelenen tüm özellikler (yukarıda belirtilenler dışında resourceGroup ) ayarlanır. Mevcut bir Kapsayıcı Uygulamasını güncelleştirirken, Kapsayıcı Uygulamasında yalnızca dosyada listelenen özellikler güncelleştirilir.

Şu anda YAML dosyası, kullanılan kapsayıcı kayıt defteri için yönetilen kimlik kimlik doğrulamasının ayarlanmasını desteklememektedir; Bu sorun hakkında daha fazla bilgi için lütfen bu GitHub sorununa bakın.

Bağımsız değişkenin yamlConfigPath sağlandığı durumlarda, YAML dosyası ya da create ilgili az containerapp komuta geçirilirupdate senaryonuza bağlı olarak. YAML yapılandırma dosyası sağlandığında hedeflenen davranış hakkında daha fazla bilgi için, ilgili komutlar için bağlantılı belgelere bakın.

YAML yapılandırma dosyasının yapısı hakkında daha fazla bilgi için lütfen bu siteyi ziyaret edin.


disableTelemetry - Telemetriyi devre dışı bırakma
boolean.

'true' olarak ayarlanırsa, bu Azure DevOps Görevi tarafından hiçbir telemetri toplanmaz. 'false' olarak ayarlanırsa veya bu bağımsız değişken sağlanmazsa, bu Azure DevOps Görevi tarafından hedeflenen Container App derleme ve dağıtma senaryosu hakkında telemetri Microsoft'a gönderilir.


Görev denetim seçenekleri

Tüm görevlerde görev girişlerine ek olarak denetim seçenekleri vardır. Daha fazla bilgi için bkz . Denetim seçenekleri ve ortak görev özellikleri.

Çıkış değişkenleri

Yok.

Açıklamalar

Bu Azure Pipelines Görevi, kullanıcıların daha önce oluşturulmuş bir görüntü, bir görüntünün oluşturulabileceği bir Dockerfile sağlayarak veya kullanıcı için çalıştırılabilir bir uygulama görüntüsü oluşturmak için oluşturucu kullanarak uygulama kaynaklarını Azure Pipelines iş akışlarında bir Azure Container App'e kolayca dağıtmasını sağlar.

Görev aşağıdaki iki kullanım desenini içerir.

  • ACR'ye görüntü gönderme - ACR'yeacrName yeni bir görüntü gönderirken ve appSourcePath görev girişleri gereklidir.
  • Daha önce gönderilen bir görüntüyü dağıtma - Daha önce gönderilen bir görüntüyü dağıtırken görev imageToDeploy girişi gerekir. Bu görüntü çekme için kimlik doğrulaması gerektiren bir ACR örneğinde bulunursa, acrName ACR örneğine yönelik isteklerin acrUsername kimliğini doğrulamak için bağımsız değişken veya ve acrPassword bağımsız değişkenleri sağlanabilir.

Not

Bu görevin meta verilerinde hiçbir görev girişi resmi olarak "gerekli" olarak işaretlenmese de, bu görevin iki ana kullanım başlatıcıdan birini kullanarak başarıyla çalışması için bazı girişlerin sağlanması gerekir.

Sağlanan uygulama kaynağında dockerfile bulunamaz veya sağlanmamışsa, bu görev tarafından aşağıdaki adımlar gerçekleştirilir:

  • Çalıştırılabilir bir uygulama görüntüsü oluşturmak üzere Oryx kullanarak uygulama kaynağını oluşturmak için Oryx ++ Oluşturucusu'nu kullanır
  • Bu çalıştırılabilir uygulama görüntüsünü sağlanan Azure Container Registry
  • Bu görüntüyü temel alan bir Kapsayıcı Uygulaması oluşturur veya güncelleştirir

Uygulama kaynağında bir Dockerfile bulunur veya bulunursa, oluşturucu kullanılmaz ve görüntü bir çağrısıyla docker build oluşturulur ve Kapsayıcı Uygulaması bu görüntüye göre oluşturulur veya güncelleştirilir.

Önceden oluşturulmuş bir görüntü ACR örneğine zaten gönderildiyse ve bu göreve sağlandıysa, uygulama kaynağı gerekmez ve kapsayıcı uygulamasını oluştururken veya güncelleştirirken görüntü kullanılır.

Bu görevi Microsoft tarafından barındırılan aracılarda çalıştırma

Bu görevi Microsoft tarafından barındırılan bir aracıda çalıştırıyorsanız, bu görevin aşağıdaki işletim sistemleriyle başarıyla çalıştırılamadığını fark edebilirsiniz:

  • Mac OS
    • Microsoft tarafından sağlanan macOS runners Docker ile birlikte yüklenmez ( burada daha fazla bilgi); sonuç olarak, bu görev, oluşturulan çalıştırılabilir uygulama görüntülerini ACR'ye gönderme gibi herhangi bir docker komutu çalıştıramaz.
  • Windows
    • Microsoft tarafından sağlanan Windows çalıştırıcıları Docker yüklü olarak gelir, ancak varsayılan olarak Linux tabanlı görüntüler indirilemiyor; sonuç olarak, bu görev sağlanan uygulama kaynağından çalıştırılabilir uygulama görüntüleri oluşturmak için Oryx oluşturucusunu aşağı çekemez.

Daha fazla bilgi için lütfen aşağıdaki Docker önkoşulları bölümüne bakın.

Veri/Telemetri Toplama Bildirimi

Varsayılan olarak, bu Azure DevOps Görevi Microsoft için aşağıdaki veri parçalarını toplar:

  • Kullanıcı tarafından hedeflenen Kapsayıcı Uygulaması derleme ve dağıtma senaryosu
    • Örneğin, Oryx++ Builder'ı kullandı, sağlanan/bulunan bir Dockerfile kullandı veya önceden derlenmiş bir görüntü sağladı
    • Not: Görüntü adı toplanmaz
  • Görevin işleme süresi (milisaniye cinsinden)
  • Görevin sonucu
    • örneğin, başarılı veya başarısız
  • Oryx++ Oluşturucusu kullanılıyorsa, Oryx kullanarak sağlanan uygulamayı oluşturmaya ilişkin olaylar ve ölçümler

Veri toplamayı devre dışı bırakmak istiyorsanız, bağımsız değişkenini disableTelemetry olarak trueayarlayın.

Önkoşullar

Bu görevi çalıştırmadan önce, bu göreve sağlanan bağımsız değişkenlere bağlı olarak Azure kaynakları ve Azure DevOps hizmet bağlantısı gereklidir veya isteğe bağlıdır.

Azure DevOps Hizmeti Bağlantısı

Azure'a dağıtmak için, ayarlar bölümündeki Hizmetler sekmesi kullanılarak bir Azure aboneliğinin Team Foundation Server'a veya Azure Pipelines'a bağlanması gerekir. Hesap Yönetimi ekranını (ekranın sağ üst köşesindeki dişli simgesi) açıp Hizmetler Sekmesine tıklayarak Derleme veya Release Management tanımında kullanılacak Azure aboneliğini ekleyin.

ARM hizmet uç noktasını oluşturun ve 'Azure Resource Manager' uç noktası türünü kullanın; hizmet bağlantıları oluşturma hakkında daha fazla bilgi için lütfen bu belgeyi izleyin.

Azure CLI

Bu görev, görevin yürütülmesi boyunca çeşitli komutları yürütmek için Azure Pipelines aracısına Azure CLI'nın yüklenmesini gerektirir. Azure CLI'yi aracıya yükleme hakkında daha fazla bilgi için lütfen bu belgeye bakın. Azure CLI'nın yüklü olduğu makinede bir aracı zaten çalışıyorsa, ilgili tüm ortam değişkenlerinin güncelleştirilmesi için aracıyı yeniden başlattığınızdan emin olun.

Docker

Bu görev, sağlanan Azure Container Registry görüntüleri göndermek için Azure Pipelines aracısına Docker'ın yüklenmesini gerektirir. Aracıya Docker yükleme hakkında daha fazla bilgi için lütfen bu belgeye bakın.

Buna ek olarak, bu görevi bir Windows aracısı ile çalıştıran kullanıcılar Linux tabanlı görüntüleri çekememeyle ilgili bir sorunla karşılaşabilir; Bu sorunu çözmek için lütfen bu siteyiDockerCli.exe ziyaret edin veya dosyayı aracınızda (genellikle Program Files\Docker\Docker klasörde) bulun ve komutunu çalıştırın

& `.\DockerCli.exe` -SwitchDaemon

Bu görevi çalıştıran aracıda Docker yüklü değilse, aşağıdaki senaryolar hala etkindir:

  • Kapsayıcı Uygulamasının dağıttığı imageToDeploy bağımsız değişkene önceden oluşturulmuş bir görüntü sağlama

Docker aracıdaysa ancak Linux tabanlı görüntülerle çalışamıyorsa, aşağıdaki senaryolar hala etkindir:

  • Kapsayıcı Uygulamasının dağıttığı imageToDeploy bağımsız değişkene önceden oluşturulmuş bir görüntü sağlama
  • Dockerfile Kapsayıcı Uygulaması ile derlenecek ve dağıtılacak uygulama kaynağınızın bir parçası olarak sağlama
    • Not: Linux Dockerfile tabanlı görüntü katmanları olamaz

paket CLI'sı

Paket CLI'sı Cloud Native Buildpacks projesi tarafından korunur ve bu görev tarafından uygulama kaynak kodu sağlandığında ve ek Dockerfile sağlanmamışsa veya bulunamadığında kullanıcı için çalıştırılabilir uygulama görüntüleri oluşturmak için kullanılır. Oryx tarafından, bu göreve sağlanan uygulama kaynak kodunu almak ve daha sonra bir görüntü kayıt defterine gönderilebilen ve uygulamayı derlemek ve çalıştırmak için Kapsayıcı Uygulaması içinde kullanılabilecek bir görüntü oluşturmak için bir oluşturucu oluşturuldu.

Görevi yürüten Azure Pipelines aracısına paket CLI'sinin kararlı bir sürümü yüklenir ve bu aracının temel işletim sistemine bağlı olarak, yüklemeye yardımcı olmak için farklı araçlardan yararlanılır:

  • Windows çalıştırıcılarında:
    • Aşağıdakileri yapmak için bir dizi PowerShell komutu yürütülür:
      • Klasör zaten yoksa aracının pack geçici klasöründe bir pack klasör oluşturur
      • Paket CLI'sini .zip bu pack klasöre indirir
      • İçeriği bundan .zip çıkarın ve klasöre pack yerleştirir
      • Şu öğeyi siler: .zip
  • Windows dışı çalıştırıcılarda:
    • curlyürütülebilir dosyayı içeren pack dosyayı .tgz aşağı çekmek için kullanılır
    • tar sıkıştırmasını açmak .tgz ve pack yürütülebilir dosyayı /usr/local/bin

Azure Container Registry

Kullanıcının kapsayıcı görüntülerini gönderebileceği bir Azure Container Registry olmalıdır. Bu görev, yerleşik bir çalıştırılabilir uygulama görüntüsünü uygulamasına göndermek ve/veya kapsayıcı uygulaması dağıtmak için Azure Container Registry yararlanır.

bağımsız değişkeni aracılığıyla acrName Azure Container Registry adı gereklidir.

Kullanıcı, Azure Container Registry örneğine acrUsername yapılan çağrıların kimliğini doğrulayacak ve acrPassword bağımsız değişkenleri için de değerler sağlayabilir; sağlanmazsa, azure CLI aracılığıyla çağrıların kimliğini doğrulayacak bir erişim belirteci oluşturulur.

Azure Container App ortamı

Görevin performansını artırmak için kullanıcı tarafından daha önce bir Azure Container App ortamı oluşturulması önerilir. Daha önce ortam oluşturulmadıysa veya oluşturulan Kapsayıcı Uygulamasını barındırmak için kullanılan kaynak grubunda bir ortam bulunamazsa, komutun az containerapp up bir parçası olarak tarafından bir ortam oluşturulur ve bu da ek zaman alabilir.

Örnekler

Aşağıdaki örneklerde, 'nin AzureContainerApps farklı senaryolarda nasıl kullanılacağı özetlenmiştir.

Minimal - Kapsayıcı Uygulaması için uygulama görüntüsü oluşturma

steps:
- task: AzureContainerApps@0
  displayName: Build and deploy Container App
  inputs:
    connectedServiceNameARM: 'azure-subscription-service-connection'
    appSourcePath: '$(System.DefaultWorkingDirectory)'
    acrName: 'mytestacr'

Bu, adlı <container-app-name>-rgyeni bir kaynak grubunda adlı ado-task-app-<build-id>-<build-number> yeni bir Kapsayıcı Uygulaması oluşturur. Kapsayıcı Uygulaması, sağlanandan oluşturulmuş ve sağlanan appSourcePath ACR örneğine gönderilen bir görüntüyü temel alır. Sağlanan ACR örneğine gönderme işleminin kimliğini doğrulamak için bir erişim belirteci oluşturulur.

En Az - Kapsayıcı Uygulaması için daha önce yayımlanmış görüntüyü kullanma

steps:
- task: AzureContainerApps@0
  displayName: Build and deploy Container App
  inputs:
    connectedServiceNameARM: 'azure-subscription-service-connection'
    imageToDeploy: mcr.microsoft.com/azuredocs/containerapps-helloworld:latest

Bu, adlı yeni bir kaynak grubunda <container-app-name>-rg adlı ado-task-app-<build-id>-<build-number> yeni bir Kapsayıcı Uygulaması oluşturur; burada yeni görüntü oluşturulmaz, ancak Kapsayıcı Uygulaması için adlı mcr.microsoft.com/azuredocs/containerapps-helloworld:latest mevcut bir görüntü kullanılır.

Minimal - Container App için daha önce yayımlanmış görüntüyle YAML yapılandırma dosyasını kullanma

steps:
- task: AzureContainerApps@0
  displayName: Build and deploy Container App
  inputs:
    yamlConfigPath: simple-image-container-app.yaml

Bu, adlı yeni bir kaynak grubunda <container-app-name>-rg adlı ado-task-app-<build-id>-<build-number> yeni bir Kapsayıcı Uygulaması oluşturur; burada yeni görüntü oluşturulmaz, ancak Kapsayıcı Uygulaması için adlı mcr.microsoft.com/azuredocs/containerapps-helloworld:latest mevcut bir görüntü kullanılır. Kapsayıcı Uygulaması ile ilgili ek özellikler dosyasından simple-image-container-app.yaml çekilir ve göreve bağımsız resourceGroupdeğişken olarak sağlanacak tüm ek değerleri geçersiz kılar.

Dosya simple-image-container-app.yaml aşağıdaki yapıya sahiptir:

properties:
  managedEnvironmentId: /subscriptions/SUBSCRIPTION_ID/resourceGroup/RESOURCE_GROUP/providers/Microsoft.App/managedEnvironments/CONTAINER_APP_ENVIRONMENT
  configuration:
    ingress:
      external: true
      allowInsecure: false
      targetPort: 80
  template:
    containers:
      - image: mcr.microsoft.com/azuredocs/containerapps-helloworld:latest
        name: mysampleimagecontainer

ve CONTAINER_APP_ENVIRONMENT değerleriSUBSCRIPTION_ID, RESOURCE_GROUP Kapsayıcı Uygulamasının kullanacağı mevcut Container App ortamının tam kaynak kimliğine işaret edecek şekilde güncelleştirilmelidir.

Kimlik doğrulaması için ACR kimlik bilgilerini kullanma

steps:
- task: AzureContainerApps@0
  displayName: Build and deploy Container App
  inputs:
    connectedServiceNameARM: 'azure-subscription-service-connection'
    appSourcePath: '$(System.DefaultWorkingDirectory)'
    acrName: 'mytestacr'
    acrUsername: $(ACR_USERNAME_SECRET)
    acrPassword: $(ACR_PASSWORD_SECRET)

Bu, adlı <container-app-name>-rgyeni bir kaynak grubunda adlı ado-task-app-<build-id>-<build-number> yeni bir Kapsayıcı Uygulaması oluşturur. Kapsayıcı Uygulaması, sağlanandan oluşturulmuş ve sağlanan appSourcePath ACR örneğine gönderilen bir görüntüyü temel alır. Sağlanan ACR kimlik bilgileri, ACR örneğine yapılan çağrıların kimliğini doğrulamak için kullanılır.

Kapsayıcı Uygulaması adı sağlandı

steps:
- task: AzureContainerApps@0
  displayName: Build and deploy Container App
  inputs:
    connectedServiceNameARM: 'azure-subscription-service-connection'
    appSourcePath: '$(System.DefaultWorkingDirectory)'
    acrName: 'mytestacr'
    containerAppName: 'my-test-container-app'

Bu, yeni bir kaynak grubu adında my-test-container-app-rgadlı my-test-container-app yeni bir Kapsayıcı Uygulaması oluşturur.

Sağlanan kaynak grubu

steps:
- task: AzureContainerApps@0
  displayName: Build and deploy Container App
  inputs:
    connectedServiceNameARM: 'azure-subscription-service-connection'
    appSourcePath: '$(System.DefaultWorkingDirectory)'
    acrName: 'mytestacr'
    resourceGroup: 'my-test-rg'

Bu, adlı my-test-rgbir kaynak grubunda adlı ado-task-app-<build-id>-<build-number> yeni bir Kapsayıcı Uygulaması oluşturur. my-test-rg Kaynak grubu yoksa, bu görevin bir parçası olarak oluşturulur.

Kapsayıcı Uygulaması adı ve kaynak grubu sağlandı

steps:
- task: AzureContainerApps@0
  displayName: Build and deploy Container App
  inputs:
    connectedServiceNameARM: 'azure-subscription-service-connection'
    appSourcePath: '$(System.DefaultWorkingDirectory)'
    acrName: 'mytestacr'
    containerAppName: 'my-test-container-app'
    resourceGroup: 'my-test-rg'

Bu, adlı my-test-rgbir kaynak grubunda adlı my-test-container-app yeni bir Kapsayıcı Uygulaması oluşturur. my-test-rg Kaynak grubu yoksa, bu görevin bir parçası olarak oluşturulur.

Sağlanan Container App ortamı

steps:
- task: AzureContainerApps@0
  displayName: Build and deploy Container App
  inputs:
    connectedServiceNameARM: 'azure-subscription-service-connection'
    appSourcePath: '$(System.DefaultWorkingDirectory)'
    acrName: 'mytestacr'
    containerAppEnvironment: 'my-test-container-app-env'

Bu, adlı yeni bir Container App ortamı ile adlı yeni bir kaynak grubunda adlı ado-task-app-<build-id>-<build-number><container-app-name>-rgmy-test-container-app-envyeni bir Kapsayıcı Uygulaması oluşturur.

Sağlanan çalışma zamanı yığını

steps:
- task: AzureContainerApps@0
  displayName: Build and deploy Container App
  inputs:
    connectedServiceNameARM: 'azure-subscription-service-connection'
    appSourcePath: '$(System.DefaultWorkingDirectory)'
    acrName: 'mytestacr'
    runtimeStack: 'dotnetcore:7.0'

Bu, çalıştırılabilir uygulama görüntüsünün .NET 7 çalışma zamanı yığınını kullandığı adlı yeni bir kaynak grubunda adlı ado-task-app-<build-id>-<build-number><container-app-name>-rg yeni bir Kapsayıcı Uygulaması oluşturur.

Dockerfile sağlandı

steps:
- task: AzureContainerApps@0
  displayName: Build and deploy Container App
  inputs:
    connectedServiceNameARM: 'azure-subscription-service-connection'
    appSourcePath: '$(System.DefaultWorkingDirectory)'
    acrName: 'mytestacr'
    dockerfilePath: 'test.Dockerfile'

Bu, sağlanan uygulama kaynak yolu dizininde bulunan dosyadan test.Dockerfile çalıştırılabilir uygulama görüntüsünün oluşturulduğu adlı yeni bir kaynak grubunda adlı ado-task-app-<build-id>-<build-number><container-app-name>-rg yeni bir Kapsayıcı Uygulaması oluşturur.

Not: için sağlanan dockerfilePathdeğerler için hiçbir dosya ön eki dahil edilmemelidir (örneğin, ./test.Dockerfile yalnızca test.Dockerfileolarak geçirilmelidir). Sağlanan appSourcePath ve dockerfilePath bağımsız değişkenleri görevin içinde birleştirilir.

Derlanacak görüntü sağlandı

steps:
- task: AzureContainerApps@0
  displayName: Build and deploy Container App
  inputs:
    connectedServiceNameARM: 'azure-subscription-service-connection'
    appSourcePath: '$(System.DefaultWorkingDirectory)'
    acrName: 'mytestacr'
    imageToBuild: 'mytestacr.azurecr.io/app:latest'

Bu, oluşturulan ve ACR'ye gönderilen görüntünün adlı ado-task-app-<build-id>-<build-number> yeni bir kaynak grubunda adlı <container-app-name>-rgmytestacr.azurecr.io/app:latestyeni bir Kapsayıcı Uygulaması oluşturur.

Gereksinimler

Gereksinim Açıklama
İşlem hattı türleri YAML, Klasik derleme, Klasik sürüm
Üzerinde çalıştırılır Agent, DeploymentGroup
Talep Hiçbiri
Özellikler Bu görev, işteki sonraki görevler için herhangi bir talebi karşılamaz.
Komut kısıtlamaları Herhangi biri
Ayarlanabilir değişkenler Herhangi biri
Aracı sürümü 2.144.0 veya üzeri
Görev kategorisi Dağıtma

Ayrıca bkz.