Bagikan melalui


AzureFunctionAppContainer@1 - Azure Functions untuk tugas kontainer v1

Memperbarui aplikasi fungsi dengan kontainer Docker.

Perbarui Aplikasi Fungsi dengan kontainer Docker.

Sintaks

# Azure Functions for container v1
# Update a function app with a Docker container.
- task: AzureFunctionAppContainer@1
  inputs:
    azureSubscription: # string. Required. Azure subscription. 
    appName: # string. Required. App name. 
    #deployToSlotOrASE: false # boolean. Deploy to Slot or App Service Environment. Default: false.
    #resourceGroupName: # string. Required when deployToSlotOrASE = true. Resource group. 
    #slotName: 'production' # string. Required when deployToSlotOrASE = true. Slot. Default: production.
    imageName: # string. Required. Image name. 
    #containerCommand: # string. Startup command. 
  # Application and Configuration Settings
    #appSettings: # string. App settings. 
    #configurationStrings: # string. Configuration settings.
# Azure Function for container v1
# Update Function Apps with Docker containers.
- task: AzureFunctionAppContainer@1
  inputs:
    azureSubscription: # string. Required. Azure subscription. 
    appName: # string. Required. App name. 
    #deployToSlotOrASE: false # boolean. Deploy to Slot or App Service Environment. Default: false.
    #resourceGroupName: # string. Required when deployToSlotOrASE = true. Resource group. 
    #slotName: 'production' # string. Required when deployToSlotOrASE = true. Slot. Default: production.
    imageName: # string. Required. Image name. 
    #containerCommand: # string. Startup command. 
  # Application and Configuration Settings
    #appSettings: # string. App settings. 
    #configurationStrings: # string. Configuration settings.

Input

azureSubscription - Langganan Azure
string. Wajib diisi.

Memilih langganan Azure Resource Manager untuk penyebaran.


appName - Nama aplikasi
string. Wajib diisi.

Nama Aplikasi Fungsi untuk Kontainer.


deployToSlotOrASE - Menyebarkan ke Slot atau lingkungan App Service
boolean. Nilai default: false.

Atur input ini ke true untuk disebarkan ke slot penyebaran yang ada atau lingkungan Azure App Service. Tugas ini memerlukan nama Grup Sumber Daya untuk kedua target. Untuk opsi slot penyebaran, default disebarkan ke slot produksi , atau Anda dapat menentukan nama slot lain yang ada. Jika target penyebaran adalah lingkungan Azure App Service, biarkan nama slot sebagai produksi dan tentukan nama Grup Sumber Daya.


resourceGroupName - Grup sumber daya
string. Diperlukan saat deployToSlotOrASE = true.

Nama Grup Sumber Daya yang berisi Aplikasi Fungsi untuk Kontainer.


slotName - Slot
string. Diperlukan saat deployToSlotOrASE = true. Nilai default: production.

Memasukkan atau memilih slot yang ada, tidak termasuk slot produksi .


imageName - Nama gambar
string. Wajib diisi.

Nama domain tingkat atas yang unik secara global untuk registri atau namespace khusus Anda.

Catatan: Nama gambar yang sepenuhnya memenuhi syarat akan memiliki format: <registry or namespace> <repository> <tag>. Contohnya,myregistry.azurecr.io/nginx:latest.


containerCommand - Perintah startup
string.

Perintah startup yang dijalankan setelah penyebaran. Misalnya, dotnet rundotnet filename.dll.


appSettings - Pengaturan aplikasi
string.

Masukkan pengaturan aplikasi menggunakan sintaks -key value (misalnya:-RequestTimeout 5000-Port 5000-WEBSITE_TIME_ZONE ). Sertakan nilai yang berisi spasi dalam tanda kutip ganda (misalnya: "Eastern Standard Time").


configurationStrings - Pengaturan konfigurasi
string.

Masukkan string konfigurasi menggunakan sintaks -key value (misalnya: -phpVersion 5.6-linuxFxVersion: node|6.11). Sertakan nilai yang berisi spasi dalam tanda kutip ganda.


Opsi kontrol tugas

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

Variabel output

Tugas ini menentukan variabel output berikut, yang dapat Anda konsumsi dalam langkah-langkah hilir, pekerjaan, dan tahapan.

AppServiceApplicationUrl
URL aplikasi dari App Service yang dipilih.

Keterangan

Gunakan tugas ini untuk menyebarkan Azure Function di Linux menggunakan gambar kustom.

