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>-rg
olur.
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>-env
bir 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 imageToBuild
senaryonuza 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'ye
acrName
yeni bir görüntü gönderirken veappSourcePath
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 isteklerinacrUsername
kimliğini doğrulamak için bağımsız değişken veya veacrPassword
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.
- 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
- 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 true
ayarlayı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
- Not: Linux
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 birpack
klasör oluşturur - Paket CLI'sini
.zip
bupack
klasöre indirir - İçeriği bundan
.zip
çıkarın ve klasörepack
yerleştirir - Şu öğeyi siler:
.zip
- Klasör zaten yoksa aracının
- Aşağıdakileri yapmak için bir dizi PowerShell komutu yürütülür:
- Windows dışı çalıştırıcılarda:
curl
yürütülebilir dosyayı içerenpack
dosyayı.tgz
aşağı çekmek için kullanılırtar
sıkıştırmasını açmak.tgz
vepack
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>-rg
yeni 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 resourceGroup
değ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>-rg
yeni 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-rg
adlı 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-rg
bir 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-rg
bir 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>-rg
my-test-container-app-env
yeni 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 dockerfilePath
değerler için hiçbir dosya ön eki dahil edilmemelidir (örneğin, ./test.Dockerfile
yalnızca test.Dockerfile
olarak 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>-rg
mytestacr.azurecr.io/app:latest
yeni 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.
Geri Bildirim
https://aka.ms/ContentUserFeedback.
Çok yakında: 2024 boyunca, içerik için geri bildirim mekanizması olarak GitHub Sorunları’nı kullanımdan kaldıracak ve yeni bir geri bildirim sistemiyle değiştireceğiz. Daha fazla bilgi için bkz.Gönderin ve geri bildirimi görüntüleyin