Bagikan melalui


AzureContainerApps@1 - Tugas Azure Container Apps Deploy v1

Tugas Azure DevOps untuk membangun dan menyebarkan Azure Container Apps.

Sintaksis

# Azure Container Apps Deploy v1
# An Azure DevOps Task to build and deploy Azure Container Apps.
- task: AzureContainerApps@1
  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.

Input

Direktori Kerja
Alias input: cwd. string.

Direktori kerja saat ini tempat skrip dijalankan. Kosong adalah akar repositori (build) atau artefak (rilis), yaitu $(System.DefaultWorkingDirectory).


jalur sumber aplikasi
string.

Jalur absolut pada runner kode aplikasi sumber yang akan dibangun. Jika tidak disediakan, argumen 'imageToDeploy' harus disediakan untuk memastikan Aplikasi Kontainer memiliki gambar untuk dirujuk.

Saat mendorong gambar baru ke ACR, input tugas acrName dan appSourcePath diperlukan.


azureSubscription - koneksi Azure Resource Manager
Alias input: connectedServiceNameARM. string. Diperlukan.

Tentukan koneksi layanan Azure Resource Manager untuk penyebaran. Koneksi layanan ini harus ditautkan ke Langganan Azure pengguna tempat Aplikasi Kontainer akan dibuat/diperbarui. Koneksi layanan ini harus memiliki izin yang tepat untuk membuat perubahan ini dalam langganan, misalnya peran Kontributor.


acrName - nama Azure Container Registry
string.

Nama Azure Container Registry tempat gambar aplikasi yang dapat dijalankan akan didorong.

Saat mendorong gambar baru ke ACR, input tugas acrName dan appSourcePath diperlukan.


acrUsername - nama pengguna Azure Container Registry
string.

Nama pengguna yang digunakan untuk mengautentikasi permintaan push ke Azure Contrainer Registry yang disediakan. Jika tidak disediakan, token akses akan dibuat melalui 'az acr login' dan disediakan untuk 'masuk docker' untuk mengautentikasi permintaan.


acrPassword - kata sandi Azure Container Registry
string.

Kata sandi yang digunakan untuk mengautentikasi permintaan push ke Azure Contrainer Registry yang disediakan. Jika tidak disediakan, token akses akan dibuat melalui 'az acr login' dan disediakan untuk 'masuk docker' untuk mengautentikasi permintaan.


jalur Dockerfile
string.