Kesalahan: Tidak dapat mengambil token akses untuk Azure. Verifikasi apakah Perwakilan Layanan yang digunakan valid dan tidak kedaluwarsa.

Tugas ini menggunakan perwakilan layanan dalam koneksi layanan untuk mengautentikasi dengan Azure. Jika perwakilan layanan telah kedaluwarsa atau tidak memiliki izin ke App Service, tugas gagal dengan kesalahan ini. Verifikasi validitas prinsipal layanan yang digunakan dan tersedia dalam pendaftaran aplikasi. Untuk mengetahui informasi selengkapnya, lihat Menggunakan kontrol akses berbasis peran untuk mengelola akses ke sumber daya langganan Azure Anda. Posting blog ini juga berisi informasi selengkapnya tentang menggunakan autentikasi perwakilan layanan.

Kesalahan SSL

Jika Anda ingin menggunakan sertifikat di App Service, sertifikat harus ditandatangani oleh otoritas sertifikat tepercaya. Jika aplikasi web memberi Anda kesalahan validasi sertifikat, Anda mungkin menggunakan sertifikat yang ditandatangani sendiri. Atur variabel bernama VSTS_ARM_REST_IGNORE_SSL_ERRORS ke nilai true dalam alur build atau rilis untuk mengatasi kesalahan.

Rilis macet untuk waktu yang lama dan kemudian gagal

Masalah ini bisa menjadi akibat dari kapasitas yang tidak mencukup dalam rencana App Service Anda. Untuk mengatasi masalah ini, Anda dapat meningkatkan instans App Service untuk meningkatkan ruang CPU, RAM, dan disk yang tersedia atau mencoba dengan paket App Service yang berbeda.

kode galat 5xx

Jika Anda melihat kesalahan 5xx , periksa status layanan Azure Anda.

Fungsi Azure tiba-tiba berhenti berfungsi

Azure Functions mungkin tiba-tiba berhenti bekerja jika lebih dari satu tahun telah berlalu sejak penyebaran terakhir. Jika Anda menyebarkan dengan "RunFromPackage" di "deploymentMethod", SAS dengan tanggal kedaluwarsa 1 tahun dihasilkan dan ditetapkan sebagai nilai "WEBSITE_RUN_FROM_PACKAGE" dalam konfigurasi aplikasi. Azure Functions menggunakan SAS ini untuk mereferensikan file paket untuk eksekusi fungsi, jadi jika SAS telah kedaluwarsa, fungsi tidak akan dijalankan. Untuk mengatasi masalah ini, sebarkan lagi untuk menghasilkan SAS dengan tanggal kedaluwarsa satu tahun.

Bagaimana cara mengonfigurasi koneksi layanan saya?

Tugas ini memerlukan koneksi layanan Azure Resource Manager.

Bagaimana cara mengonfigurasi penyebaran pekerjaan web dengan Application Insights?

Saat Anda menyebarkan ke App Service, jika Anda telah mengonfigurasi Application Insights dan telah mengaktifkan Remove additional files at destination, Anda juga perlu mengaktifkan Exclude files from the App_Data folder. Mengaktifkan opsi ini membuat ekstensi Application Insights dalam keadaan aman. Langkah ini diperlukan karena WebJob berkelanjutan Application Insights diinstal ke folder App_Data.

Bagaimana cara mengonfigurasi agen saya jika berada di belakang proksi saat saya menyebarkan ke App Service?

Jika agen yang dihost sendiri memerlukan proksi web, Anda dapat memberi tahu agen tentang proksi selama konfigurasi. Melakukannya memungkinkan agen Anda untuk terhubung ke Azure Pipelines atau Azure DevOps Server melalui proksi. Pelajari selengkapnya tentang menjalankan agen yang dihost sendiri di belakang proksi web.

Contoh

Contoh ini menyebarkan Azure Functions di Linux menggunakan kontainer:


variables:
  imageName: contoso.azurecr.io/azurefunctions-containers:$(build.buildId)
  azureSubscription: Contoso
  # To ignore SSL error uncomment the following variable
  # VSTS_ARM_REST_IGNORE_SSL_ERRORS: true

steps:
- task: AzureFunctionAppContainer@1
  displayName: Azure Function App on Container deploy
  inputs:
    azureSubscription: $(azureSubscription)
    appName: functionappcontainers
    imageName: $(imageName)

Persyaratan

Persyaratan Deskripsi
Jenis alur YAML, Build klasik, Rilis klasik
Berjalan pada Agen, DeploymentGroup
Permintaan Tidak ada
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.104.1 atau lebih tinggi
Kategori tugas Sebarkan