Azure Functions 핵심 도구 참조

이 문서에서는 로컬 컴퓨터에서 Azure Functions 프로젝트를 개발, 관리 및 배포할 수 있는 Azure Functions 핵심 도구에 대한 참조 설명서를 제공합니다. Core Tools 사용에 대한 자세한 내용은 Azure Functions 핵심 도구 작업을 참조 하세요.

Core Tools 명령은 각각 고유한 작업 세트를 제공하는 다음과 같은 컨텍스트로 구성됩니다.

명령 컨텍스트 설명
func 로컬 컴퓨터에서 함수를 만들고 실행하는 데 사용되는 명령입니다.
func azure 게시를 포함하여 Azure 리소스를 사용하기 위한 명령입니다.
func azurecontainerapps Azure Container Apps에 컨테이너화된 함수 앱을 배포합니다.
func durable Durable Functions를 사용하기 위한 명령입니다.
func extensions 확장을 설치하고 관리하기 위한 명령입니다.
func kubernetes Kubernetes 및 Azure Functions를 사용하기 위한 명령입니다.
func settings 로컬 Functions 호스트에 대한 환경 설정을 관리하기 위한 명령입니다.
func templates 사용 가능한 함수 템플릿을 나열하기 위한 명령입니다.

이 문서의 명령을 사용하려면 먼저 Core Tools를 설치해야 합니다.

func init

특정 언어로 새 Functions 프로젝트를 만듭니다.

func init <PROJECT_FOLDER>

<PROJECT_FOLDER>를 제공하면 프로젝트가 이 이름의 새 폴더에 만들어집니다. 그렇지 않으면 현재 폴더가 사용됩니다.

func init 에서는 다음 옵션을 지원합니다. 이 옵션은 달리 명시되지 않는 한 버전 1.x를 지원하지 않습니다.

옵션 설명
--csx 버전 1.x 동작인 C# 스크립트로 .NET 함수를 만듭니다. 을 사용하여만 유효합니다 --worker-runtime dotnet.
--docker 선택한 --worker-runtime이미지를 기반으로 하는 기본 이미지를 사용하여 컨테이너에 대한 Dockerfile을 만듭니다. 컨테이너화된 함수 앱을 배포하려는 경우 이 옵션을 사용합니다.
--docker-only 기존 프로젝트에 Dockerfile을 추가합니다. local.settings.json에서 지정하거나 설정하지 않은 경우 작업자 런타임을 묻는 메시지를 표시합니다. 컨테이너화된 함수 앱을 배포할 계획이며 프로젝트가 이미 있는 경우 이 옵션을 사용합니다.
--force 프로젝트에 기존 파일이 있는 경우에도 프로젝트를 초기화합니다. 이 설정은 동일한 이름의 기존 파일을 덮어씁니다. 프로젝트 폴더의 다른 파일은 영향을 받지 않습니다.
--language 언어별 프로젝트를 초기화합니다. 로 설정할 때 --worker-runtime 현재 지원됩니다 node. 옵션은 typescriptjavascript입니다. 사용 --worker-runtime javascript 하거나 --worker-runtime typescript.
--managed-dependencies 관리되는 종속성을 설치합니다. 현재 PowerShell 작업자 런타임만 이 기능을 지원합니다.
--model 둘 이상의 모델을 사용할 수 있는 경우 대상 언어에 대해 원하는 프로그래밍 모델을 설정합니다. 지원되는 V1V2 옵션은 Python 및 V3V4 Node.js에 대해 제공됩니다. 자세한 내용은 Python 개발자 가이드Node.js 개발자 가이드를 각각 참조하세요.
--source-control Git 리포지토리 작성 여부를 제어합니다. 기본적으로 리포지토리는 만들어지지 않습니다. 이 경우 true리포지토리가 만들어집니다.
--worker-runtime 프로젝트의 언어 런타임을 설정합니다. 지원되는 값은 다음과 같습니다csharp. , dotnet, dotnet-isolated,nodejavascript(JavaScript), powershelltypescriptpython. Java의 경우 Maven을 사용합니다. 프로젝트 파일만 사용하여 언어 중립적 프로젝트를 생성하려면 custom을 사용합니다. 설정하지 않으면 초기화 중에 런타임을 선택하라는 메시지가 표시됩니다.
--target-framework 함수 앱 프로젝트의 대상 프레임워크를 설정합니다. 을 사용하여만 유효합니다 --worker-runtime dotnet-isolated. 지원되는 값은 net6.0 (기본값), net7.0net8.0net48 (.NET Framework 4.8)입니다.

참고 항목