Jalur relatif (awalan file _without (lihat contoh berikut) ke Dockerfile di sumber aplikasi yang disediakan yang harus digunakan untuk membangun gambar yang kemudian didorong ke ACR dan disebarkan ke Aplikasi Kontainer. Jika tidak disediakan, tugas ini akan memeriksa apakah ada file bernama 'Dockerfile' di akar sumber aplikasi yang disediakan dan menggunakannya untuk membangun gambar. Jika tidak, Oryx++ Builder akan digunakan untuk membuat gambar.


imageToBuild - gambar Docker untuk membangun
string.

Nama kustom gambar yang akan dibangun, didorong ke ACR dan disebarkan ke Aplikasi Kontainer oleh tugas ini. Catatan: nama gambar ini harus menyertakan server ACR; misalnya, <acr-name>.azurecr.io/<repo>:<tag>. Jika argumen ini tidak disediakan, nama gambar default akan dibangun dalam bentuk <acr-name>.azurecr.io/ado-task/container-app:<build-id>.<build-number>.


imageToDeploy - gambar Docker untuk menyebarkan
string.

Nama gambar yang telah didorong ke ACR dan akan disebarkan ke Aplikasi Kontainer oleh tugas ini. Catatan: nama gambar harus menyertakan server ACR; misalnya, <acr-name>.azurecr.io/<repo>:<tag>. Jika argumen ini tidak disediakan, nilai yang disediakan (atau ditentukan) untuk argumen 'imageToBuild' akan digunakan. Jika gambar ini ditemukan dalam instans ACR yang memerlukan autentikasi untuk ditarik, argumen acrName, atau argumen acrUsername dan acrPassword, dapat disediakan untuk mengautentikasi permintaan ke instans ACR.


containerAppName - nama Aplikasi Kontainer Azure
string.

Nama Aplikasi Kontainer Azure yang akan dibuat atau diperbarui. Jika tidak disediakan, nilai ini akan dalam bentuk ado-task-app-<build-id>-<build-number>.


resourceGroup - nama grup sumber daya Azure
string.

Grup sumber daya yang ada tempat Aplikasi Kontainer Azure akan dibuat (atau saat ini ada). Jika tidak disediakan, nilai ini akan dalam bentuk <container-app-name>-rg.


containerAppEnvironment - lingkungan Azure Container App
string.

Nama lingkungan Azure Container App untuk digunakan dengan aplikasi. Jika tidak disediakan, lingkungan yang ada dalam grup sumber daya Aplikasi Kontainer akan digunakan, jika tidak, lingkungan akan dibuat dalam format <container-app-name>-env.


tumpukan runtime aplikasi
string.

Tumpukan versi platform yang digunakan dalam gambar aplikasi akhir yang dapat dijalankan yang disebarkan ke Aplikasi Kontainer. Nilai harus disediakan dalam formasi <platform>:<version>. Jika tidak disediakan, nilai ini ditentukan oleh Oryx berdasarkan konten aplikasi yang disediakan. Silakan lihat dokumen ini untuk informasi lebih lanjut tentang tumpukan runtime yang didukung untuk Oryx.


port target aplikasi
string.

Port target yang akan didengarkan oleh Aplikasi Kontainer. Jika tidak disediakan, nilai ini akan menjadi "80" untuk aplikasi Python dan "8080" untuk semua platform lain yang didukung.


location - Lokasi Aplikasi Kontainer
string.

Lokasi tempat Aplikasi Kontainer (dan sumber daya lain yang dibuat) akan disebarkan.


variabel lingkungan
string.

Daftar variabel lingkungan untuk kontainer. Nilai yang dipisahkan spasi dalam format 'key=value'. String kosong untuk menghapus nilai yang ada. Nilai awalan dengan 'secretref:' untuk mereferensikan rahasia.


pengaturan Ingress
string.

Opsi yang mungkin: eksternal, internal, dinonaktifkan. Jika diatur ke external (nilai default jika tidak disediakan saat membuat Aplikasi Kontainer), Aplikasi Kontainer akan terlihat dari internet atau VNET, tergantung pada titik akhir lingkungan aplikasi yang dikonfigurasi. Jika diatur ke internal, Aplikasi Kontainer hanya akan terlihat dari dalam lingkungan aplikasi. Jika diatur ke disabled, ingress akan dinonaktifkan untuk Aplikasi Kontainer ini dan tidak akan memiliki titik akhir HTTP atau TCP.


jalur file konfigurasi YAML
string.

Jalur lengkap (pada agen Azure Pipelines yang dijalankan) ke file YAML yang merinci konfigurasi Aplikasi Kontainer.

Properti resourceGroup dalam file konfigurasi YAML tidak akan digunakan; nilai untuk ini berasal dari argumen resourceGroup yang disediakan untuk tugas, atau nama grup sumber daya default yang dihasilkan oleh tugas. Semua properti lain yang disediakan dalam file konfigurasi YAML akan mengambil alih nilai yang disediakan sebagai argumen untuk tugas ini; misalnya, jika argumen containerAppName disediakan untuk tugas, dan properti name diatur dalam file konfigurasi YAML, properti name dalam file YAML akan digunakan saat membuat atau memperbarui Aplikasi Kontainer.

Argumen sumber gambar dan aplikasi (misalnya, appSourcePath, imageToDeploy) masih akan digunakan untuk terlebih dahulu membangun dan/atau mendorong gambar yang digunakan oleh Aplikasi Kontainer; dalam hal ini, file konfigurasi YAML yang disediakan perlu mereferensikan gambar yang ditentukan oleh imageToDeploy (atau imageToBuild, tergantung pada skenario Anda).

Saat membuat Aplikasi Kontainer baru, semua properti yang tercantum dalam file konfigurasi YAML (kecuali resourceGroup seperti yang disebutkan di atas) akan diatur saat Aplikasi Kontainer dibuat. Saat memperbarui Aplikasi Kontainer yang ada, hanya properti yang tercantum dalam file yang akan diperbarui pada Aplikasi Kontainer.

Saat ini, file YAML tidak mendukung pengaturan autentikasi identitas terkelola untuk registri kontainer yang digunakan; untuk informasi selengkapnya tentang masalah ini, silakan lihat masalah GitHub ini.

Dalam kasus di mana argumen yamlConfigPath disediakan, file YAML akan diteruskan ke perintah az containerapp yang sesuai, baik create atau update tergantung pada skenario Anda. Untuk informasi selengkapnya tentang perilaku yang dimaksudkan saat file konfigurasi YAML disediakan, silakan lihat dokumen yang ditautkan untuk perintah yang sesuai.

Untuk informasi selengkapnya tentang struktur file konfigurasi YAML, silakan kunjungi situs ini.


disableTelemetry - Menonaktifkan telemetri
boolean.

Jika diatur ke 'true', tidak ada telemetri yang akan dikumpulkan oleh Tugas Azure DevOps ini. Jika diatur ke 'false', atau jika argumen ini tidak disediakan, telemetri akan dikirim ke Microsoft tentang build Aplikasi Kontainer dan sebarkan skenario yang ditargetkan oleh Tugas Azure DevOps ini.


Opsi kontrol tugas

Semua tugas memiliki opsi kontrol selain input tugasnya. Untuk informasi selengkapnya, lihat opsi Kontrol dan properti tugas umum.

Variabel output

Tidak.

Komentar

Tugas Azure Pipelines ini memungkinkan pengguna untuk dengan mudah menyebarkan sumber aplikasi mereka ke Azure Container App dalam alur kerja Azure Pipelines mereka dengan menyediakan gambar yang dibuat sebelumnya, Dockerfile tempat gambar dapat dibangun, atau menggunakan pembangun untuk membuat gambar aplikasi yang dapat dijalankan untuk pengguna.

Tugas ini memiliki dua pola penggunaan berikut.

  • Mendorong gambar ke ACR - saat mendorong gambar baru ke ACR, input tugas acrName dan appSourcePath diperlukan.
  • Menyebarkan gambar yang didorong sebelumnya - saat menyebarkan gambar yang didorong sebelumnya, input tugas imageToDeploy diperlukan. Jika gambar ini ditemukan dalam instans ACR yang memerlukan autentikasi untuk ditarik, argumen acrName, atau argumen acrUsername dan acrPassword, dapat disediakan untuk mengautentikasi permintaan ke instans ACR.

Nota

Meskipun tidak ada input tugas yang secara resmi ditandai sebagai "diperlukan" dalam metadata tugas ini, beberapa input perlu disediakan agar tugas ini berhasil dijalankan menggunakan salah satu dari dua pola penggunaan utama.

Jika tidak ada Dockerfile yang ditemukan atau disediakan di sumber aplikasi yang disediakan, langkah-langkah berikut dilakukan oleh tugas ini:

  • Menggunakan Oryx++ Builder untuk membangun sumber aplikasi menggunakan Oryx untuk menghasilkan gambar aplikasi yang dapat dijalankan
  • Mendorong gambar aplikasi yang dapat dijalankan ini ke Azure Container Registry yang disediakan
  • Membuat atau memperbarui Aplikasi Kontainer berdasarkan gambar ini

Jika Dockerfile ditemukan atau ditemukan di sumber aplikasi, penyusun tidak akan digunakan dan gambar akan dibangun dengan panggilan ke docker build dan Aplikasi Kontainer akan dibuat atau diperbarui berdasarkan gambar ini.

Jika gambar yang dibuat sebelumnya telah didorong ke instans ACR dan disediakan untuk tugas ini, tidak ada sumber aplikasi yang diperlukan dan gambar akan digunakan saat membuat atau memperbarui Aplikasi Kontainer.

Menjalankan tugas ini pada agen yang dihosting Microsoft

Jika Anda menjalankan tugas ini pada agen yang dihosting Microsoft, Anda mungkin menemukan bahwa tugas ini tidak berhasil dijalankan dengan sistem operasi berikut:

  • macOS
    • Runner macOS yang disediakan oleh Microsoft tidak diinstal dengan Docker (informasi lebih lanjut di sini); akibatnya, tugas ini tidak dapat menjalankan perintah docker apa pun, seperti mendorong gambar aplikasi yang dapat dijalankan bawaan ke ACR.
  • Windows
    • Runner Windows yang disediakan oleh Microsoft dilengkapi dengan Docker yang diinstal, tetapi secara default, gambar berbasis Linux tidak dapat ditarik ke bawah; akibatnya, tugas ini tidak dapat menarik ke bawah penyusun Oryx untuk membuat gambar aplikasi yang dapat dijalankan dari sumber aplikasi yang disediakan.

Silakan lihat bagian prasyarat Docker di bawah ini untuk informasi selengkapnya.

Pemberitahuan Pengumpulan Data/Telemetri

Secara default, Tugas Azure DevOps ini mengumpulkan bagian data berikut untuk Microsoft:

  • Skenario build dan penyebaran Aplikasi Kontainer yang ditargetkan oleh pengguna
    • yaitu, menggunakan Oryx++ Builder, menggunakan Dockerfile yang disediakan/ditemukan, atau menyediakan gambar yang dibuat sebelumnya
    • Catatan: nama gambar tidak dikumpulkan
  • Waktu pemrosesan tugas, dalam milidetik
  • Hasil tugas
    • yaitu, berhasil atau gagal
  • Jika Oryx++ Builder digunakan, peristiwa dan metrik yang berkaitan dengan membangun aplikasi yang disediakan menggunakan Oryx

Jika Anda ingin menonaktifkan pengumpulan data, atur argumen disableTelemetry ke true.

Prasyarat

Sebelum menjalankan tugas ini, sumber daya Azure dan koneksi layanan Azure DevOps diperlukan atau opsional tergantung pada argumen yang disediakan untuk tugas ini.

Koneksi Layanan Azure DevOps

Untuk menyebarkan ke Azure, langganan Azure harus ditautkan ke Team Foundation Server atau ke Azure Pipelines menggunakan tab Layanan di bagian pengaturan. Tambahkan langganan Azure untuk digunakan dalam definisi Build atau Release Management dengan membuka layar Administrasi Akun (ikon roda gigi di kanan atas layar) lalu klik Tab Layanan.

Buat titik akhir layanan ARM dan gunakan jenis titik akhir 'Azure Resource Manager' ; untuk informasi selengkapnya tentang membuat koneksi layanan, ikuti dokumen ini.

Azure CLI (antarmuka baris perintah Azure)

Tugas ini mengharuskan Azure CLI diinstal pada agen Azure Pipelines untuk menjalankan berbagai perintah selama eksekusi tugas. Untuk informasi selengkapnya tentang cara menginstal Azure CLI pada agen, silakan lihat dokumen ini. Jika agen sudah berjalan pada komputer tempat Azure CLI diinstal, pastikan Anda menghidupkan ulang agen sehingga semua variabel lingkungan yang relevan diperbarui.

Buruh kapal

Tugas ini mengharuskan Docker diinstal pada agen Azure Pipelines untuk mendorong gambar ke Azure Container Registry yang disediakan. Untuk informasi selengkapnya tentang cara menginstal Docker pada agen, silakan lihat dokumen ini.

Selain itu, pengguna yang menjalankan tugas ini dengan agen Windows mungkin mengalami masalah dengan tidak dapat menarik gambar berbasis Linux; untuk mengatasinya, temukan file DockerCli.exe pada agen Anda (biasanya di folder Program Files\Docker\Docker) dan jalankan

& `.\DockerCli.exe` -SwitchDaemon

Jika Docker tidak diinstal pada agen yang menjalankan tugas ini, skenario berikut masih diaktifkan:

  • Menyediakan gambar yang dibuat sebelumnya ke argumen yang disebarkan oleh Aplikasi Kontainer

Jika Docker berada di agen, tetapi tidak dapat bekerja dengan gambar berbasis Linux, skenario berikut masih diaktifkan:

  • Menyediakan gambar yang dibuat sebelumnya ke argumen yang disebarkan oleh Aplikasi Kontainer
  • Menyediakan Dockerfile sebagai bagian dari sumber aplikasi Anda yang akan dibangun dan disebarkan dengan Aplikasi Kontainer
    • Note: Dockerfile tidak dapat memiliki lapisan gambar berbasis Linux

paket CLI

CLI paket dikelola oleh proyek Cloud Native Buildpacks dan digunakan oleh tugas ini untuk membuat gambar aplikasi yang dapat dijalankan bagi pengguna ketika kode sumber aplikasi disediakan dan tidak ada Dockerfile tambahan yang disediakan atau ditemukan. penyusun dibuat oleh Oryx untuk mengambil kode sumber aplikasi yang disediakan untuk tugas ini dan menghasilkan gambar yang kemudian dapat didorong ke registri gambar dan digunakan dalam Aplikasi Kontainer untuk membangun dan menjalankan aplikasi.

Versi stabil CLI paket diinstal pada agen Azure Pipelines yang menjalankan tugas, dan tergantung pada OS dasar agen ini, alat yang berbeda akan dimanfaatkan untuk membantu penginstalan:

  • Pada pelari Windows:
    • Sekumpulan perintah PowerShell dijalankan untuk melakukan hal berikut:
      • Membuat folder pack di folder sementara agen, jika folder pack belum ada
      • Mengunduh .zip CLI paket ke dalam folder pack ini
      • Buka zip isi dari .zip ini dan tempatkan isinya di folder pack
      • Menghapus .zip
  • Pada pelari non-Windows:
    • curl akan digunakan untuk menarik ke bawah .tgz yang berisi pack dapat dieksekusi
    • tar akan digunakan untuk membuka zip .tgz dan menempatkan pack yang dapat dieksekusi di /usr/local/bin

Azure Container Registry (Pendaftaran Kontainer Azure)

Azure Container Registry harus ada bahwa pengguna dapat mendorong gambar kontainer. Tugas ini akan memanfaatkan Azure Container Registry untuk mendorong gambar aplikasi bawaan yang dapat dijalankan ke dan/atau menyebarkan Aplikasi Kontainer dari.

Nama Azure Container Registry diperlukan melalui argumen acrName.

Pengguna juga dapat memberikan nilai untuk argumen acrUsername dan acrPassword yang akan mengautentikasi panggilan ke instans Azure Container Registry; jika tidak disediakan, token akses akan dibuat melalui Azure CLI yang akan mengautentikasi panggilan sebagai gantinya.

Lingkungan Aplikasi Kontainer Azure

Lingkungan Aplikasi Kontainer Azure disarankan untuk dibuat sebelumnya oleh pengguna untuk meningkatkan performa tugas. Jika tidak ada lingkungan yang dibuat sebelumnya, atau jika lingkungan tidak dapat ditemukan di grup sumber daya yang digunakan untuk menghosting Aplikasi Kontainer yang dibuat, maka lingkungan akan dibuat oleh sebagai bagian dari perintah az containerapp up, yang mungkin memakan waktu tambahan.

Contoh

Contoh berikut menguraikan cara menggunakan AzureContainerApps dalam skenario yang berbeda.

Minimal - Membangun gambar aplikasi untuk Aplikasi Kontainer

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

Ini akan membuat Aplikasi Kontainer baru bernama ado-task-app-<build-id>-<build-number> di grup sumber daya baru bernama <container-app-name>-rg. Aplikasi Kontainer akan didasarkan pada gambar yang dibangun dari appSourcePath yang disediakan dan didorong ke instans ACR yang disediakan. Token akses akan dihasilkan untuk mengautentikasi pendorongan ke instans ACR yang disediakan.

Minimal - Gunakan gambar yang diterbitkan sebelumnya untuk Aplikasi Kontainer

steps:
- task: AzureContainerApps@1
  displayName: Build and deploy Container App
  inputs:
    connectedServiceNameARM: 'azure-subscription-service-connection'
    imageToDeploy: mcr.microsoft.com/<existing-image>:latest

Ini akan membuat Aplikasi Kontainer baru bernama ado-task-app-<build-id>-<build-number> dalam grup sumber daya baru bernama <container-app-name>-rg di mana tidak ada gambar baru yang dibangun, tetapi gambar yang sudah ada bernama mcr.microsoft.com/<existing-image>:latest akan digunakan untuk Aplikasi Kontainer.

Minimal - Gunakan file konfigurasi YAML dengan gambar yang diterbitkan sebelumnya untuk Aplikasi Kontainer

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

Ini akan membuat Aplikasi Kontainer baru bernama ado-task-app-<build-id>-<build-number> dalam grup sumber daya baru bernama <container-app-name>-rg di mana tidak ada gambar baru yang dibangun, tetapi gambar yang sudah ada bernama mcr.microsoft.com/<existing-image>:latest akan digunakan untuk Aplikasi Kontainer. Properti tambahan tentang Aplikasi Kontainer akan ditarik dari file simple-image-container-app.yaml dan akan mengambil alih nilai tambahan apa pun yang akan disediakan untuk tugas sebagai argumen tidak termasuk resourceGroup.

File simple-image-container-app.yaml memiliki struktur berikut:

properties:
  managedEnvironmentId: /subscriptions/SUBSCRIPTION_ID/resourceGroups/RESOURCE_GROUP/providers/Microsoft.App/managedEnvironments/CONTAINER_APP_ENVIRONMENT
  configuration:
    ingress:
      external: true
      allowInsecure: false
      targetPort: 80
  template:
    containers:
      - image: mcr.microsoft.com/<existing-image>:latest
        name: mysampleimagecontainer

Nilai untuk SUBSCRIPTION_ID, RESOURCE_GROUP, dan CONTAINER_APP_ENVIRONMENT harus diperbarui untuk mengarahkan ke ID sumber daya lengkap lingkungan Aplikasi Kontainer yang ada yang akan digunakan Aplikasi Kontainer.

Menggunakan kredensial ACR untuk mengautentikasi

steps:
- task: AzureContainerApps@1
  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)

