함수 앱의 애플리케이션 설정에는 해당 함수 앱의 모든 함수에 영향을 주는 구성 옵션이 포함됩니다. 이러한 설정은 환경 변수로 액세스됩니다. 이 문서에는 함수 앱에서 사용할 수 있는 앱 설정이 나열되어 있습니다.
함수 앱 설정을 추가, 업데이트 및 삭제할 수 있는 여러 가지 방법이 있습니다.
함수 앱 설정을 변경하려면 함수 앱을 다시 시작해야 합니다.
이 문서에서는 예 연결 문자열 값이 가독성을 위해 잘렸습니다.
Azure Functions는 호스팅에 Azure App Service 플랫폼을 사용합니다. Azure App Service의 환경 변수 및 앱 설정에서 함수 앱을 호스팅하는 데 관련된 몇 가지 설정을 찾을 수 있습니다.
앱 설정 고려 사항
앱 설정을 사용하는 경우 다음과 같은 고려 사항을 알고 있어야 합니다.
애플리케이션 설정을 변경하면 함수 앱이 기본적으로 모든 호스팅 계획에서 다시 시작됩니다. 설정을 변경할 때 가동 중지 시간이 없는 배포의 경우 업데이트 롤링과 함께 Flex Consumption 계획을사이트 업데이트 전략으로 사용합니다. 다른 호스팅 계획의 경우 가동 중지 시간 최소화에 대한 지침은 배포 최적화 를 참조하세요.
이름을 설정할 때 이중 밑줄(
__) 및 콜론(:)은 예약된 값으로 간주됩니다. 이중 밑줄은 Windows와 Linux 모두에서 계층적 구분 기호로 해석됩니다. 콜론은 Windows에서만 동일한 방식으로 해석됩니다. 예를 들어,AzureFunctionsWebHost__hostid=somehost_123456설정은 다음 JSON 개체로 해석됩니다."AzureFunctionsWebHost": { "hostid": "somehost_123456" }이 문서에서는 두 운영 체제에서 모두 지원되므로 이중 밑줄만 사용합니다. 관리 ID 연결을 지원하는 대부분의 설정은 이중 밑줄을 사용합니다.
host.json 파일 및 local.settings.json 파일에는 다른 함수 앱 구성 옵션이 있습니다.
애플리케이션 설정을 사용하여 host.json 파일 자체를 변경할 필요 없이 host.json 설정 값을 재정의할 수 있습니다. 이 방법은 특정 환경에 대한 특정 host.json 설정을 구성하거나 수정해야 하는 시나리오에 유용합니다. 이 방법을 사용하면 프로젝트를 다시 게시하지 않고도 host.json 설정을 변경할 수 있습니다. 자세한 내용은 host.json 참조 문서를 참조하세요.
이 문서에서는 함수 앱과 가장 관련된 설정을 문서화합니다. Azure Functions는 App Service에서 실행되기 때문에 다른 애플리케이션 설정도 지원됩니다. 자세한 내용은 Azure App Service에서 환경 변수 및 앱 설정을 참조하세요.
일부 시나리오에서는 App Service 사이트 설정에 설명된 설정으로 작업해야 합니다.
읽기 전용App Service 애플리케이션 설정을 변경하면 함수 앱이 응답하지 않는 상태가 될 수 있습니다.
ARM 템플릿을 포함하여 REST API를 사용하여 애플리케이션 설정을 업데이트할 때 주의합니다. 이러한 API는 기존 애플리케이션 설정을 바꾸므로 REST API 또는 ARM 템플릿을 사용하여 설정을 추가하거나 수정할 때 기존 설정을 모두 포함해야 합니다. 가능하면 Azure CLI 또는 Azure PowerShell을 사용하여 프로그래밍 방식으로 애플리케이션 설정을 사용합니다. 자세한 내용은 애플리케이션 설정 작업을 참조하세요.
APPINSIGHTS_INSTRUMENTATIONKEY
Application Insights에 대한 계측 키입니다.
APPINSIGHTS_INSTRUMENTATIONKEY와 APPLICATIONINSIGHTS_CONNECTION_STRING을 같이 사용하지 마세요. 가능하면 APPLICATIONINSIGHTS_CONNECTION_STRING을 사용합니다. Application Insights가 독립 클라우드에서 실행되는 경우 APPLICATIONINSIGHTS_CONNECTION_STRING을 사용해야 합니다. 자세한 내용은 Azure Functions에 대한 모니터링을 구성하는 방법을 참조하세요.
| Key | 샘플 값 |
|---|---|
| APPINSIGHTS_INSTRUMENTATIONKEY | 55555555-af77-484b-9032-64f83bb83bb |
APPINSIGHTS_INSTRUMENTATIONKEY와 APPLICATIONINSIGHTS_CONNECTION_STRING을 같이 사용하지 마세요. 추천 드리오니 APPLICATIONINSIGHTS_CONNECTION_STRING을(를) 사용하시기 바랍니다.
APPLICATIONINSIGHTS_AUTHENTICATION_STRING
Microsoft Entra 인증을 사용하여 Application Insights에 액세스할 수 있습니다. Microsoft Entra 인증을 사용하여 Application Insights 작업 영역에 연결해야 하는 경우 이 설정을 사용하세요. 자세한 내용은 Application Insights에 대한 Microsoft Entra 인증을 참조하세요.
APPLICATIONINSIGHTS_AUTHENTICATION_STRING을 사용하는 경우 설정하는 특정 값은 관리 ID 유형에 따라 달라집니다.
| 관리형 아이덴티티 | 설정 값 |
|---|---|
| System-assigned | Authorization=AAD |
| User-assigned | Authorization=AAD;ClientId=<USER_ASSIGNED_CLIENT_ID> |
이 인증 요구 사항은 Functions 호스트, 스냅샷 디버거, 프로파일러 및 언어별 에이전트의 연결에 적용됩니다. 이 설정을 사용하려면 관리 ID를 함수 앱에서 이미 사용할 수 있어야 하며, 모니터링 메트릭 게시자에 해당하는 할당된 역할이 있어야 합니다.
Note
Microsoft Entra 인증을 사용하여 Application Insights에 연결하기 위해 APPLICATIONINSIGHTS_AUTHENTICATION_STRING을 사용하는 경우 Application Insights에 대한 로컬 인증을 사용하지 않도록 설정해야 합니다. 이 구성에서는 원격 분석을 작업 영역에 수집하려면 Microsoft Entra 인증이 필요합니다.
APPLICATIONINSIGHTS_CONNECTION_STRING
Application Insights에 대한 연결 문자열입니다.
APPINSIGHTS_INSTRUMENTATIONKEY와 APPLICATIONINSIGHTS_CONNECTION_STRING을 같이 사용하지 마세요. 모든 경우에 사용하는 APPLICATIONINSIGHTS_CONNECTION_STRING 것이 좋습니다. 다음 경우에 요구 사항입니다.
- 함수 앱에 연결 문자열을 사용하여 지원되는 추가된 사용자 지정이 필요한 경우
- Application Insights 인스턴스가 소버린 클라우드에서 실행되며 사용자 지정 엔드포인트가 필요한 경우
자세한 내용은 연결 문자열을 참조하세요.
| Key | 샘플 값 |
|---|---|
| APPLICATIONINSIGHTS_CONNECTION_STRING | InstrumentationKey=... |
Microsoft Entra 인증을 사용하여 Application Insights에 연결하려면 APPLICATIONINSIGHTS_AUTHENTICATION_STRING을 사용해야 합니다.
AZURE_FUNCTION_PROXY_DISABLE_LOCAL_CALL
Important
Azure Functions 프록시는 Azure Functions 런타임 버전 1.x~3.x 의 기능이었습니다. 자세한 내용은 함수 프록시를 참조하세요.
AZURE_FUNCTION_PROXY_BACKEND_URL_DECODE_SLASHES
Important
Azure Functions 프록시는 Azure Functions 런타임 버전 1.x~3.x 의 기능이었습니다. 자세한 내용은 함수 프록시를 참조하세요.
AZURE_FUNCTIONS_ENVIRONMENT
Azure에서 실행할 때 함수 앱의 런타임 호스팅 환경을 구성합니다. 이 값은 초기화 중에 읽습니다. 런타임은 다음 값만 허용합니다.
| Value | Description |
|---|---|
Production |
로깅 감소 및 전체 성능 최적화가 구현된 프로덕션 환경을 나타냅니다. 이 값은 설정되지 않았거나 지원되지 않는 값으로 설정된 경우 AZURE_FUNCTIONS_ENVIRONMENT 기본값입니다. |
Staging |
스테이징 슬롯에서 실행할 때와 같은 스테이징 환경을 나타냅니다. |
Development |
개발 환경은 더 자세한 로깅 및 감소된 성능 최적화를 지원합니다. Azure Functions Core Tools는 로컬 컴퓨터에서 실행할 때 AZURE_FUNCTIONS_ENVIRONMENT를 Development로 설정합니다. 이 설정은 local.settings.json 파일에서 재정의할 수 없습니다. |
Azure의 런타임 환경을 ASPNETCORE_ENVIRONMENT 이외의 항목으로 변경해야 하는 경우 Production 대신 이 설정을 사용합니다. 자세한 내용은 환경 기반 시작 클래스 및 메서드를 참조하세요.
이 설정은 Functions 런타임 버전 1.x에서 사용할 수 없습니다.
AzureFunctionsJobHost__*
버전 2.x 이상 버전의 Functions 런타임에서는 애플리케이션 설정이 현재 환경의 host.json 설정을 재정의할 수 있습니다. 이러한 재정의는 AzureFunctionsJobHost__path__to__setting이라는 애플리케이션 설정으로 표현됩니다. 자세한 내용은 host.json 값 재정의를 참조하세요.
AzureFunctionsWebHost__hostid
고유한 ID여야 하는 지정된 함수 앱의 호스트 ID를 설정합니다. 이 설정은 앱에 대해 자동으로 생성된 호스트 ID 값을 재정의합니다. 동일한 스토리지 계정을 공유하는 함수 앱 간의 호스트 ID 충돌을 방지해야 하는 경우에만 이 설정을 사용합니다.
호스트 ID는 다음 요구 사항을 충족해야 합니다.
- 1자에서 32자 사이여야 함
- 소문자, 숫자 및 대시만 포함
- 대시로 시작하거나 끝나지 않음
- 연속 대시를 포함하지 않음
ID를 생성하는 쉬운 방법은 GUID를 가져와서 대시를 제거하고 GUID 1835D7B5-5C98-4790-815D-072CC94C6F71을 값 1835d7b55c984790815d072cc94c6f71로 변환하는 것과 같이 소문자로 만드는 것입니다.
| Key | 샘플 값 |
|---|---|
| AzureFunctionsWebHost__hostid | myuniquefunctionappname123456789 |
자세한 내용은 호스트 ID 고려 사항을 참조하세요.
AzureWebJobsDashboard
이 설정은 더 이상 사용되지 않으며 Azure Functions 런타임 버전 1.x에서 실행되는 경우에만 지원됩니다.
로그를 저장하고 Azure Portal의 모니터 탭에 표시하기 위한 선택적 스토리지 계정 연결 문자열입니다. 스토리지 계정은 Blob, 큐 및 테이블을 지원하는 범용 계정이어야 합니다. 자세한 내용은 스토리지 계정 요구 사항을 참조하세요.
| Key | 샘플 값 |
|---|---|
| AzureWebJobsDashboard | DefaultEndpointsProtocol=https;AccountName=... |
AzureWebJobsDisableHomepage
true 값은 함수 앱의 루트 URL에 대해 표시되는 기본 방문 페이지를 사용하지 않도록 설정합니다. 기본값은 false입니다.
| Key | 샘플 값 |
|---|---|
| AzureWebJobsDisableHomepage | true |
이 앱 설정이 생략되거나 false로 설정되면 URL <functionappname>.azurewebsites.net에 대한 응답으로 다음 예와 유사한 페이지가 표시됩니다.
AzureWebJobsDotNetReleaseCompilation
true 는 .NET 코드를 컴파일할 때 사용 Release 모드를 의미합니다.
false 는 디버그 모드를 사용한다는 의미입니다. 기본값은 true입니다.
| Key | 샘플 값 |
|---|---|
| AzureWebJobsDotNetReleaseCompilation | true |
AzureWebJobsFeatureFlags
사용하도록 설정할 쉼표로 구분된 베타 기능 목록입니다. 이 플래그로 사용할 수 있는 베타 기능은 프로덕션 준비가 되지 않았지만 실제로 사용하기 전에 실험적 용도로 사용할 수 있습니다.
| Key | 샘플 값 |
|---|---|
| AzureWebJobsFeatureFlags | feature1,feature2,EnableProxies |
앱에 현재 이 설정이 있는 경우 쉼표로 구분된 목록의 끝에 새 플래그를 추가합니다.
현재 지원되는 기능 플래그:
| 플래그 값 | Description |
|---|---|
EnableProxies |
Azure API Management로 마이그레이션을 계획하는 동안 Functions 런타임 버전 4.x에서 프록시를 다시 사용하도록 설정합니다. 자세한 내용은 Functions v4.x에서 프록시를 다시 사용하도록 설정를 참조하세요. |
EnableAzureMonitorTimeIsoFormat |
ISO 8601 전용(App Service) 계획에서 실행되는 Linux 앱에 대한 Azure Monitor 로그의 시간 형식을 사용하도록 설정합니다. |
AzureWebJobsKubernetesSecretName
키를 저장하는 데 사용되는 Kubernetes 비밀 리소스를 나타냅니다. Kubernetes에서 실행되는 경우에만 지원됩니다.
| Key | 샘플 값 |
|---|---|
| AzureWebJobsKubernetesSecretName | <SECRETS_RESOURCE> |
Kubernetes 비밀 리소스를 사용하는 경우의 고려 사항:
-
AzureWebJobsSecretStorageType를kubernetes로 설정해야 합니다.AzureWebJobsKubernetesSecretName이(가) 설정되지 않은 경우, 리포지토리는 읽기 전용으로 간주됩니다. 이 경우, 배포 전에 값이 생성되어야 합니다. - 이러한 값은 Kubernetes에 배포할 때 Azure Functions Core Tools에서 자동으로 생성합니다.
- 변경할 수 없는 비밀 은 지원되지 않으며 이를 사용하면 런타임 오류가 발생합니다.
자세한 내용은 키 스토리지 관리를 참조하세요.
AzureWebJobsSecretStorageKeyVaultClientId
키가 저장된 자격 증명 모음에 액세스하는 데 사용되는 사용자가 할당한 관리 ID 또는 앱 등록의 클라이언트 ID입니다. 이 설정을 사용하려면 AzureWebJobsSecretStorageType을 keyvault로 설정해야 합니다. Functions 런타임 버전 4.x 이상에서 지원됩니다.
| Key | 샘플 값 |
|---|---|
| AzureWebJobsSecretStorageKeyVaultClientId | <CLIENT_ID> |
자세한 내용은 키 스토리지 관리를 참조하세요.
AzureWebJobsSecretStorageKeyVaultClientSecret
키가 저장된 자격 증명 모음에 액세스하는 데 사용되는 사용자가 할당한 관리 ID 또는 앱 등록의 클라이언트 ID에 대한 비밀입니다. 이 설정을 사용하려면 AzureWebJobsSecretStorageType을 keyvault로 설정해야 합니다. Functions 런타임 버전 4.x 이상에서 지원됩니다.
| Key | 샘플 값 |
|---|---|
| AzureWebJobsSecretStorageKeyVaultClientSecret | <CLIENT_SECRET> |
자세한 내용은 키 스토리지 관리를 참조하세요.
AzureWebJobsSecretStorageKeyVaultName
이 설정은 더 이상 사용되지 않으며 Azure Functions 런타임 버전 3.x에서 실행될 때만 사용되었습니다.
키를 저장하는 데 사용되는 키 자격 증명 모음 인스턴스의 이름입니다. 이 설정은 더 이상 지원되지 않는 Functions 런타임 버전 3.x에서만 사용되었습니다. 버전 4.x의 경우 AzureWebJobsSecretStorageKeyVaultUri를 대신 사용합니다. 이 설정을 사용하려면 AzureWebJobsSecretStorageType을 keyvault로 설정해야 합니다.
자격 증명 모음에는 반드시 호스팅 리소스의 시스템 할당 관리 ID에 해당하는 액세스 정책이 있어야 합니다. 액세스 정책은 ID에 Get,Set, List, Delete의 비밀 권한을 부여하도록 합니다.
함수가 로컬로 실행되면 개발자 ID가 사용됩니다. 설정은 local.settings.json 파일에 있어야 합니다.
| Key | 샘플 값 |
|---|---|
| AzureWebJobsSecretStorageKeyVaultName | <VAULT_NAME> |
자세한 내용은 키 스토리지 관리를 참조하세요.
AzureWebJobsSecretStorageKeyVaultTenantId
키가 저장된 자격 증명 모음에 액세스하는 데 사용되는 앱 등록의 테넌트 ID입니다. 이 설정을 사용하려면 AzureWebJobsSecretStorageType을 keyvault로 설정해야 합니다. Functions 런타임 버전 4.x 이상에서 지원됩니다. 자세한 내용은 키 스토리지 관리를 참조하세요.
| Key | 샘플 값 |
|---|---|
| AzureWebJobsSecretStorageKeyVaultTenantId | <TENANT_ID> |
AzureWebJobsSecretStorageKeyVaultUri
키를 저장하는 데 사용되는 키 자격 증명 모음 인스턴스의 URI입니다. Functions 런타임 버전 4.x 이상에서 지원됩니다. 키 스토리지에 키 자격 증명 모음 인스턴스를 사용하려면 이 설정을 사용하는 것이 좋습니다. 이 설정을 사용하려면 AzureWebJobsSecretStorageType을 keyvault로 설정해야 합니다.
AzureWebJobsSecretStorageKeyVaultUri 값은 를 포함하여 Key Vault 개요 탭에 표시된 https://의 전체 값이어야 합니다.
자격 증명 모음에는 반드시 호스팅 리소스의 시스템 할당 관리 ID에 해당하는 액세스 정책이 있어야 합니다. 액세스 정책은 ID에 Get,Set, List, Delete의 비밀 권한을 부여하도록 합니다.
함수가 로컬에서 실행될 때 개발자 ID가 사용되며 설정은 local.settings.json 파일에 있어야 합니다.
| Key | 샘플 값 |
|---|---|
| AzureWebJobsSecretStorageKeyVaultUri | https://<VAULT_NAME>.vault.azure.net |
Important
비밀은 AzureWebJobsSecretStorageKeyVaultUri 설정을 통해 개별 함수 앱으로 범위가 지정되지 않습니다. 여러 함수 앱이 동일한 Key Vault를 사용하도록 구성된 경우 동일한 비밀을 공유하므로 잠재적으로 키 충돌 또는 덮어쓰기가 발생할 수 있습니다. 의도하지 않은 동작을 방지하려면 각 함수 앱에 별도의 Key Vault 인스턴스를 사용하는 것이 좋습니다.
자세한 내용은 키 스토리지 관리를 참조하세요.
AzureWebJobsSecretStorageSas
키 스토리지에 사용되는 두 번째 스토리지 계정에 대한 Blob Storage SAS URL입니다. 기본적으로 Functions는 AzureWebJobsStorage에 설정된 계정을 사용합니다. 이 비밀 스토리지 옵션을 사용하는 경우 AzureWebJobsSecretStorageType이 명시적으로 설정되어 있지 않거나 blob으로 설정되어 있는지 확인합니다. 자세한 내용은 키 스토리지 관리를 참조하세요.
| Key | 샘플 값 |
|---|---|
| AzureWebJobsSecretStorageSas | <BLOB_SAS_URL> |
AzureWebJobsSecretStorageType
키 스토리지에 사용할 리포지토리 또는 공급자를 지정합니다. 키는 함수 앱에 고유한 비밀을 사용하여 저장되기 전에 항상 암호화됩니다.
| Key | Value | Description |
|---|---|---|
| AzureWebJobsSecretStorageType | blob |
키는 AzureWebJobsStorage 설정에서 제공하는 계정의 Blob Storage 컨테이너에 저장됩니다. Blob Storage는 AzureWebJobsSecretStorageType이 설정되지 않은 경우의 기본 동작입니다.다른 스토리지 계정을 지정하려면 AzureWebJobsSecretStorageSas 설정을 사용하여 두 번째 스토리지 계정의 SAS URL을 나타냅니다. |
| AzureWebJobsSecretStorageType | files |
키는 파일 시스템에서 유지됩니다. 이 동작은 Functions v1.x의 기본값입니다. |
| AzureWebJobsSecretStorageType | keyvault |
키는 AzureWebJobsSecretStorageKeyVaultName에서 설정한 키 자격 증명 모음 인스턴스에 저장됩니다. |
| AzureWebJobsSecretStorageType | kubernetes |
Kubernetes에서 함수 런타임을 실행하는 경우에만 지원됩니다.
AzureWebJobsKubernetesSecretName이(가) 설정되지 않은 경우, 리포지토리는 읽기 전용으로 간주됩니다. 이 경우, 배포 전에 값이 생성되어야 합니다. 이러한 값은 Kubernetes에 배포할 때 Azure Functions Core Tools에서 자동으로 생성합니다. |
자세한 내용은 키 스토리지 관리를 참조하세요.
AzureWebJobsStorage
Functions 런타임이 일반 작업에 사용하는 Azure Storage 계정에 대한 연결 문자열을 지정합니다. Functions에서 이 스토리지 계정이 사용되는 경우에는 키 관리, 타이머 트리거 관리 및 Event Hubs 검사점 등이 있습니다. 스토리지 계정은 Blob, 큐 및 테이블을 지원하는 범용 계정이어야 합니다. 자세한 내용은 스토리지 계정 요구 사항을 참조하세요.
| Key | 샘플 값 |
|---|---|
| AzureWebJobsStorage | DefaultEndpointsProtocol=https;AccountName=... |
연결 문자열 대신 이 스토리지 계정에 대해 ID 기반 연결을 사용할 수 있습니다. 자세한 내용은 ID로 호스트 스토리지에 연결을 참조하세요.
AzureWebJobsStorage__accountName
ID 기반 스토리지 연결을 사용하는 경우 AzureWebJobsStorage에서 연결 문자열을 사용하는 대신 스토리지 계정의 계정 이름을 설정합니다. 이 구문은 AzureWebJobsStorage에 고유하며 다른 ID 기반 연결에는 사용할 수 없습니다.
| Key | 샘플 값 |
|---|---|
| AzureWebJobsStorage__accountName | <STORAGE_ACCOUNT_NAME> |
소버린 클라우드의 경우나 사용자 지정 DNS를 사용하는 경우에는 대신 서비스별 AzureWebJobsStorage__*ServiceUri 설정을 사용해야 합니다.
AzureWebJobsStorage__blobServiceUri
ID 기반 스토리지 연결을 사용하는 경우 스토리지 계정의 Blob 서비스에 대한 데이터 평면 URI를 설정합니다.
| Key | 샘플 값 |
|---|---|
| AzureWebJobsStorage__blobServiceUri | https://<STORAGE_ACCOUNT_NAME>.blob.core.windows.net |
소버린 클라우드에서 또는 사용자 지정 DNS를 사용하는 경우 AzureWebJobsStorage__accountName 대신 이 설정을 사용합니다. 자세한 내용은 ID로 호스트 스토리지에 연결을 참조하세요.
AzureWebJobsStorage__clientId
관리 ID 인증에 대한 액세스 토큰을 가져오는 데 사용되는 특정 사용자 할당 ID의 클라이언트 ID를 설정합니다.
AzureWebJobsStorage__credential을 managedidentity로 설정해야 합니다. 값은 애플리케이션에 할당된 ID에 해당하는 클라이언트 ID입니다.
AzureWebJobsStorage__managedIdentityResourceId 및 AzureWebJobsStorage__clientId 모두를 설정할 수 없습니다. 설정하지 않으면 시스템 할당 ID가 사용됩니다.
AzureWebJobsStorage__credential
연결에 대한 액세스 토큰을 가져오는 방법을 정의합니다. 관리 ID 인증에 managedidentity을(를) 사용합니다.
managedidentity을(를) 사용할 때는 호스팅 환경에서 관리 ID를 사용할 수 있어야 합니다. 로컬 개발 시나리오에서는 AzureWebJobsStorage__credential을(를) 설정하지 마세요.
AzureWebJobsStorage__managedIdentityResourceId
관리 ID 인증을 위한 액세스 토큰을 가져오는 데 사용되는 사용자 할당 ID의 리소스 식별자를 설정합니다.
AzureWebJobsStorage__credential을 managedidentity로 설정해야 합니다. 값은 관리 ID 인증에 사용되는 애플리케이션에 할당된 ID의 리소스 ID입니다.
AzureWebJobsStorage__managedIdentityResourceId 및 AzureWebJobsStorage__clientId 모두를 설정할 수 없습니다. 설정하지 않으면 시스템 할당 ID가 사용됩니다.
AzureWebJobsStorage__queueServiceUri
ID 기반 스토리지 연결을 사용하는 경우 스토리지 계정의 큐 서비스에 대한 데이터 평면 URI를 설정합니다.
| Key | 샘플 값 |
|---|---|
| AzureWebJobsStorage__queueServiceUri | https://<STORAGE_ACCOUNT_NAME>.queue.core.windows.net |
소버린 클라우드에서 또는 사용자 지정 DNS를 사용하는 경우 AzureWebJobsStorage__accountName 대신 이 설정을 사용합니다. 자세한 내용은 ID로 호스트 스토리지에 연결을 참조하세요.
AzureWebJobsStorage__tableServiceUri
ID 기반 스토리지 연결을 사용하는 경우 스토리지 계정의 테이블 서비스에 대한 데이터 평면 URI를 설정합니다.
| Key | 샘플 값 |
|---|---|
| AzureWebJobsStorage__tableServiceUri | https://<STORAGE_ACCOUNT_NAME>.table.core.windows.net |
소버린 클라우드에서 또는 사용자 지정 DNS를 사용하는 경우 AzureWebJobsStorage__accountName 대신 이 설정을 사용합니다. 자세한 내용은 ID로 호스트 스토리지에 연결을 참조하세요.
AzureWebJobs_TypeScriptPath
TypeScript에 사용되는 컴파일러의 경로입니다. 필요한 경우 기본값을 재정의할 수 있습니다.
| Key | 샘플 값 |
|---|---|
| AzureWebJobs_TypeScriptPath | %HOME%\typescript |
DOCKER_REGISTRY_SERVER_PASSWORD
프라이빗 컨테이너 레지스트리에 액세스하는 데 사용되는 암호를 나타냅니다. 이 설정은 프라이빗 컨테이너 레지스트리에서 컨테이너화된 함수 앱을 배포할 때만 필요합니다. 자세한 내용은 Azure App Service에서 환경 변수 및 앱 설정을 참조하세요.
DOCKER_REGISTRY_SERVER_URL
프라이빗 컨테이너 레지스트리의 URL을 나타냅니다. 이 설정은 프라이빗 컨테이너 레지스트리에서 컨테이너화된 함수 앱을 배포할 때만 필요합니다. 자세한 내용은 Azure App Service에서 환경 변수 및 앱 설정을 참조하세요.
DOCKER_REGISTRY_SERVER_USERNAME
프라이빗 컨테이너 레지스트리에 액세스하는 데 사용되는 계정을 나타냅니다. 이 설정은 프라이빗 컨테이너 레지스트리에서 컨테이너화된 함수 앱을 배포할 때만 필요합니다. 자세한 내용은 Azure App Service에서 환경 변수 및 앱 설정을 참조하세요.
DOCKER_SHM_SIZE
Python 작업자에서 공유 메모리를 사용하는 경우 공유 메모리 크기(바이트)를 설정합니다. 자세한 내용은 공유 메모리를 참조하세요.
| Key | 샘플 값 |
|---|---|
| DOCKER_SHM_SIZE | 268435456 |
위의 값은 공유 메모리 크기를 최대 256MB로 설정합니다.
FUNCTIONS_WORKER_SHARED_MEMORY_DATA_TRANSFER_ENABLED은 1로 설정해야 합니다.
ENABLE_ORYX_BUILD
배포 중에 Oryx 빌드 시스템이 사용되는지 여부를 나타냅니다.
Linux에 대한 원격 빌드 배포를 수행할 때 ENABLE_ORYX_BUILD를 true로 설정해야 합니다. 자세한 내용은 원격 빌드를 참조하세요.
| Key | 샘플 값 |
|---|---|
| ENABLE_ORYX_BUILD | true |
FUNCTION_APP_EDIT_MODE
Azure Portal에서 함수 앱을 편집할 수 있는지 여부를 나타냅니다. 유효한 값은 readwrite 및 readonly입니다.
| Key | 샘플 값 |
|---|---|
| FUNCTION_APP_EDIT_MODE | readonly |
런타임은 함수 앱의 언어 스택 및 배포 상태에 따라 값을 설정합니다. 자세한 내용은 Azure Portal의 개발 제한을 참조하세요.
FUNCTIONS_EXTENSION_VERSION
이 함수 앱을 호스트하는 Functions 런타임의 버전입니다. 주 버전이 있는 타일(~)은 해당 주 버전의 최신 버전을 사용하는 것을 의미합니다. 예를 들면 다음과 같습니다 ~4. 동일한 주 버전의 새로운 부 버전을 사용할 수 있으면 함수 앱에 자동으로 설치됩니다.
| Key | 샘플 값 |
|---|---|
| FUNCTIONS_EXTENSION_VERSION | ~4 |
다음과 같은 주요 런타임 버전 값이 지원됩니다.
| Value | 런타임 대상 | Comment |
|---|---|---|
~4 |
4.x | Recommended |
~1 |
1.x | 2026년 9월 14일에 지원이 종료됩니다. |
~4 값은 앱이 런타임의 버전 4.x에서 실행됨을 의미합니다. 값이 ~1이면 앱을 런타임의 버전 1.x로 고정합니다. 런타임 버전 2.x 및 3.x는 더 이상 지원되지 않습니다. 자세한 내용은 Azure Functions 런타임 버전 개요를 참조하세요.
지원에서 앱을 특정 부 버전에 고정하도록 요청하는 경우 전체 버전 번호(예 4.0.12345: )를 사용합니다. 자세한 내용은 Azure Functions 런타임 버전을 대상으로 지정하는 방법을 참조하세요.
FUNCTIONS_INPROC_NET8_ENABLED
앱이 In Process 모델에서 .NET 8을 사용할 수 있는지 여부를 나타냅니다. In Process 모델에서 .NET 8을 사용하려면 이 값을 1(으)로 설정해야 합니다. 다른 필수 구성 값을 비롯한 전체 지침은 대상 .NET 8으로 업데이트를 참조하세요.
| Key | 샘플 값 |
|---|---|
| FUNCTIONS_INPROC_NET8_ENABLED | 1 |
In Process 모델에서 .NET 8에 대한 지원을 사용하지 않도록 설정하려면 0(으)로 설정하세요.
FUNCTIONS_NODE_BLOCK_ON_ENTRY_POINT_ERROR
이 앱 설정은 Node.js v18 이하에서 진입점 오류 문제를 더 쉽게 해결할 수 있도록 Node.js 앱에서 호환성이 손상되는 변경을 임시로 활성화하는 방법입니다. 특히 항상 진입점 파일을 사용하는 true프로그래밍 모델 v4 앱을 사용하는 것이 좋습니다. 호환성이 손상되는 변경(false)이 없는 동작은 진입점 오류를 무시하고 이를 Application Insights에 기록하지 않습니다.
Node.js v20부터는 이 앱 설정이 적용되지 않으며, 호환성이 손상되는 변경 동작이 항상 활성화됩니다.
Node.js v18 이하의 경우 앱 설정을 사용하며 기본 동작은 모델 v4 함수 등록 전 또는 후에 오류가 발생하는지에 따라 달라집니다.
- 이전에 오류가 발생하면 기본 동작이
false와 일치합니다. 예를 들어 모델 v3을 사용하거나 진입점 파일이 없는 경우입니다. - 오류가 발생한 후에는 기본 동작이
true와 일치합니다. 예를 들어 중복 모델 v4 함수를 등록하려고 하면
| Key | Value | Description |
|---|---|---|
| FUNCTIONS_NODE_BLOCK_ON_ENTRY_POINT_ERROR | true |
진입점 오류를 차단하고 Application Insights에 기록합니다. |
| FUNCTIONS_NODE_BLOCK_ON_ENTRY_POINT_ERROR | false |
진입점 오류를 무시하고 Application Insights에 기록하지 마세요. |
FUNCTIONS_REQUEST_BODY_SIZE_LIMIT
HTTP 엔드포인트로 전송되는 요청의 본문 크기에 대한 기본 제한을 재정의합니다. 값은 바이트 단위로 제공되며 기본 최대 요청 크기는 104,857,600바이트입니다.
| Key | 샘플 값 |
|---|---|
| FUNCTIONS_REQUEST_BODY_SIZE_LIMIT | 250000000 |
FUNCTIONS_V2_COMPATIBILITY_MODE
Important
이 설정은 더 이상 지원되지 않습니다. 원래 v2.x 런타임을 대상으로 하는 앱에 대한 단기 해결 방법을 사용하도록 제공되었습니다. 지원되는 동안 v3.x 런타임에서 대신 실행할 수 있습니다. 버전 1.x에서 실행되는 레거시 앱을 제외한 모든 함수 앱은 Functions 런타임 버전 4.x FUNCTIONS_EXTENSION_VERSION=~4에서 실행되어야 합니다. 자세한 내용은 Azure Functions 런타임 버전 개요를 참조하세요.
FUNCTIONS_WORKER_PROCESS_COUNT
기본값 1을 사용하여 언어 작업자 프로세스의 최대 수를 지정합니다. 허용된 최대 값은 10입니다. 함수 호출은 언어 작업자 프로세스 간에 균등하게 분산됩니다. 언어 작업자 프로세스는 FUNCTIONS_WORKER_PROCESS_COUNT에 의해 설정된 수에 도달할 때까지 10초 간격으로 생성됩니다. 여러 언어 작업자 프로세스를 사용하는 것은 크기 조정과 다릅니다. 워크로드에 CPU 바인딩 및 I/O 바인딩 호출이 혼합되어 있는 경우 이 설정을 사용하는 것이 좋습니다. 이 설정은 프로세스(FUNCTIONS_WORKER_RUNTIME=dotnet)에서 실행되는 .NET을 제외한 모든 언어 런타임에 적용됩니다.
| Key | 샘플 값 |
|---|---|
| FUNCTIONS_WORKER_PROCESS_COUNT | 2 |
FUNCTIONS_WORKER_RUNTIME
함수 앱에서 로드할 작업자 런타임의 언어 또는 언어 스택입니다. 이 값은 애플리케이션에서 사용되는 언어(예 python: .)에 해당합니다. Azure Functions 런타임의 버전 2.x부터 지정된 함수 앱은 단일 언어만 지원할 수 있습니다.
| Key | 샘플 값 |
|---|---|
| FUNCTIONS_WORKER_RUNTIME | node |
올바른 값
| Value | 언어/언어 스택 |
|---|---|
dotnet |
C#(클래스 라이브러리) C#(스크립트) |
dotnet-isolated |
C#(격리 작업자 프로세스) |
java |
Java |
node |
JavaScript TypeScript |
powershell |
PowerShell |
python |
Python |
custom |
Other |
FUNCTIONS_WORKER_SHARED_MEMORY_DATA_TRANSFER_ENABLED
이 설정을 사용하면 Python 작업자에서 공유 메모리를 사용하여 처리량을 향상시킬 수 있습니다. Python 함수 앱에서 메모리 병목 상태에 도달할 때 공유 메모리를 사용하도록 설정합니다.
| Key | 샘플 값 |
|---|---|
| FUNCTIONS_WORKER_SHARED_MEMORY_DATA_TRANSFER_ENABLED | 1 |
이 설정이 사용하도록 설정되면 DOCKER_SHM_SIZE 설정을 사용하여 공유 메모리 크기를 설정할 수 있습니다. 자세한 내용은 공유 메모리를 참조하세요.
JAVA_APPLICATIONINSIGHTS_ENABLE_TELEMETRY
Java 작업자 프로세스가 Open Telemetry 형식의 원격 분석을 Application Insights 엔드포인트에 출력해야 하는지 여부를 나타냅니다. 이 플래그 True(으)로 설정하면 Functions 호스트에서 Java 작업자 프로세스가 OpenTelemetry 로그를 직접 스트리밍하도록 허용하여 호스트 수준 항목이 중복되는 것을 방지합니다. 자세한 내용은 애플리케이션 설정 구성을 참조하세요.
JAVA_ENABLE_SDK_TYPES
함수 앱이 바인딩에서 네이티브 Azure SDK 형식을 사용할 수 있도록 합니다.
Note
SDK 형식에 대한 바인딩 지원은 현재 미리 보기로 제공되며 Azure Blob Storage SDK로 제한됩니다. 자세한 내용은 Java 참조 문서의 SDK 형식을 참조하세요.
| Key | 샘플 값 |
|---|---|
| JAVA_ENABLE_SDK_TYPES | true |
자세한 내용은 Java 참조 문서의 SDK 형식을 참조하세요.
JAVA_OPTS
프리미엄 플랜 또는 전용 플랜에서 실행할 때 Java 함수를 실행하는 데 사용되는 JVM(Java 가상 머신)을 사용자 지정하는 데 사용됩니다. 소비 플랜에서 실행하는 경우 대신 languageWorkers__java__arguments를 사용합니다. 자세한 내용은 JVM 사용자 지정을 참조하세요.
languageWorkers__java__arguments
소비 플랜에서 실행할 때 Java 함수를 실행하는 데 소비되는 JVM(Java 가상 머신)을 사용자 지정하는 데 소비됩니다. 이 설정은 소비 플랜에서 실행되는 Java 함수의 콜드 부팅 시간을 늘립니다. 프리미엄 또는 전용 플랜의 경우 대신 JAVA_OPTS를 사용합니다. 자세한 내용은 JVM 사용자 지정을 참조하세요.
MDMaxBackgroundUpgradePeriod
PowerShell 함수 앱의 관리되는 종속성 백그라운드 업데이트 기간을 제어하며, 기본값은 7.00:00:00(매주)입니다.
각 PowerShell 작업자 프로세스는 프로세스 시작 시 및 시작 후마다 MDMaxBackgroundUpgradePeriod PowerShell 갤러리에서 모듈 업그레이드 확인을 시작합니다. PowerShell 갤러리에서 새 모듈 버전을 사용할 수 있는 경우 해당 버전은 파일 시스템에 설치되며 PowerShell 작업자에게 제공됩니다. 이 값을 줄이면 함수 앱이 최신 모듈 버전을 더 빨리 가져올 수 있지만 네트워크 I/O, CPU 및 스토리지를 비롯한 앱 리소스 사용량도 증가합니다. 이 값을 늘리면 앱의 리소스 사용량이 줄어들지만, 앱에 새 모듈 버전을 전달하는 작업이 지연될 수도 있습니다.
| Key | 샘플 값 |
|---|---|
| MDMaxBackgroundUpgradePeriod | 7.00:00:00 |
자세한 내용은 종속성 관리를 참조하세요.
MDNewSnapshotCheckPeriod
각 PowerShell 작업자가 관리되는 종속성 업그레이드가 설치되었는지 여부를 확인하는 빈도를 지정합니다. 기본 빈도는 01:00:00(매시간)입니다.
새 모듈 버전이 파일 시스템에 설치된 후에는 모든 PowerShell 작업자 프로세스를 다시 시작해야 합니다. PowerShell 작업자를 다시 시작하면 현재 함수 실행을 중단할 수 있으므로 앱 가용성에 영향을 줍니다. 모든 PowerShell 작업자 프로세스가 다시 시작될 때까지 함수 호출은 이전 버전 또는 새 모듈 버전을 사용할 수 있습니다. 모든 PowerShell 작업자를 다시 시작하는 작업이 MDNewSnapshotCheckPeriod 내에 완료됩니다.
모든 MDNewSnapshotCheckPeriod항목 내에서 PowerShell 작업자는 관리되는 종속성 업그레이드가 설치되어 있는지 여부를 확인합니다. 업그레이드가 설치되면 다시 시작됩니다. 이 값을 늘리면 다시 시작으로 인한 중단 빈도가 줄어듭니다. 그러나 이 값을 늘리면 함수 호출에서 이전 또는 새 모듈 버전을 임의로 사용할 수 있는 시간도 비결정적으로 늘어날 수 있습니다.
| Key | 샘플 값 |
|---|---|
| MDNewSnapshotCheckPeriod | 01:00:00 |
자세한 내용은 종속성 관리를 참조하세요.
MDMinBackgroundUpgradePeriod
이전에 관리되는 종속성 업그레이드 확인 후 다른 업그레이드 확인이 시작되기 전의 기간이며, 기본값은 1.00:00:00(매일)입니다.
잦은 작업자 재시작을 과도하게 모듈 업그레이드하지 않기 위해 작업자가 마지막 MDMinBackgroundUpgradePeriod에 체크 인을 이미 시작한 경우에는 모듈 업그레이드를 확인하지 않습니다.
| Key | 샘플 값 |
|---|---|
| MDMinBackgroundUpgradePeriod | 1.00:00:00 |
자세한 내용은 종속성 관리를 참조하세요.
OTEL_EXPORTER_OTLP_ENDPOINT
수집을 위해 OpenTelemetry 형식의 데이터를 내보낼 URL을 나타냅니다. 자세한 내용은 Azure Functions에서 OpenTelemetry 사용을 참조 하세요.
OTEL_EXPORTER_OTLP_HEADERS
OpenTelemetry 엔드포인트로 내보낸 모든 나가는 데이터에 적용되는 헤더의 선택적 목록을 설정합니다. OpenTelemetry 엔드포인트에서 API 키를 제공해야 하는 경우 이 설정을 사용해야 합니다. 자세한 내용은 Azure Functions에서 OpenTelemetry 사용을 참조 하세요.
PIP_INDEX_URL
이 설정을 사용하면 기본적으로 https://pypi.org/simple인 Python 패키지 인덱스의 기준 URL을 재정의할 수 있습니다. 사용자 지정 종속성을 사용하여 원격 빌드를 실행해야 하는 경우 이 설정을 사용합니다. 이러한 사용자 지정 종속성은 PEP 503(단순 리포지토리 API)과 호환되는 패키지 인덱스 리포지토리 또는 동일한 형식을 따르는 로컬 디렉터리에 있을 수 있습니다.
| Key | 샘플 값 |
|---|---|
| PIP_INDEX_URL | http://my.custom.package.repo/simple |
자세한 내용은 pip의 경우 --index-url 설명서 및 Python 개발자 참조에서 사용자 지정 종속성 사용을 참조하세요.
PIP_EXTRA_INDEX_URL
이 설정의 값은 --index-url 외에 사용할 Python 앱용 사용자 지정 패키지에 대한 추가 인덱스 URL을 나타냅니다. 추가 패키지 인덱스에 있는 사용자 지정 종속성을 사용하여 원격 빌드를 실행해야 하는 경우 이 설정을 사용합니다.
--index-url과 동일한 규칙을 따라야 합니다.
| Key | 샘플 값 |
|---|---|
| PIP_EXTRA_INDEX_URL | http://my.custom.package.repo/simple |
자세한 내용은 pip의 경우 --extra-index-url 설명서 및 Python 개발자 참조에서 사용자 지정 종속 항목을 참조하세요.
PROJECT
Kudu 배포 서비스에 배포 가능한 프로젝트를 배치할 연결된 리포지토리의 폴더를 알려주는 연속 배포 설정입니다.
| Key | 샘플 값 |
|---|---|
| PROJECT | WebProject/WebProject.csproj |
PYTHON_APPLICATIONINSIGHTS_ENABLE_TELEMETRY
Python 작업자 프로세스가 Open Telemetry 형식의 원격 분석을 Application Insights 엔드포인트에 출력해야 하는지 여부를 나타냅니다. 이 플래그를 True(으)로 설정하면 Functions 호스트에서 Python 작업자 프로세스가 OpenTelemetry 데이터를 Application Insights 엔드포인트로 내보내도록 허용합합니다. 자세한 내용은 애플리케이션 설정 구성을 참조하세요.
PYTHON_ISOLATE_WORKER_DEPENDENCIES
구성은 Python 함수 앱에만 적용됩니다. 모듈 로드 순서에 대한 우선 순위를 정의합니다. 기본적으로 이 값은 0로 설정되어 있습니다.
| Key | Value | Description |
|---|---|---|
| PYTHON_ISOLATE_WORKER_DEPENDENCIES | 0 |
기본 동작인 내부 Python 작업자의 종속성에서 Python 라이브러리를 로드하는 우선 순위를 지정합니다. requirements.txt에 정의된 Microsoft가 아닌 라이브러리는 가려질 수 있습니다. |
| PYTHON_ISOLATE_WORKER_DEPENDENCIES | 1 |
requirements.txt에 정의된 애플리케이션의 패키지에서 Python 라이브러리 로드 우선 순위를 지정합니다. 이 값을 사용하면 라이브러리가 내부 Python 작업자의 라이브러리와 충돌하지 않습니다. |
PYTHON_ENABLE_DEBUG_LOGGING
Python 함수 앱에서 디버그 수준 로깅을 사용하도록 설정합니다.
1 값은 디버그 수준 로깅을 사용하도록 설정합니다. 이 설정을 사용하지 않거나 값이 0인 경우 정보 및 상위 수준 로그만 Python 작업자에서 Functions 호스트로 보냅니다. Python 함수 실행을 디버그하거나 추적하는 경우 이 설정을 사용합니다.
Python 함수를 디버그하는 경우 필요에 따라 host.json 파일에서 디버그 또는 추적 로깅 수준도 설정해야 합니다. 자세한 내용은 Azure Functions에 대한 모니터링을 구성하는 방법을 참조하세요.
PYTHON_ENABLE_OPENTELEMETRY
Python 작업자 프로세스가 원격 분석을 Open Telemetry 엔드포인트로 내보내야 하는지 여부를 나타냅니다. 이 플래그를 True(으)로 설정하면 Functions 호스트에서 Python 작업자 프로세스가 OpenTelemetry 데이터를 구성된 OTEL_EXPORTER_OTLP_ENDPOINT로 내보내도록 허용합니다. 자세한 내용은 애플리케이션 설정 구성을 참조하세요.
PYTHON_ENABLE_WORKER_EXTENSIONS
구성은 Python 함수 앱에만 적용됩니다. 이 값을 1로 설정하면, 워커가 requirements.txt에 정의된 Python 워커 확장을 로드할 수 있게 됩니다. 이를 통해 함수 앱은 파트너 패키지에서 제공하는 새로운 기능에 액세스할 수 있습니다. 또한 앱에서 함수 로드 및 호출 동작을 변경할 수 있습니다. 이를 사용함으로써 발생하는 위험은 본인의 책임이므로, 선택한 확장을 신뢰할 수 있는지 확인합니다. Azure Functions는 확장에 대한 명시적 보증을 제공하지 않습니다. 확장 기능을 사용하는 방법은 확장 기능의 매뉴얼 페이지 또는 추가 정보 문서를 참조하세요. 기본적으로 이 값은 0으로 설정됩니다.
| Key | Value | Description |
|---|---|---|
| PYTHON_ENABLE_WORKER_EXTENSIONS | 0 |
Python 작업자 확장을 사용하지 않도록 설정합니다. |
| PYTHON_ENABLE_WORKER_EXTENSIONS | 1 |
Python 작업자가 requirements.txt에서 확장을 로드하도록 허용합니다. |
PYTHON_THREADPOOL_THREAD_COUNT
Python 언어 작업자가 함수 호출을 실행하는 데 사용할 최대 스레드 수를 Python 버전 1 이하의 3.8 기본값으로 지정합니다. Python 버전 3.9 이상의 경우 이 값은 None으로 설정됩니다. 이 설정은 실행 중에 설정되는 스레드 수를 보장하지 않습니다. 이 설정은 Python이 스레드 수를 지정된 값으로 확장할 수 있도록 합니다. 이 설정은 Python 함수 앱에만 적용됩니다. 또한 이 설정은 코루틴에는 적용되지 않지만 동기 함수 호출에 적용됩니다.
| Key | 샘플 값 | 최대값 |
|---|---|---|
| PYTHON_THREADPOOL_THREAD_COUNT | 2 | 32 |
SCALE_CONTROLLER_LOGGING_ENABLED
이 설정은 현재 미리 보기로 제공됩니다.
이 설정은 Azure Functions 스케일링 컨트롤러의 로깅을 제어합니다. 자세한 내용은 스케일링 컨트롤러 로그를 참조하세요.
| Key | 샘플 값 |
|---|---|
| SCALE_CONTROLLER_LOGGING_ENABLED | AppInsights:Verbose |
이 키의 값은 다음과 같이 정의된 <DESTINATION>:<VERBOSITY> 형식으로 제공됩니다.
| Property | Description |
|---|---|
<DESTINATION> |
로그가 전송되는 대상입니다. 유효한 값은 AppInsights 및 Blob입니다.AppInsights를 사용할 때 함수 앱에서 Application Insights가 사용하도록 설정되어 있는지 확인합니다.대상을 Blob로 설정하면 azure-functions-scale-controller 애플리케이션 설정에 설정된 기본 스토리지 계정에서 AzureWebJobsStorage라는 Blob 컨테이너에 로그가 생성됩니다. |
<VERBOSITY> |
로깅 수준을 지정합니다. 지원되는 값은 None, Warning 및 Verbose입니다.Verbose로 설정되면 크기 조정 컨트롤러는 모든 작업자 수 변경의 이유 및 해당 결정을 촉발한 트리거에 대한 정보를 기록합니다. 자세한 로그에는 크기 조정 컨트롤러를 실행하기 전후에 트리거에서 사용한 트리거 경고 및 해시가 포함됩니다. |
Tip
크기 조정 컨트롤러 로깅을 사용하면 함수 앱 모니터링 비용에 영향을 줍니다. 크기 조정 컨트롤러의 동작 방식을 이해할 수 있는 충분한 데이터를 수집할 때까지 로깅을 사용하도록 설정한 다음 사용하지 않도록 설정하는 것이 좋습니다.
SCM_DO_BUILD_DURING_DEPLOYMENT
배포 중 원격 빌드 동작을 제어합니다.
SCM_DO_BUILD_DURING_DEPLOYMENT가 true로 설정되면 배포 중에 프로젝트가 원격으로 빌드됩니다.
| Key | 샘플 값 |
|---|---|
| SCM_DO_BUILD_DURING_DEPLOYMENT | true |
SCM_LOGSTREAM_TIMEOUT
스트리밍 로그에 연결된 경우 시간 초과(초)를 제어합니다. 기본값은 7200(2시간)입니다.
| Key | 샘플 값 |
|---|---|
| SCM_LOGSTREAM_TIMEOUT | 1800 |
위의 샘플 값은 1800 30분의 시간 제한을 설정합니다. 자세한 내용은 Azure Functions에서 스트리밍 실행 로그 사용을 참조하세요.
WEBSITE_CONTENTAZUREFILECONNECTIONSTRING
이벤트 기반 스케일링 플랜에 함수 앱 코드와 구성이 저장되는 스토리지 계정에 대한 연결 문자열입니다. 자세한 내용은 스토리지 계정 연결 설정을 참조하세요.
| Key | 샘플 값 |
|---|---|
| WEBSITE_CONTENTAZUREFILECONNECTIONSTRING | DefaultEndpointsProtocol=https;AccountName=... |
이 설정은 소비 및 탄력적 프리미엄 플랜 앱 모두에 필요합니다. Functions가 동적으로 확장되지 않는 전용 플랜 앱에는 필요하지 않습니다.
Flex 소비 계획은 이제 Azure Functions에 권장되는 서버리스 호스팅 계획입니다. 더 빠른 크기 조정, 콜드 시작 감소, 프라이빗 네트워킹 및 성능 및 비용에 대한 더 많은 제어를 제공합니다. 자세한 내용은 Flex Consumption 계획을 참조하세요.
이 설정을 변경하거나 제거하면 함수 앱이 시작되지 않을 수 있습니다. 자세히 알아보려면 이 문제 해결 문서를 참조하세요.
Azure Files는 파일 공유에 액세스할 때 관리 ID 사용을 지원하지 않습니다. 자세한 내용은 Azure Files 지원되는 인증 시나리오를 참조하세요.
WEBSITE_CONTENTOVERVNET
Important
WEBSITE_CONTENTOVERVNET은 vnetContentShareEnabled 사이트 속성으로 바뀐 레거시 앱 설정입니다.
1 값을 사용하면 스토리지 계정이 가상 네트워크로 제한된 경우 함수 앱을 스케일링할 수 있습니다. 스토리지 계정을 가상 네트워크로 제한할 때 이 설정을 사용하도록 설정해야 합니다.
WEBSITE_CONTENTSHARE 및 WEBSITE_CONTENTAZUREFILECONNECTIONSTRING을 사용할 때만 필요합니다. 자세히 알아보려면 가상 네트워크로 스토리지 계정 제한을 참조하세요.
| Key | 샘플 값 |
|---|---|
| WEBSITE_CONTENTOVERVNET | 1 |
이 앱 설정은 탄력적 프리미엄 및 전용(App Service) 플랜(표준 이상)에 필요합니다. 소비 계획에서 실행할 때는 지원되지 않습니다.
Note
동일한 플랜에서 여러 함수 앱이 공유하는 스토리지 계정의 콘텐츠 공유로 라우팅할 때는 특별히 주의해야 합니다. 자세한 내용은 스토리지 고려 사항 문서에서 가상 네트워크를 통한 일관된 라우팅을 참조하세요.
WEBSITE_CONTENTSHARE
Functions에서 함수 앱 코드 및 구성 파일을 저장하는 데 사용하는 파일 공유의 이름입니다. 이 콘텐츠는 이벤트 기반 스케일링 플랜에 필요합니다.
WEBSITE_CONTENTAZUREFILECONNECTIONSTRING를 사용합니다. 기본값은 런타임이 생성한 고유한 문자열로, 함수 앱 이름으로 시작됩니다. 자세한 내용은 스토리지 계정 연결 설정을 참조하세요.
| Key | 샘플 값 |
|---|---|
| WEBSITE_CONTENTSHARE | functionapp091999e2 |
이 설정은 소비 및 프리미엄 플랜 앱에만 필요합니다. Functions에 의해 동적으로 크기 조정되지 않는 전용 플랜 앱에는 필요하지 않습니다.
Flex 소비 계획은 이제 Azure Functions에 권장되는 서버리스 호스팅 계획입니다. 더 빠른 크기 조정, 콜드 시작 감소, 프라이빗 네트워킹 및 성능 및 비용에 대한 더 많은 제어를 제공합니다. 자세한 내용은 Flex Consumption 계획을 참조하세요.
함수 앱을 만들 때 공유가 만들어집니다. 이 설정을 변경하거나 제거하면 함수 앱이 시작되지 않을 수 있습니다. 자세히 알아보려면 이 문제 해결 문서를 참조하세요.
다음 고려 사항은 배포 중에 ARM(Azure Resource Manager) 템플릿 또는 Bicep 파일을 사용하여 함수 앱을 만들 때 적용됩니다.
- 주 함수 앱 또는 슬롯의 앱에 대한
WEBSITE_CONTENTSHARE값을 설정하지 않으면 고유한 공유 값이 생성됩니다.WEBSITE_CONTENTSHARE를 설정하지 않는 것이 ARM 템플릿 배포에 “권장되는 방식”입니다. -
WEBSITE_CONTENTSHARE하는 경우와 같이 값을 미리 정의된 값으로 설정해야 하는 시나리오가 있습니다. 이 경우 주 함수 앱과 각 배포 슬롯에 대한 앱에 고유한 공유 이름을 설정해야 합니다. 가상 네트워크에서 보호되는 스토리지 계정의 경우 자동화된 배포의 일부로 공유 자체를 만들어야 합니다. 자세한 내용은 보안 배포를 참조하세요. -
WEBSITE_CONTENTSHARE를 슬롯 설정으로 만들지 마세요. -
WEBSITE_CONTENTSHARE를 지정할 때 값은 공유 이름에 대해 이 지침을 따라야 합니다.
WEBSITE_DNS_SERVER
IP 주소를 확인할 때 앱에서 사용하는 DNS 서버를 설정합니다. 이 설정은 Azure DNS 프라이빗 영역 및 프라이빗 엔드포인트 같은 특정 네트워킹 기능을 사용할 때 필요합니다.
| Key | 샘플 값 |
|---|---|
| WEBSITE_DNS_SERVER | 168.63.129.16 |
WEBSITE_ENABLE_BROTLI_ENCODING
Brotli 인코딩이 기본 gzip 압축 대신 압축에 사용되는지 여부를 제어합니다.
WEBSITE_ENABLE_BROTLI_ENCODING이(가) 1으로(로) 설정되었을 때 Brotli 인코딩이 사용됩니다. 그렇지 않으면 gzip 인코딩이 사용됩니다.
WEBSITE_FUNCTIONS_ARMCACHE_ENABLED
ARM(Azure Resource Manager) 템플릿을 사용하여 함수 앱을 배포할 때 캐싱을 사용하지 않도록 설정합니다.
| Key | 샘플 값 |
|---|---|
| WEBSITE_FUNCTIONS_ARMCACHE_ENABLED | 0 |
WEBSITE_MAX_DYNAMIC_APPLICATION_SCALE_OUT
앱이 스케일링될 수 있는 최대 인스턴스 수입니다. 기본값은 무제한입니다.
Important
이 설정은 미리 보기로 제공됩니다. 이제 함수 최대 규모 확장에 대한 앱 속성이 있습니다. 스케일 아웃을 제한하려면 이 속성을 사용하는 것이 좋습니다.
| Key | 샘플 값 |
|---|---|
| WEBSITE_MAX_DYNAMIC_APPLICATION_SCALE_OUT | 5 |
WEBSITE_NODE_DEFAULT_VERSION
Windows만 해당합니다.
Windows에서 함수 앱을 실행할 때 사용할 Node.js 버전을 설정합니다. 타일(~)을 사용하여 런타임에서 대상 주 버전의 사용 가능한 최신 버전을 사용하도록 해야 합니다. 예를 들어 ~18로 설정하면 최신 버전의 Node.js 18이 사용됩니다. 물결표를 사용하여 주 버전을 대상으로 지정하면 부 버전을 수동으로 업데이트할 필요가 없습니다.
| Key | 샘플 값 |
|---|---|
| WEBSITE_NODE_DEFAULT_VERSION | ~18 |
WEBSITE_OVERRIDE_STICKY_DIAGNOSTICS_SETTINGS
프리미엄 계획에서 실행되는 함수 앱에서 슬롯 교환 을 수행하는 경우 앱에서 사용하는 전용 스토리지 계정이 네트워크로 제한되면 교환이 실패할 수 있습니다. 이 오류는 Functions와 App Service가 공유하는 레거시 애플리케이션 로깅 기능으로 인해 발생합니다. 이 설정은 해당 레거시 로깅 기능을 재정의하고 교환이 발생하도록 허용합니다.
| Key | 샘플 값 |
|---|---|
| WEBSITE_OVERRIDE_STICKY_DIAGNOSTICS_SETTINGS | 0 |
레거시 진단 설정이 교환을 차단하지 않도록 모든 슬롯에 값이 WEBSITE_OVERRIDE_STICKY_DIAGNOSTICS_SETTINGS인 0를 추가하세요. 이 설정과 값을 프로덕션 슬롯에만 배포 슬롯(고정) 설정으로 추가할 수도 있습니다.
WEBSITE_OVERRIDE_STICKY_EXTENSION_VERSIONS
기본적으로 함수 앱의 버전 설정은 각 슬롯에 따라 다릅니다. 이 설정은 배포 슬롯을 사용하여 함수를 업그레이드할 때 사용됩니다. 이 방법은 교환 후 버전 변경으로 인해 예기치 않은 동작을 방지합니다. 프로덕션 및 슬롯에서 0으로 설정하여 모든 버전 설정도 교환되도록 합니다. 자세한 내용은 슬롯을 사용하여 업그레이드를 참조하세요.
| Key | 샘플 값 |
|---|---|
| WEBSITE_OVERRIDE_STICKY_EXTENSION_VERSIONS | 0 |
WEBSITE_RUN_FROM_PACKAGE
로컬로 탑재하거나 외부 URL에 배포할 수 있는 패키지 파일에서 함수 앱을 실행할 수 있도록 합니다.
| Key | 샘플 값 |
|---|---|
| WEBSITE_RUN_FROM_PACKAGE | 1 |
유효한 값은 외부 배포 패키지 파일의 위치를 확인하는 URL이거나 1입니다.
1로 설정하면 패키지는 d:\home\data\SitePackages 폴더에 있어야 합니다.
WEBSITE_RUN_FROM_PACKAGE가 사용하도록 설정된 zip 배포를 사용하면 패키지가 자동으로 이 위치에 업로드됩니다. 자세한 내용은 패키지 파일에서 Functions 실행을 참조하세요.
WEBSITE_RUN_FROM_PACKAGE=<URL>을(를) 사용하는 경우 URL은 Azure Blob Storage 컨테이너와 같은 액세스 가능한 스토리지 위치의 패키지 파일 위치로 확인되어야 합니다. 권한 없는 액세스를 방지하려면 컨테이너가 프라이빗이어야 합니다. 이렇게 하려면 URL에서 SAS(공유 액세스 서명)를 사용하거나 Microsoft Entra ID 인증을 사용하여 액세스를 허용해야 합니다. 관리 ID와 함께 Microsoft Entra ID를 사용하는 것이 좋습니다.
Azure Blob Storage 컨테이너에서 WEBSITE_RUN_FROM_PACKAGE을(를) 배포 패키지의 URL로 설정하는 예제입니다.
WEBSITE_RUN_FROM_PACKAGE=https://contosostorageaccount.blob.core.windows.net/mycontainer/mypackage.zip
SAS를 사용하는 경우 URL에 토큰을 쿼리 매개 변수로 추가합니다.
사용자가 할당한 관리 ID를 사용하여 Azure Blob Storage에서 패키지를 배포하는 경우 사용자가 할당한 관리 ID의 리소스 ID로 WEBSITE_RUN_FROM_PACKAGE_BLOB_MI_RESOURCE_ID도 설정해야 합니다. 외부 패키지 URL에서 배포하는 경우 트리거도 수동으로 동기화해야 합니다. 자세한 내용은 트리거 동기화를 참조하세요.
WEBSITE_RUN_FROM_PACKAGE_BLOB_MI_RESOURCE_ID
Microsoft Entra ID를 사용하여 보호되는 외부 Azure Blob Storage 컨테이너에서 배포 패키지에 액세스할 때 사용되는 사용자가 할당한 관리 ID의 리소스 ID를 나타냅니다. 이 설정을 사용하려면 프라이빗 컨테이너에 있는 배포 패키지의 URL로 WEBSITE_RUN_FROM_PACKAGE을(를) 설정해야 합니다.
WEBSITE_RUN_FROM_PACKAGE_BLOB_MI_RESOURCE_ID=SystemAssigned을(를) 설정하는 것은 설정을 생략하는 것과 같으며, 이 경우 앱에 대한 시스템에서 할당한 관리 ID가 사용됩니다.
WEBSITE_SKIP_CONTENTSHARE_VALIDATION
WEBSITE_CONTENTAZUREFILECONNECTIONSTRING 및 WEBSITE_CONTENTSHARE 설정에는 앱이 제대로 시작될 수 있는지 확인하기 위한 추가 유효성 검사가 있습니다. 함수 앱에서 네트워킹 제약 조건 또는 기타 제한 요인으로 인해 다운스트림 스토리지 계정 또는 Key Vault를 제대로 호출할 수 없는 경우 애플리케이션 설정을 만드는 데 실패합니다. 설정 WEBSITE_SKIP_CONTENTSHARE_VALIDATION이 1로 지정되면, 유효성 검사가 생략됩니다. 그렇지 않으면 값이 기본값으로 0 설정되고 유효성 검사가 수행됩니다.
| Key | 샘플 값 |
|---|---|
| WEBSITE_SKIP_CONTENTSHARE_VALIDATION | 1 |
유효성 검사를 건너뛰고 연결 문자열 또는 콘텐츠 공유가 유효하지 않으면 앱이 제대로 시작할 수 없습니다. 이 경우 함수는 HTTP 500 오류를 반환합니다. 자세한 내용은 오류 문제 해결: "Azure Functions 런타임에 연결할 수 없음"을 참조하세요.
WEBSITE_SLOT_NAME
Read-only. 현재 배포 슬롯의 이름. 프로덕션 슬롯의 이름은 Production입니다.
| Key | 샘플 값 |
|---|---|
| WEBSITE_SLOT_NAME | Production |
WEBSITE_TIME_ZONE
함수 앱에 대한 표준 시간대를 설정할 수 있습니다.
| Key | OS | 샘플 값 |
|---|---|---|
| WEBSITE_TIME_ZONE | Windows | Eastern Standard Time |
| WEBSITE_TIME_ZONE | Linux | America/New_York |
CRON 식과 함께 사용하는 기본 표준 시간대는 UTC(협정 세계시)입니다. 다른 표준 시간대를 기반으로 하는 CRON 식을 사용하려면 WEBSITE_TIME_ZONE이라는 함수 앱에 대한 앱 설정을 만듭니다.
이 설정의 값은 함수 앱이 실행되는 운영 체제 및 플랜에 따라 다릅니다.
| 운영 체제 | Plan | Value |
|---|---|---|
| Windows | All | Windows 명령 tzutil.exe /L에서 제공하는 각 쌍의 두 번째 줄에 지정된 원하는 표준 시간대의 이름으로 값을 설정합니다. |
| Linux | Premium Dedicated |
tz 데이터베이스에 표시된 대로 원하는 표준 시간대의 이름으로 값을 설정합니다. |
Note
WEBSITE_TIME_ZONE 및 TZ는 현재 Flex 소비 또는 소비 계획에서 Linux에서 실행할 때 지원되지 않습니다. 이 경우 설정 WEBSITE_TIME_ZONE 또는 TZ SSL 관련 문제를 만들고 메트릭이 앱에 대한 작업을 중지하도록 할 수 있습니다.
예를 들어 미국 동부 표준시(Eastern Standard Time(Windows) 또는 America/New_York(Linux)로 표시)는 현재 표준 시간 동안 UTC-05:00를 사용하고 일광 절약 시간 동안에는 UTC-04:00를 사용합니다. 매일 오전 10시(미국 동부 표준시)에 타이머 트리거를 두려면 WEBSITE_TIME_ZONE이라는 함수 앱에 대한 앱 설정을 만들고, 값을 Eastern Standard Time(Windows) 또는 America/New_York(Linux)로 설정하고, 다음 NCRONTAB 식을 사용합니다.
"0 0 10 * * *"
WEBSITE_TIME_ZONE를 사용할 경우, 일광 절약 시간 및 표준 시간 변경을 포함하여 특정 표준 시간대의 시간 변경에 따라 시간이 조정됩니다.
WEBSITE_USE_PLACEHOLDER
소비 플랜에서 실행할 때 특정 콜드 부팅 최적화를 사용할지 여부를 나타냅니다. 소비 플랜에서 콜드 부팅 최적화를 사용하지 않도록 설정하려면 0으로 설정합니다.
| Key | 샘플 값 |
|---|---|
| WEBSITE_USE_PLACEHOLDER | 1 |
WEBSITE_USE_PLACEHOLDER_DOTNETISOLATED
소비 플랜에서 .NET 격리 작업자 프로세스 함수를 실행할 때 특정 콜드 시작 최적화를 사용할지 여부를 나타냅니다. 소비 플랜에서 콜드 부팅 최적화를 사용하지 않도록 설정하려면 0으로 설정합니다.
| Key | 샘플 값 |
|---|---|
| WEBSITE_USE_PLACEHOLDER_DOTNETISOLATED | 1 |
WEBSITE_VNET_ROUTE_ALL
Important
WEBSITE_VNET_ROUTE_ALL은 vnetRouteAllEnabled 사이트 설정으로 바꿔진 레거시 앱 설정입니다.
앱의 모든 아웃바운드 트래픽이 가상 네트워크를 통해 라우팅되도록 할지 여부를 나타냅니다. 설정 값 1은 모든 애플리케이션 트래픽이 가상 네트워크를 통해 라우팅됨을 나타냅니다. Elastic Premium 및 Dedicated 호스팅 계획에서 지역 가상 네트워크 통합 을 구성할 때 이 설정이 필요합니다. 또한 가상 네트워크 NAT 게이트웨이가 고정 아웃바운드 IP 주소를 정의하는 데 사용되는 경우에도 사용됩니다.
| Key | 샘플 값 |
|---|---|
| WEBSITE_VNET_ROUTE_ALL | 1 |
WEBSITES_ENABLE_APP_SERVICE_STORAGE
/home 디렉터리가 스케일링된 인스턴스 간에 공유되는지 여부를 나타내며 기본값은 true입니다. 컨테이너에 함수 앱을 배포할 false 때 이 값을 설정해야 합니다.
App Service 사이트 설정
일부 구성은 언어 버전과 같은 사이트 설정으로 App Service 수준에서 유지 관리되어야 합니다. 이러한 설정은 Azure Portal에서, REST API를 사용하거나, Azure CLI 또는 Azure PowerShell을 사용하여 관리됩니다. 다음은 런타임 언어, OS 및 버전에 따라 필요할 수 있는 사이트 설정입니다.
AcrUseManagedIdentityCreds
관리 ID 인증을 사용하여 Azure Container Registry 인스턴스에서 이미지를 가져올지 여부를 나타냅니다. 값 true은 관리 ID를 사용해야 합니다. 보안 모범 사례로 저장된 인증 자격 증명보다 이 방법을 사용하는 것이 좋습니다.
AcrUserManagedIdentityID
Azure Container Registry 인스턴스에서 이미지를 가져올 때 사용할 관리 ID를 나타냅니다.
AcrUseManagedIdentityCreds을(를) true(으)로 설정해야 합니다. 이러한 값은 유효합니다.
| Value | Description |
|---|---|
system |
함수 앱의 시스템 할당 관리 ID가 사용됩니다. |
<USER_IDENTITY_RESOURCE_ID> |
사용자가 할당한 관리 ID의 정규화된 리소스 ID입니다. |
지정한 ID를 컨테이너 레지스트리의 ACRPull 역할에 추가해야 합니다. 자세한 내용은 이미지를 사용하여 Azure에서 함수 앱 만들기 및 구성을 참조하세요.
alwaysOn
전용(App Service) 플랜에서 실행되는 함수 앱에서 Functions 런타임은 몇 분 동안 활동이 없으면 유휴 상태가 되며, 이 경우 HTTP 트리거에 대한 요청만 함수 앱의 절전 모드를 해제합니다. 타이머 트리거 함수를 포함하여 비 HTTP 트리거 함수가 올바르게 실행되도록 하려면 alwaysOn 사이트 설정을 true 값으로 설정하여 함수 앱에 대해 Always On을 활성화합니다.
functionsRuntimeAdminIsolationEnabled
함수 앱의 기본 제공 관리자(/admin) 엔드포인트에 액세스할 수 있는지 여부를 결정합니다.
false(기본값)로 설정하면 앱은 해당 요청이 요청에서 /admin를 표시할 때 아래의 엔드포인트에 대한 요청을 허용합니다.
true인 경우 마스터 키를 사용하더라도 /admin 엔드포인트에 액세스할 수 없습니다.
이 속성은 사용 계획에서 Linux에서 실행되는 앱에 대해 설정할 수 없습니다. Azure Functions 버전 1.x에서 실행되는 앱에는 설정할 수 없습니다. 버전 1.x를 사용하는 경우 먼저 버전 4.x로 마이그레이션해야 합니다.
Flex 소비 계획은 이제 Azure Functions에 권장되는 서버리스 호스팅 계획입니다. 더 빠른 크기 조정, 콜드 시작 감소, 프라이빗 네트워킹 및 성능 및 비용에 대한 더 많은 제어를 제공합니다. 자세한 내용은 Flex Consumption 계획을 참조하세요.
linuxFxVersion
Linux에서 실행되는 함수 앱의 경우 linuxFxVersion은 언어별 작업자 프로세스의 언어 및 버전을 나타냅니다. 이 정보는 FUNCTIONS_EXTENSION_VERSION과 함께 함수 앱을 실행하기 위해 설치된 특정 Linux 컨테이너 이미지를 결정하는 데 사용됩니다. 이 설정은 미리 정의된 값 또는 사용자 지정 이미지 URI로 설정할 수 있습니다.
이 값은 Linux 함수 앱을 만들 때 설정됩니다. ARM 템플릿 및 Bicep 배포와 특정 업그레이드 시나리오의 경우 이 설정을 지정해야 할 수 있습니다.
유효한 linuxFxVersion 값
다음 Azure CLI 명령을 사용하여 지원되는 Functions 런타임 버전별로 현재 linuxFxVersion 값의 테이블을 볼 수 있습니다.
az functionapp list-runtimes --os linux --query "[].{stack:join(' ', [runtime, version]), LinuxFxVersion:linux_fx_version, SupportedFunctionsVersions:to_string(supported_functions_versions[])}" --output table
이전 명령을 사용하려면 Azure CLI 버전 2.40으로 업그레이드해야 합니다.
사용자 지정 이미지
사용자 지정 Linux 컨테이너를 함수 앱 linuxFxVersion에 대해 만들고 유지 관리하는 경우, 해당 값은 다음 예제와 같이 DOCKER|<IMAGE_URI> 형식으로 제공됩니다.
linuxFxVersion = "DOCKER|contoso.com/azurefunctionsimage:v1.0.0"
이 예제에서는 배포된 컨테이너의 레지스트리 원본을 나타냅니다. 자세한 내용은 컨테이너 및 Azure Functions 작업을 참조하세요.
Important
사용자 고유의 컨테이너를 만들 때 컨테이너의 기본 이미지를 지원되는 최신 기본 이미지로 업데이트해야 합니다. Azure Functions에 지원되는 기본 이미지는 언어별로 다릅니다. Azure Functions 기본 이미지 리포지토리를 참조하세요.
Functions 팀은 이러한 기본 이미지에 대한 월별 업데이트를 게시하기 위해 최선을 다하고 있습니다. 정기 업데이트에는 Functions 런타임 및 언어 모두에 대한 최신 부 버전 업데이트 및 보안 수정 사항이 포함됩니다. 정기적으로 최신 기본 이미지에서 컨테이너를 업데이트하고 업데이트된 버전의 컨테이너를 다시 배포해야 합니다. 자세한 내용은 사용자 지정 컨테이너 유지 관리를 참조하세요.
netFrameworkVersion
C# 함수용 .NET의 특정 버전을 설정합니다. 자세한 내용은 Azure에서 함수 앱 업데이트를 참조하세요.
powerShellVersion
함수가 실행되는 특정 버전의 PowerShell을 설정합니다. 자세한 내용은 PowerShell 버전 변경을 참조하세요.
로컬에서 실행하는 경우 대신 local.settings.json 파일의 FUNCTIONS_WORKER_RUNTIME_VERSION 설정을 사용합니다.
vnetContentShareEnabled
프리미엄 플랜에서 실행되는 앱은 파일 공유를 사용하여 콘텐츠를 저장합니다. 이 콘텐츠 공유의 이름은 WEBSITE_CONTENTSHARE 앱 설정에 저장되고 해당 연결 문자열은 WEBSITE_CONTENTAZUREFILECONNECTIONSTRING에 저장됩니다. 가상 네트워크를 통해 함수 앱과 콘텐츠 공유 간에 트래픽을 라우팅하려면 vnetContentShareEnabled도 true로 설정해야 합니다. 탄력적 프리미엄 및 전용 호스팅 플랜에서 스토리지 계정을 가상 네트워크로 제한할 때 이 사이트 속성을 사용하도록 설정해야 합니다.
Note
동일한 플랜에서 여러 함수 앱이 공유하는 스토리지 계정의 콘텐츠 공유로 라우팅할 때는 특별히 주의해야 합니다. 자세한 내용은 스토리지 고려 사항 문서에서 가상 네트워크를 통한 일관된 라우팅을 참조하세요.
이 사이트 속성은 레거시 WEBSITE_CONTENTOVERVNET 설정을 바꿉니다.
vnetImagePullEnabled
Functions는 Linux 컨테이너에서 실행되는 함수 앱을 지원합니다. 가상 네트워크 내부의 컨테이너 레지스트리에서 연결하고 끌어오려면 vnetImagePullEnabled를 true로 설정해야 합니다. 이 사이트 속성은 탄력적 프리미엄 및 전용 호스팅 플랜에서 지원됩니다. Flex 사용량 플랜은 네트워킹을 구성하기 위해 사이트 속성이나 앱 설정을 사용하지 않습니다. 자세한 내용은 Flex 사용량 플랜 사용 중단을 참조하세요.
vnetRouteAllEnabled
앱의 모든 아웃바운드 트래픽이 가상 네트워크를 통해 라우팅되도록 할지 여부를 나타냅니다. 설정 값 true은 모든 애플리케이션 트래픽이 가상 네트워크를 통해 라우팅됨을 나타냅니다. 탄력적 프리미엄 및 전용 플랜에서 지역 가상 네트워크 통합을 구성할 때 이 설정을 사용합니다. 또한 가상 네트워크 NAT 게이트웨이가 고정 아웃바운드 IP 주소를 정의하는 데 사용되는 경우에도 사용됩니다. 자세한 내용은 애플리케이션 라우팅 구성을 참조하세요.
이 사이트 설정은 레거시 WEBSITE_VNET_ROUTE_ALL 설정을 바꿉니다.
Flex 사용량 플랜 사용 중단
Flex 사용량 플랜에서 다음 사이트 속성 및 애플리케이션 설정은 더 이상 사용되지 않으며 함수 앱 리소스를 만들 때 사용하면 안 됩니다.
| Setting/property | Reason |
|---|---|
ENABLE_ORYX_BUILD |
Flex 사용량에 배포할 때 remoteBuild 매개 변수로 대체됨 |
FUNCTIONS_EXTENSION_VERSION |
앱 설정은 백 엔드에서 설정됩니다. 1 미만 값은 무시할 수 있습니다. |
FUNCTIONS_WORKER_RUNTIME |
name에서 properties.functionAppConfig.runtime으로 바뀜 |
FUNCTIONS_WORKER_RUNTIME_VERSION |
version에서 properties.functionAppConfig.runtime으로 바뀜 |
FUNCTIONS_MAX_HTTP_CONCURRENCY |
크기 조정 및 동시성의 트리거 섹션으로 바뀜 |
FUNCTIONS_WORKER_PROCESS_COUNT |
설정이 유효하지 않음 |
FUNCTIONS_WORKER_DYNAMIC_CONCURRENCY_ENABLED |
설정이 유효하지 않음 |
SCM_DO_BUILD_DURING_DEPLOYMENT |
Flex 사용량에 배포할 때 remoteBuild 매개 변수로 대체됨 |
WEBSITE_CONTENTAZUREFILECONNECTIONSTRING |
functionAppConfig의 배포 섹션으로 바뀜 |
WEBSITE_CONTENTOVERVNET |
Flex 사용량의 네트워킹에 사용되지 않음 |
WEBSITE_CONTENTSHARE |
functionAppConfig의 배포 섹션으로 바뀜 |
WEBSITE_DNS_SERVER |
DNS는 Flex의 통합 가상 네트워크에서 상속됩니다. |
WEBSITE_MAX_DYNAMIC_APPLICATION_SCALE_OUT |
maximumInstanceCount에서 properties.functionAppConfig.scaleAndConcurrency으로 바뀜 |
WEBSITE_NODE_DEFAULT_VERSION |
version에서 properties.functionAppConfig.runtime으로 바뀜 |
WEBSITE_RUN_FROM_PACKAGE |
Flex 사용량의 배포에 사용되지 않음 |
WEBSITE_SKIP_CONTENTSHARE_VALIDATION |
콘텐츠 공유는 Flex Consumption에서 사용되지 않습니다. |
WEBSITE_VNET_ROUTE_ALL |
Flex 사용량의 네트워킹에 사용되지 않음 |
properties.alwaysOn |
유효하지 않음 |
properties.containerSize |
instanceMemoryMB로 이름이 변경됨 |
properties.ftpsState |
FTPS 지원 안 함 |
properties.isReserved |
유효하지 않음 |
properties.IsXenon |
유효하지 않음 |
properties.javaVersion |
version에서 properties.functionAppConfig.runtime으로 바뀜 |
properties.LinuxFxVersion |
properties.functionAppConfig.runtime으로 대체 |
properties.netFrameworkVersion |
version에서 properties.functionAppConfig.runtime으로 바뀜 |
properties.powerShellVersion |
version에서 properties.functionAppConfig.runtime으로 바뀜 |
properties.siteConfig.functionAppScaleLimit |
maximumInstanceCount로 이름이 변경됨 |
properties.siteConfig.preWarmedInstanceCount |
alwaysReadyInstances로 이름이 변경됨 |
properties.use32BitWorkerProcess |
32비트 지원 안 함 |
properties.vnetBackupRestoreEnabled |
Flex 사용량의 네트워킹에 사용되지 않음 |
properties.vnetContentShareEnabled |
Flex 사용량의 네트워킹에 사용되지 않음 |
properties.vnetImagePullEnabled |
Flex 사용량의 네트워킹에 사용되지 않음 |
properties.vnetRouteAllEnabled |
Flex 사용량의 네트워킹에 사용되지 않음 |
properties.windowsFxVersion |
유효하지 않음 |