옵션 중 하나 --docker 또는 --dockerfile 옵션을 사용하는 경우 Core Tools는 C#, JavaScript, Python 및 PowerShell 함수에 대한 Dockerfile을 자동으로 만듭니다. Java 함수의 경우 Dockerfile을 수동으로 만들어야 합니다. 자세한 내용은 컨테이너화된 함수 앱 만들기를 참조하세요.

func 로그

Kubernetes 클러스터에서 실행되는 함수에 대한 로그를 가져옵니다.

func logs --platform kubernetes --name <APP_NAME>

func logs 작업에서 지원하는 옵션은 다음과 같습니다.

옵션 설명
--platform 함수 앱에 대한 호스팅 플랫폼입니다. 지원되는 옵션: kubernetes.
--name Azure의 함수 앱 이름입니다.

자세한 내용은 KEDA를 사용하여 Kubernetes의 Azure Functions를 참조하세요.

func new

템플릿을 기반으로 현재 프로젝트에 새 함수를 만듭니다.

func new

--template 옵션 없이 func new을(를) 실행하면 템플릿를 선택하라는 메시지가 표시됩니다. 버전 1.x에서는 언어도 선택해야 합니다.

func new 작업에서 지원하는 옵션은 다음과 같습니다.

옵션 설명
--authlevel HTTP 트리거에 대한 권한 부여 수준을 설정할 수 있습니다. 지원되는 값은 다음과 functionanonymousadmin같습니다. 로컬에서 실행하는 경우 권한 부여가 적용되지 않습니다. 자세한 내용은 HTTP 바인딩 문서를 참조 하세요.
--csx (버전 2.x 및 이상 버전)버전 1.x 및 포털에서 사용되는 것과 동일한 C# 스크립트(.csx) 템플릿을 생성합니다.
--language, -l C#, F#또는 JavaScript와 같은 템플릿 프로그래밍 언어입니다. 이 옵션은 버전 1.x에서 필요합니다. 버전 2.x 이상 버전에서는 언어가 작업자 런타임에 의해 정의되므로 이 옵션을 사용하지 않습니다.
--name, -n 함수 이름입니다.
--template, -t func templates list 명령을 사용하여 지원되는 각 언어에 대해 사용 가능한 템플릿의 전체 목록을 확인합니다.

자세한 내용은 함수 만들기를 참조하세요.

func run

버전 1.x에만 해당합니다.

Azure Portal에서 테스트 탭을 사용하여 함수를 실행하는 것과 비슷한 함수를 직접 호출할 수 있습니다. 이 작업은 버전 1.x에서만 지원됩니다. 이후 버전의 경우 함수 엔드포인트를 직접 사용하고 func start호출합니다.

func run

func run 작업에서 지원하는 옵션은 다음과 같습니다.

옵션 설명
--content 함수에 전달되는 인라인 콘텐츠입니다.
--debug 함수를 실행하기 전에 호스트 프로세스에 디버거를 연결합니다.
--file 콘텐츠로 사용할 파일 이름입니다.
--no-interactive 자동화 시나리오에 유용한 입력 메시지를 표시하지 않습니다.
--timeout 로컬 Functions 호스트가 준비될 때까지 대기하는 시간(초)입니다.

예를 들어 HTTP 트리거 함수를 호출하고 콘텐츠 본문을 전달하려면 다음 명령을 실행합니다.

func run MyHttpTrigger --content '{\"name\": \"Azure\"}'

func start

로컬 런타임 호스트를 시작하고 함수 프로젝트를 현재 폴더에 로드합니다.

특정 명령은 런타임 버전따라 달라집니다.

func start

func start 에서는 다음 옵션을 지원합니다.

옵션 설명
--cert 프라이빗 키가 포함된 .pfx 파일의 경로입니다. --useHttps에서만 지원됩니다.
--cors 공백이 없는 CORS 원본의 쉼표로 구분된 목록입니다.
--cors-credentials 쿠키 및 인증 헤더를 사용하여 원본 간 인증 요청을 허용합니다.
--dotnet-isolated-debug true설정하면 디버깅 중인 .NET 격리 프로젝트에서 디버거가 연결될 때까지 .NET 작업자 프로세스를 일시 중지합니다.
--enable-json-output 가능하면 콘솔 로그를 JSON으로 내보냅니다.
--enableAuth 권한 부여 요구 사항을 사용하여 전체 인증 처리 파이프라인을 사용하도록 설정합니다.
--functions 공백으로 구분된 로드할 함수의 목록입니다.
--language-worker 언어 작업자를 구성하는 인수입니다. 예를 들어 디버그 포트 및 기타 필수 인수를 제공하여 언어 작업자에 대한 디버깅을 사용하도록 설정할 수 있습니다.
--no-build 실행하기 전에 현재 프로젝트를 빌드하지 않습니다. .NET 클래스 프로젝트에만 해당합니다. 기본값은 false입니다.
--password 암호 또는 .pfx 파일의 암호를 포함하는 파일입니다. 와 함께 --cert만 사용됩니다.
--port 수신 대기할 로컬 포트입니다. 기본값: 7071.
--timeout Functions 호스트가 시작할 시간 제한(초)입니다. 기본값: 20초.
--useHttps 에 바인딩하지 https://localhost:{port} 않고 바인딩합니다 http://localhost:{port}. 기본적으로 이 옵션은 컴퓨터에 신뢰할 수 있는 인증서를 만듭니다.