Ini akan membuat Aplikasi Kontainer baru bernama ado-task-app-<build-id>-<build-number> di grup sumber daya baru bernama <container-app-name>-rg. Aplikasi Kontainer akan didasarkan pada gambar yang dibangun dari appSourcePath yang disediakan dan didorong ke instans ACR yang disediakan. Kredensial ACR yang disediakan akan digunakan untuk mengautentikasi panggilan ke instans ACR.

Nama Aplikasi Kontainer disediakan

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

Ini akan membuat Aplikasi Kontainer baru bernama my-test-container-app dalam nama grup sumber daya baru my-test-container-app-rg.

Grup sumber daya yang disediakan

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

Ini akan membuat Aplikasi Kontainer baru bernama ado-task-app-<build-id>-<build-number> dalam grup sumber daya bernama my-test-rg. Jika grup sumber daya my-test-rg tidak ada, grup sumber daya tersebut akan dibuat sebagai bagian dari tugas ini.

Nama Aplikasi Kontainer dan grup sumber daya yang disediakan

steps:
- task: AzureContainerApps@1
  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'

Ini akan membuat Aplikasi Kontainer baru bernama my-test-container-app dalam grup sumber daya bernama my-test-rg. Jika grup sumber daya my-test-rg tidak ada, grup sumber daya tersebut akan dibuat sebagai bagian dari tugas ini.

