Pages Cloud Functions에 Python 및 Go 런타임 추가

Pages Cloud Functions에 Python과 Go 두 가지 런타임이 추가되었습니다. 동일한 프로젝트에서 이 언어들로 백엔드 API를 작성하고, 프론트엔드 페이지와 함께 리포지토리에 푸시하면 자동으로 빌드 및 배포됩니다.
이번 업데이트 이후, cloud-functions 디렉토리에서 .py 및 .go 파일을 인식할 수 있게 되었습니다. 플랫폼이 해당 런타임을 자동으로 매칭하며, 파일 경로가 곧 API 경로가 됩니다.
Python 런타임
Cloud Functions의 Python 런타임은 두 가지 모드를 제공합니다:
- Handler 모드: 표준 라이브러리만 사용하며 서드파티 의존성이 필요 없습니다. 하나의 파일이 하나의 API 엔드포인트에 대응하는 간단하고 직관적인 방식입니다.
- Framework 모드: WSGI(동기, 예: Flask, Django)와 ASGI(비동기, 예: FastAPI, Sanic) 두 종류의 주요 프레임워크를 네이티브로 지원합니다. 플랫폼이 프레임워크 유형을 자동 감지하므로 별도의 설정이 필요 없습니다.
의존성 관리의 경우, 빌드 시 서드파티 라이브러리가 자동으로 감지됩니다. requirements.txt를 통해 수동으로 지정할 수도 있습니다. 실행 환경은 Python 3.10입니다.
Go 런타임
Go 런타임도 Handler 모드와 Framework 모드로 나뉩니다:
- Handler 모드: 순수 표준 라이브러리 방식으로, 프레임워크 의존성이 없습니다. 파일명이 라우팅 경로를 결정합니다.
- Framework 모드: Gin, Echo, Fiber, Chi 등 주요 프레임워크를 지원하며, 플랫폼이 포트 적응과 경로 매핑을 자동으로 처리합니다.
Go의 빌드 과정은 완전히 자동화되어 있어, 프레임워크 감지, 라우팅 매핑, 크로스 컴파일 모두 수동 설정이 필요 없습니다. 실행 환경은 Go 1.26입니다.
시작하기
로컬 개발 시, EdgeOne CLI를 최신 버전으로 업데이트한 후 프로젝트 디렉토리에서 edgeone pages dev 를 실행하세요. 프론트엔드와 Cloud Functions 서비스가 동일한 포트에서 동시에 실행되므로 CORS 문제를 처리할 필요가 없습니다.
로컬에서 검증을 마친 후, 코드를 리포지토리에 푸시하면 플랫폼이 자동으로 빌드와 배포를 완료합니다.
상세 문서:
질문이나 피드백이 있으시면 Discord 커뮤니티에서 편하게 남겨주세요.