프로젝트가 실행되면 개별 함수 엔드포인트를 확인할 수 있습니다.

func azure functionapp fetch-app-settings

특정 함수 앱에서 설정을 가져옵니다.

func azure functionapp fetch-app-settings <APP_NAME> 

자세한 내용은 애플리케이션 설정 다운로드를 참조하세요.

설정 프로젝트의 local.settings.json 파일에 다운로드됩니다. 화면의 값은 보안을 위해 마스킹됩니다. local.settings.json 파일의 설정은 로컬 암호화를 사용하도록 설정하여 보호할 수 있습니다.

func azure functionapp list-functions

지정된 함수 앱의 함수 목록을 반환합니다.

func azure functionapp list-functions <APP_NAME>

func azure functionapp logstream

로컬 명령 프롬프트를 Azure의 함수 앱에 대한 스트리밍 로그에 커넥트.

func azure functionapp logstream <APP_NAME>

연결의 기본 시간 제한은 2시간입니다. 시간 제한 값(초)을 사용하여 SCM_LOGSTREAM_TIMEOUT이라는 앱 설정을 추가하여 시간 제한을 변경할 수 있습니다. 소비 계획에서 Linux 앱에 대해서는 아직 지원되지 않습니다. 이러한 앱의 경우 --browser 옵션을 사용하여 포털에서 로그를 봅니다.

deploy 작업에서 지원하는 옵션은 다음과 같습니다.

옵션 설명
--browser 기본 브라우저에서 함수 앱에 대한 Azure Application Insights 라이브 스트림을 엽니다.

자세한 내용은 Azure Functions에서 스트리밍 실행 로그 사용을 참조하세요.

func azure functionapp publish

Azure의 기존 함수 앱 리소스에 Functions 프로젝트를 배포합니다.

func azure functionapp publish <APP_NAME>

자세한 내용은 프로젝트 파일 배포를 참조하세요.

버전에 따라 다음 게시 옵션이 적용됩니다.

옵션 설명
--access-token 인증된 Azure 작업을 수행할 때 특정 액세스 토큰을 사용할 수 있습니다.
--access-token-stdin 표준 입력에서 특정 액세스 토큰을 읽습니다. 와 같은 az account get-access-token이전 명령에서 직접 토큰을 읽을 때 사용합니다.
--additional-packages 네이티브 종속성을 빌드할 때 설치할 패키지 목록입니다. 예: python3-dev libevent-dev
--build, -b Linux 함수 앱에 배포할 때 빌드 작업을 수행합니다. 수락: remotelocal.
--build-native-deps Python 함수 앱을 게시할 때 .wheels 폴더의 생성을 건너뜁니다.
--csx C# 스크립트(.csx) 프로젝트를 게시합니다.
--dotnet-cli-params 컴파일된 C# (.csproj) 함수를 게시할 때 핵심 도구는 호출 dotnet build --output bin/publish합니다. 이에 전달된 모든 매개 변수는 명령줄에 추가됩니다.
--force 특정 시나리오에서 사전 게시 확인을 무시합니다.
--list-ignored-files 파일을 기반으로 .funcignore 게시하는 동안 무시되는 파일 목록을 표시합니다.
--list-included-files 파일을 기반으로 .funcignore 게시되는 파일 목록을 표시합니다.
--management-url 클라우드에 대한 관리 URL을 설정합니다. 소버린 클라우드에서 실행할 때 사용합니다.
--no-build 프로젝트를 게시하는 동안 빌드되지 않습니다. Python의 경우 pip install이 수행되지 않습니다.
--nozip 기본 Run-From-Package 모드를 끕니다.
--overwrite-settings -y 사용할 때 --publish-local-settings -i 앱 설정을 덮어쓰라는 프롬프트를 표시하지 않습니다.
--publish-local-settings -i local.settings.json의 설정을 Azure에 게시하여 설정이 이미 있는 경우 덮어쓰라는 메시지를 표시합니다. 로컬 스토리지 에뮬레이터를 사용하는 경우 먼저 앱 설정을 실제 스토리지 연결로 변경합니다.
--publish-settings-only, -o 설정만 게시하고 콘텐츠를 건너뜁니다. 기본값은 프롬프트입니다.
--slot 게시할 특정 슬롯의 선택적 이름입니다.
--subscription 사용할 기본 구독을 설정합니다.

