종속 항목 처리


Python으로 작성된 Cloud Functions를 위한 종속 항목을 지정하는 방법은 두 가지로, pip 패키지 관리자의 requirements.txt 파일을 사용하는 방법 또는 로컬 종속 항목을 함수와 함께 패키징하는 방법이 있습니다.

Pipfile/Pipfile.lock 표준을 사용하는 종속 항목 사양은 지원되지 않습니다. 프로젝트에 이러한 파일이 존재해선 안 됩니다.

pip를 사용하여 종속 항목 지정

Python의 종속 항목은 pip로 관리되며 requirements.txt라는 메타데이터 파일로 표현됩니다. 이 파일은 함수 코드가 포함된 main.py 파일과 동일한 디렉터리에 있어야 합니다.

함수를 배포하면 Cloud Functions가 pip를 사용하여 requirements.txt 파일에 선언된 종속 항목을 다운로드하고 설치합니다.

requirements.txt 파일에는 패키지당 한 줄이 포함됩니다. 각 줄에는 패키지 이름과 선택사항으로 요청된 버전이 포함됩니다. 자세한 내용은 requirements.txt 참조를 참조하세요.

다음은 requirements.txt 파일의 예시입니다.

requests==2.20.0
numpy

로컬 종속 항목 패키징

함수와 함께 종속 항목을 패키징하고 배포할 수도 있습니다. 이 방법은 pip 패키지 관리자를 통해 종속 항목을 사용할 수 없거나 Cloud Functions 환경의 인터넷 액세스가 제한된 경우에 유용합니다.

예를 들어 다음과 같은 디렉터리 구조를 사용할 수 있습니다.

myfunction/
├── main.py
└── localpackage/
    ├── __init__.py
    └── script.py

그런 다음 import 문을 사용하여 localpackage에서 평소처럼 코드를 가져올 수 있습니다.

# Code in main.py
from localpackage import script

이 방법은 setup.py 파일을 실행하지 않습니다. 이러한 파일이 포함된 패키지는 계속 번들로 제공될 수 있지만 Cloud Functions에서 올바르게 실행되지 않을 수 있습니다.