Lingkungan Aplikasi Kontainer disediakan

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

Ini akan membuat Aplikasi Kontainer baru bernama ado-task-app-<build-id>-<build-number> dalam grup sumber daya baru bernama <container-app-name>-rg dengan lingkungan Aplikasi Kontainer baru bernama my-test-container-app-env.

Tumpukan runtime yang disediakan

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

Ini akan membuat Aplikasi Kontainer baru bernama ado-task-app-<build-id>-<build-number> dalam grup sumber daya baru bernama <container-app-name>-rg di mana gambar aplikasi yang dapat dijalankan menggunakan tumpukan runtime .NET 7.

Dockerfile disediakan

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

Ini akan membuat Aplikasi Kontainer baru bernama ado-task-app-<build-id>-<build-number> dalam grup sumber daya baru bernama <container-app-name>-rg tempat gambar aplikasi yang dapat dijalankan dibuat dari file test.Dockerfile yang ditemukan di direktori jalur sumber aplikasi yang disediakan.

Catatan: untuk nilai yang disediakan untuk dockerfilePath, tidak ada awalan file yang harus disertakan (misalnya, ./test.Dockerfile harus diteruskan sebagai hanya test.Dockerfile). Argumen appSourcePath dan dockerfilePath yang disediakan akan digabungkan di dalam tugas.

Gambar yang akan dibangun disediakan

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

Ini akan membuat Aplikasi Kontainer baru bernama ado-task-app-<build-id>-<build-number> dalam grup sumber daya baru bernama <container-app-name>-rg di mana gambar yang dibuat dan didorong ke ACR diberi nama mytestacr.azurecr.io/app:latest.

Persyaratan

Syarat Deskripsi
Jenis alur YAML, Build klasik, Rilis klasik
Berjalan pada Agen, DeploymentGroup
Permintaan Tidak
Kemampuan Tugas ini tidak memenuhi tuntutan apa pun untuk tugas berikutnya dalam pekerjaan.
pembatasan Perintah Apa pun
variabel yang Dapat Diatur Apa pun
Versi agen 2.144.0 atau lebih tinggi
Kategori tugas Menyebarkan

Lihat juga