func azure storage fetch-connection-string

지정된 Azure Storage 계정에 대한 연결 문자열 가져옵니다.

func azure storage fetch-connection-string <STORAGE_ACCOUNT_NAME>

자세한 내용은 스토리지 연결 문자열 다운로드를 참조하세요.

func azurecontainerapps 배포

컨테이너화된 함수 앱을 Azure Container Apps 환경에 배포합니다. 함수 앱에서 사용하는 스토리지 계정과 환경이 모두 이미 있어야 합니다. 자세한 내용은 Azure Functions의 Azure Container Apps 호스팅을 참조하세요.

func azurecontainerapps deploy --name <APP_NAME> --environment <ENVIRONMENT_NAME> --storage-account <STORAGE_CONNECTION> --resource-group <RESOURCE_GROUP> --image-name <IMAGE_NAME> --registry-server <REGISTRY_SERVER> --registry-username <USERNAME> --registry-password <PASSWORD>

다음 배포 옵션이 적용되었습니다.

옵션 설명
--access-token 인증된 Azure 작업을 수행할 때 특정 액세스 토큰을 사용할 수 있습니다.
--access-token-stdin 표준 입력에서 특정 액세스 토큰을 읽습니다. 와 같은 az account get-access-token이전 명령에서 직접 토큰을 읽을 때 사용합니다.
--environment 기존 Container Apps 환경의 이름입니다.
--image-build 로 설정 true하면 로컬 Docker 빌드를 건너뜁니다.
--image-name 컨테이너 레지스트리에 있는 기존 컨테이너의 이미지 이름입니다. 이미지 이름에는 태그 이름이 포함됩니다.
--location 배포를 위한 지역입니다. 이상적으로는 환경 및 스토리지 계정 리소스와 동일한 지역입니다.
--management-url 클라우드에 대한 관리 URL을 설정합니다. 소버린 클라우드에서 실행할 때 사용합니다.
--name Container Apps 환경에서 함수 앱 배포에 사용되는 이름입니다. 포털에서 함수 앱을 관리할 때도 동일한 이름이 사용됩니다. 이름은 환경에서 고유해야 합니다.
--registry 설정되면 Docker 빌드가 실행되고 이미지가 에 설정된 레지스트리로 푸시됩니다 --registry. --registry--image-name과 함께 사용할 수 없습니다. Docker Hub의 경우 .--registry-username
--registry-password 프라이빗 레지스트리에서 이미지를 검색하는 데 사용되는 암호 또는 토큰입니다.
--registry-username 프라이빗 레지스트리에서 이미지를 검색하는 데 사용되는 사용자 이름입니다.
--resource-group 함수 관련 리소스를 만들 리소스 그룹입니다.
--storage-account 함수 앱에서 사용할 스토리지 계정에 대한 연결 문자열.
--subscription 사용할 기본 구독을 설정합니다.
--worker-runtime 함수 앱의 런타임 언어를 설정합니다. 이 매개 변수는 로컬 빌드 중에 언어가 결정되는 경우에만 사용 --image-name 되며 --image-build, 그렇지 않으면 언어가 결정됩니다. 지원되는 값은 dotnet, , nodedotnetIsolated, pythonpowershellcustom (고객 처리기의 경우)입니다.

Important

스토리지 연결 문자열 및 기타 서비스 자격 증명은 중요한 암호입니다. 스크립트 파일을 사용하여 func azurecontainerapps deploy 안전하게 저장하고 공개적으로 액세스할 수 있는 소스 제어에 저장하지 않도록 합니다.

func 배포

func deploy 명령은 더 이상 사용되지 않습니다. 그 대신 func kubernetes deploy을(를) 사용하세요.

func durable delete-task-hub

Durable Functions 작업 허브의 모든 스토리지 아티팩트가 삭제됩니다.

func durable delete-task-hub

delete-task-hub 작업에서 지원하는 옵션은 다음과 같습니다.

옵션 설명
--connection-string-setting 사용할 스토리지 연결 문자열이 포함된 설정의 선택적 이름입니다.
--task-hub-name 사용할 지속성 작업 허브의 선택적 이름입니다.

자세한 내용은 Durable Functions 설명서를 참조하세요.

func durable get-history

지정된 오케스트레이션 인스턴스의 기록을 반환합니다.

func durable get-history --id <INSTANCE_ID>

get-history 작업에서 지원하는 옵션은 다음과 같습니다.

옵션 설명
--id 오케스트레이션 인스턴스의 ID를 지정합니다(필수).
--connection-string-setting 사용할 스토리지 연결 문자열이 포함된 설정의 선택적 이름입니다.
--task-hub-name 사용할 지속성 작업 허브의 선택적 이름입니다.

자세한 내용은 Durable Functions 설명서를 참조하세요.

func durable get-instances

모든 오케스트레이션 인스턴스의 상태 반환합니다. top 매개 변수를 사용하여 페이징을 지원합니다.

func durable get-instances

get-instances 작업에서 지원하는 옵션은 다음과 같습니다.

옵션 설명
--continuation-token 반환할 요청의 특정 페이지/섹션을 나타내는 선택적 토큰입니다.
--connection-string-setting 사용할 스토리지 연결 문자열 포함하는 앱 설정의 선택적 이름입니다.
--created-after 필요에 따라 이 날짜/시간(UTC) 이후에 만든 인스턴스를 가져옵니다. 모든 ISO 8601 형식의 날짜/시간이 허용됩니다.
--created-before 필요에 따라 특정 날짜/시간(UTC) 이전에 만든 인스턴스를 가져옵니다. 모든 ISO 8601 형식의 날짜/시간이 허용됩니다.
--runtime-status 필요에 따라 running, completedfailed를 포함하여 상태가 특정 상태와 일치하는 인스턴스를 가져옵니다. 하나 이상의 공간으로 구분된 동상을 제공할 수 있습니다.
--top 필요에 따라 지정된 요청에서 반환되는 레코드 수를 제한합니다.
--task-hub-name 사용할 Durable Functions 작업 허브의 선택적 이름입니다.

자세한 내용은 Durable Functions 설명서를 참조하세요.

func durable get-runtime-상태

지정된 오케스트레이션 인스턴스의 상태 반환합니다.

func durable get-runtime-status --id <INSTANCE_ID>

get-runtime-status 작업에서 지원하는 옵션은 다음과 같습니다.

옵션 설명
--connection-string-setting 사용할 스토리지 연결 문자열이 포함된 설정의 선택적 이름입니다.
--id 오케스트레이션 인스턴스의 ID를 지정합니다(필수).
--show-input 설정하면 응답에 함수의 입력이 포함됩니다.
--show-output 설정되면 응답에 실행 기록이 포함됩니다.
--task-hub-name 사용할 Durable Functions 작업 허브의 선택적 이름입니다.

자세한 내용은 Durable Functions 설명서를 참조하세요.

func durable purge-history

지정된 임계값보다 오래된 오케스트레이션에 대한 오케스트레이션 인스턴스 상태, 기록 및 Blob Storage를 제거합니다.

func durable purge-history

purge-history 작업에서 지원하는 옵션은 다음과 같습니다.

옵션 설명
--connection-string-setting 사용할 스토리지 연결 문자열이 포함된 설정의 선택적 이름입니다.
--created-after 필요에 따라 이 날짜/시간(UTC) 이후에 만든 인스턴스의 기록을 삭제합니다. ISO 8601 형식의 모든 날짜/시간 값이 허용됩니다.
--created-before 필요에 따라 이 날짜/시간(UTC) 이전에 만든 인스턴스의 기록을 삭제합니다. ISO 8601 형식의 모든 날짜/시간 값이 허용됩니다.
--runtime-status 필요에 따라 상태 특정 상태 일치하는 인스턴스의 기록(예completd: , terminatedcanceledfailed)을 삭제합니다. 하나 이상의 공간으로 구분된 동상을 제공할 수 있습니다. 포함하지 --runtime-status않으면 상태 관계없이 인스턴스 기록이 삭제됩니다.
--task-hub-name 사용할 Durable Functions 작업 허브의 선택적 이름입니다.

자세한 내용은 Durable Functions 설명서를 참조하세요.

func durable raise-event

지정된 오케스트레이션 인스턴스에 이벤트를 발생합니다.

func durable raise-event --event-name <EVENT_NAME> --event-data <DATA>

raise-event 작업에서 지원하는 옵션은 다음과 같습니다.

옵션 설명
--connection-string-setting 사용할 스토리지 연결 문자열이 포함된 설정의 선택적 이름입니다.
--event-data 인라인 또는 JSON 파일(필수)에서 이벤트에 전달할 데이터입니다. 파일의 경우 @path/to/file.json과 같이 앰퍼샌드(@)를 파일 경로 앞에 추가합니다.
--event-name 발생시킬 이벤트의 이름입니다(필수).
--id 오케스트레이션 인스턴스의 ID를 지정합니다(필수).
--task-hub-name 사용할 Durable Functions 작업 허브의 선택적 이름입니다.

자세한 내용은 Durable Functions 설명서를 참조하세요.

func durable rewind

지정된 오케스트레이션 인스턴스를 되감습니다.

func durable rewind --id <INSTANCE_ID> --reason <REASON>

rewind 작업에서 지원하는 옵션은 다음과 같습니다.

옵션 설명
--connection-string-setting 사용할 스토리지 연결 문자열이 포함된 설정의 선택적 이름입니다.
--id 오케스트레이션 인스턴스의 ID를 지정합니다(필수).
--reason 오케스트레이션을 되감는 이유(필수).
--task-hub-name 사용할 Durable Functions 작업 허브의 선택적 이름입니다.

자세한 내용은 Durable Functions 설명서를 참조하세요.

func durable start-new

지정된 오케스트레이터 함수의 새 인스턴스를 시작합니다.

func durable start-new --id <INSTANCE_ID> --function-name <FUNCTION_NAME> --input <INPUT>

start-new 작업에서 지원하는 옵션은 다음과 같습니다.

옵션 설명
--connection-string-setting 사용할 스토리지 연결 문자열이 포함된 설정의 선택적 이름입니다.
--function-name 시작할 오케스트레이터 함수의 이름입니다(필수).
--id 오케스트레이션 인스턴스의 ID를 지정합니다(필수).
--input 인라인 또는 JSON 파일에서 오케스트레이터 함수에 대한 입력입니다(필수). 파일의 경우 @path/to/file.json과 같이 앰퍼샌드(@)를 파일 경로 앞에 추가합니다.
--task-hub-name 사용할 Durable Functions 작업 허브의 선택적 이름입니다.

자세한 내용은 Durable Functions 설명서를 참조하세요.

func durable terminate

지정된 오케스트레이션 인스턴스를 중지합니다.

func durable terminate --id <INSTANCE_ID> --reason <REASON>

terminate 작업에서 지원하는 옵션은 다음과 같습니다.

옵션 설명
--connection-string-setting 사용할 스토리지 연결 문자열이 포함된 설정의 선택적 이름입니다.
--id 오케스트레이션 인스턴스의 ID를 지정합니다(필수).
--reason 오케스트레이션을 중지하는 이유(필수).
--task-hub-name 사용할 Durable Functions 작업 허브의 선택적 이름입니다.

자세한 내용은 Durable Functions 설명서를 참조하세요.

func 확장 설치

non-.NET 프로젝트 또는 C# 스크립트 프로젝트에 Functions 확장을 수동으로 설치합니다.

func extensions install --package Microsoft.Azure.WebJobs.Extensions.<EXTENSION> --version <VERSION>

install 작업에서 지원하는 옵션은 다음과 같습니다.

옵션 설명
--configPath extensions.csproj 파일이 포함된 디렉터리의 경로입니다.
--csx C# 스크립팅(.csx) 프로젝트를 지원합니다.
--force 기존 확장의 버전을 업데이트합니다.
--output 확장에 대한 출력 경로입니다.
--package 특정 확장 패키지의 식별자입니다. 지정되지 않으면 func extensions sync와 마찬가지로 참조된 모든 확장이 설치됩니다.
--source NuGet.org를 사용하지 않는 경우의 NuGet 피드 원본입니다.
--version 확장 패키지 버전입니다.

다음 예제에서는 로컬 프로젝트에 Event Hubs 확장 버전 5.0.1을 설치합니다.

func extensions install --package Microsoft.Azure.WebJobs.Extensions.EventHubs --version 5.0.1

다음 고려 사항은 사용 func extensions install시 적용됩니다.

  • 컴파일된 C# 프로젝트(In-Process 및 격리된 작업자 프로세스 모두)의 경우 대신 표준 NuGet 패키지 설치 방법(예: dotnet add package)을 사용합니다.

  • Core Tools를 사용하여 확장을 수동으로 설치하려면 .NET 6.0 SDK가 설치되어 있어야 합니다.

  • 가능하면 확장 번들을 대신 사용해야 합니다. 다음은 확장을 수동으로 설치해야 하는 몇 가지 이유입니다.

    • 번들에서 사용할 수 없는 특정 버전의 확장에 액세스해야 합니다.
    • 번들에서 사용할 수 없는 사용자 지정 확장에 액세스해야 합니다.
    • 단일 번들에서 사용할 수 없는 특정 확장 조합에 액세스해야 합니다.
  • 확장을 수동으로 설치하려면 먼저 번들을 정의하는 host.json 파일에서 개체를 제거 extensionBundle 해야 합니다. 확장 번들을 host.json 파일에 이미 설정한 경우에는 아무 작업도 수행되지 않습니다.

  • 확장을 처음으로 명시적으로 설치하면 extensions.csproj라는 .NET 프로젝트 파일이 앱 프로젝트의 루트에 추가됩니다. 이 파일은 함수에 필요한 NuGet 패키지 세트를 정의합니다. 이 파일에서 NuGet 패키지 참조로 작업할 수 있지만 Core Tools를 사용하면 이 C# 프로젝트 파일을 수동으로 편집하지 않고도 확장을 설치할 수 있습니다.

func extensions sync

함수 앱에 추가된 모든 확장을 설치합니다.

sync 작업에서 지원하는 옵션은 다음과 같습니다.

옵션 설명
--configPath extensions.csproj 파일이 포함된 디렉터리의 경로입니다.
--csx C# 스크립팅(.csx) 프로젝트를 지원합니다.
--output 확장에 대한 출력 경로입니다.

누락된 extensions.csproj 파일을 다시 생성합니다. 확장 번들을 host.json 파일에 정의하면 아무 작업도 수행되지 않습니다.

func kubernetes deploy

Functions 프로젝트를 Kubernetes 클러스터에 사용자 지정 Docker 컨테이너로 배포합니다.

func kubernetes deploy 

이 명령은 프로젝트를 사용자 지정 컨테이너로 빌드하고 Kubernetes 클러스터에 게시합니다. 사용자 지정 컨테이너에는 Dockerfile이 있어야 합니다. Dockerfile을 사용하여 앱을 만들려면 명령과 함께 func init 옵션을 사용합니다--dockerfile.

사용할 수 있는 Kubernetes 배포 옵션은 다음과 같습니다.

옵션 설명
--dry-run 필요에 따라 배포 템플릿을 실행하지 않고 표시합니다.
--config-map-name 배포에 사용할 함수 앱 설정이 있는 기존 구성 맵의 선택적 이름입니다. --use-config-map가 필요합니다. 기본 동작은 local.settings.json 파일Values개체를 기반으로 설정을 만드는 것입니다.
--cooldown-period 모든 트리거 후의 냉각 기간(초)은 배포가 0으로 축소되기 전에 더 이상 활성화되지 않으며 기본값은 300초입니다.
--ignore-errors 리소스에서 오류를 반환한 후 배포를 계속합니다. 기본 동작은 오류 발생 시 중지하는 것입니다.
--image-name Pod 배포에 사용할 이미지의 이름과 함수를 읽을 이미지의 이름입니다.
--keda-version 설치할 KEDA의 버전을 설정합니다. 유효한 옵션은 v1v2(기본값)입니다.
--keys-secret-name 함수 액세스 키를 저장하는 데 사용할 Kubernetes 비밀 컬렉션의 이름입니다.
--max-replicas HPA(Horizontal Pod Autoscaler)에서 크기 조정하는 최대 복제본 수를 설정합니다.
--min-replicas HPA에서 크기 조정하지 않는 최소 복제본 수를 설정합니다.
--mount-funckeys-as-containervolume 함수 액세스 키를 컨테이너 볼륨으로 탑재합니다.
--name Kubernetes의 배포 및 기타 아티팩트에서 사용되는 이름입니다.
--namespace 배포할 Kubernetes 네임스페이스를 설정합니다. 이 네임스페이스는 기본 네임스페이스로 설정됩니다.
--no-docker 이미지 대신 현재 디렉터리에서 함수를 읽습니다. 이미지 파일 시스템을 탑재해야 합니다.
--registry 설정하면 Docker 빌드가 실행되고 이미지가 해당 이름의 레지스트리로 푸시됩니다. --registry--image-name과 함께 사용할 수 없습니다. Docker의 경우 사용자 이름을 사용합니다.
--polling-interval 기본값이 30인 비 HTTP 트리거를 검사 폴링 간격(초)입니다.
--pull-secret 프라이빗 레지스트리 자격 증명에 액세스하는 데 사용되는 비밀입니다.
--secret-name 배포에 사용할 함수 앱 설정이 포함된 기존 Kubernetes Secrets 컬렉션의 이름입니다. 기본 동작은 local.settings.json 파일Values개체를 기반으로 설정을 만드는 것입니다.
--show-service-fqdn IP 주소를 사용하는 기본 동작 대신 Kubernetes FQDN을 사용하여 HTTP 트리거의 URL을 표시합니다.
--service-type Kubernetes Service의 유형을 설정합니다. 지원되는 값은 , NodePortLoadBalancer (기본값)입니다ClusterIP.
--use-config-map ConfigMap 개체(v1) 대신 Secret 개체(v1)를 사용하여 함수 앱 설정을 구성합니다. 맵 이름은 .를 사용하여 --config-map-name설정됩니다.

Core Tools는 로컬 Docker CLI를 사용하여 이미지를 빌드하고 게시합니다. Docker가 이미 로컬에 설치되어 있는지 확인합니다. docker login 명령을 실행하여 계정에 연결합니다.

자세한 내용은 Kubernetes에 함수 앱 배포를 참조 하세요.

func kubernetes install

Kubernetes 클러스터에 KEDA를 설치합니다.

func kubernetes install 

kubectl 구성 파일에 정의된 클러스터에 KEDA를 설치합니다.

install 작업에서 지원하는 옵션은 다음과 같습니다.

옵션 설명
--dry-run 실행 없이 배포 템플릿을 표시합니다.
--keda-version 설치할 KEDA의 버전을 설정합니다. 유효한 옵션은 v1v2(기본값)입니다.
--namespace 특정 Kubernetes 네임스페이스에 대한 설치를 지원합니다. 설정되지 않으면 기본 네임스페이스가 사용됩니다.

자세한 내용은 Kubernetes에서 KEDA 및 함수 관리를 참조 하세요.

func kubernetes remove

kubectl 구성 파일에 정의된 Kubernetes 클러스터에서 KEDA를 제거합니다.

func kubernetes remove 

kubectl 구성 파일에 정의된 클러스터에서 KEDA를 제거합니다.

remove 작업에서 지원하는 옵션은 다음과 같습니다.

옵션 설명
--namespace 특정 Kubernetes 네임스페이스에서 제거를 지원합니다. 설정되지 않으면 기본 네임스페이스가 사용됩니다.

자세한 내용은 Kubernetes에서 KEDA 제거를 참조 하세요.

func settings add

local.settings.json 파일Values 컬렉션에 새 설정을 추가합니다.

func settings add <SETTING_NAME> <VALUE>

<SETTING_NAME>을 앱 설정의 이름으로 바꾸고, <VALUE>를 설정의 값으로 바꿉니다.

add 작업에서 지원하는 옵션은 다음과 같습니다.

옵션 설명
--connectionString 컬렉션 대신 컬렉션에 ConnectionStrings 이름-값 쌍을 추가합니다 Values . 특정 프레임워크에서 ConnectionStrings 필요한 경우에만 컬렉션을 사용합니다. 자세한 내용은 local.settings.json 파일을 참조하세요.

func settings decrypt

local.settings.json 파일Values 컬렉션에서 이전에 암호화된 값을 해독합니다.

func settings decrypt

컬렉션의 ConnectionStrings 커넥트ion 문자열 값도 암호가 해독됩니다. local.settings.json IsEncrypted 에서도 .로 설정됩니다 false. local.settings.json에서 중요한 정보가 누출될 위험을 줄이기 위해 로컬 설정을 암호화합니다. Azure에서 애플리케이션 설정은 항상 암호화된 상태로 저장됩니다.

func settings delete

local.settings.json 파일Values 컬렉션에서 기존 설정을 제거합니다.

func settings delete <SETTING_NAME>

<SETTING_NAME>을 앱 설정의 이름으로 바꾸고, <VALUE>를 설정의 값으로 바꿉니다.

delete 작업에서 지원하는 옵션은 다음과 같습니다.

옵션 설명
--connectionString 컬렉션에서 대신 컬렉션에서 ConnectionStrings 이름-값 쌍을 제거합니다 Values .

func 설정 암호화

local.settings.json 파일의 컬렉션에 있는 Values 개별 항목의 값을 암호화합니다.

func settings encrypt

ConnectionStrings 컬렉션의 연결 문자열 값도 암호화됩니다. local.settings.json IsEncrypted 에서도 로컬 런타임이 설정을 사용하기 전에 암호를 해독하도록 지정하는 것으로 설정 true됩니다. local.settings.json에서 중요한 정보가 누출될 위험을 줄이기 위해 로컬 설정을 암호화합니다. Azure에서 애플리케이션 설정은 항상 암호화된 상태로 저장됩니다.

func 설정 목록

local.settings.json 파일Values 컬렉션에서 설정 목록을 출력합니다.

func settings list

컬렉션의 ConnectionStrings 커넥트ion 문자열도 출력됩니다. 기본적으로 값은 보안을 위해 마스킹됩니다. 이 --showValue 옵션을 사용하여 실제 값을 표시할 수 있습니다.

list 작업에서 지원하는 옵션은 다음과 같습니다.

옵션 설명
--showValue 출력의 실제 마스크되지 않은 값을 표시합니다.

func 템플릿 목록

사용 가능한 함수(트리거) 템플릿을 나열합니다.

list 작업에서 지원하는 옵션은 다음과 같습니다.

옵션 설명
--language 반환된 템플릿을 필터링할 언어입니다. 기본값은 모든 언어를 반환하는 것입니다.