Google Cloud 콘솔을 사용하여 Cloud 함수 만들기
Cloud Functions는 클라우드 서비스를 빌드하고 연결하기 위한 서버리스 실행 환경입니다. Cloud Functions를 사용하면 클라우드 인프라와 서비스에서 발생하는 이벤트에 연결되는 단일 목적의 간단한 함수를 작성할 수 있습니다. 함수는 감시 중인 이벤트가 발생하면 또는 HTTP 요청에 의해 트리거됩니다.
이 페이지에서는 Google Cloud 콘솔을 사용하여 2세대 HTTP 함수를 만들고 배포하는 방법을 설명합니다. 이 페이지의 안내는 Node.js를 기반으로 하지만 모든 런타임에서 프로세스는 비슷합니다.
이 빠른 시작의 예시에서는 HTTP 요청에 의해 트리거될 때 메시지를 반환하는 다음 Node.js 함수를 사용합니다.
const functions = require('@google-cloud/functions-framework'); functions.http('helloHttp', (req, res) => { res.send(`Hello ${req.query.name || req.body.name || 'World'}!`); });
시작하기 전에
- Google Cloud 계정에 로그인합니다. Google Cloud를 처음 사용하는 경우 계정을 만들고 Google 제품의 실제 성능을 평가해 보세요. 신규 고객에게는 워크로드를 실행, 테스트, 배포하는 데 사용할 수 있는 $300의 무료 크레딧이 제공됩니다.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Enable the Cloud Functions, Cloud Build, Artifact Registry, Cloud Run, Logging, and Pub/Sub APIs.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Enable the Cloud Functions, Cloud Build, Artifact Registry, Cloud Run, Logging, and Pub/Sub APIs.
함수 만들기
Google Cloud 콘솔에서 Cloud Functions 페이지로 이동합니다.
Cloud Functions를 사용 설정한 프로젝트를 선택했는지 확인합니다.
함수 만들기를 클릭합니다.
함수 이름 필드에 함수 이름을 입력하거나 기본값을 사용합니다.
리전 목록에서 함수를 배포할 리전을 선택합니다.
인증의 경우 기본 인증 필요 옵션을 선택된 상태로 둡니다.
다른 옵션 인증되지 않은 호출 허용을 사용하면 인증 없이 함수에 도달할 수 있습니다. 이는 테스트에는 유용하지만, 공개 API 또는 웹사이트를 만들지 않는 한 프로덕션에서는 이 설정을 사용하지 않는 것이 좋습니다. 또한 회사 정책 설정에 따라 작동하지 않을 수 있습니다. 인증이 필요한 함수를 호출하는 방법에 대한 자세한 내용은 호출 인증을 참조하세요.
다음을 클릭합니다.
소스 코드 목록에서 기본 인라인 편집기 옵션을 선택된 상태로 둡니다. 이 실습에서는 편집기에 제공된 기본 함수를 사용합니다.
런타임 목록에서 기본 Node.js 20 옵션을 선택된 상태로 둡니다.
함수 배포하기
페이지 하단에서 배포를 클릭합니다.
배포를 클릭하면 Google Cloud 콘솔이 함수 세부정보 페이지로 리디렉션됩니다.
배포 중인 함수 옆에 작은 스피너가 나타납니다. 함수 배포가 끝나면 스피너는 녹색 체크표시로 바뀝니다.
함수 테스트
배포를 완료한 후 함수를 테스트하려면 다음 안내를 따르세요.
테스트 탭을 엽니다.
CLI 테스트 명령어 필드까지 아래로 스크롤합니다.
Cloud Shell에서 실행을 클릭합니다.
화면 하단에 Cloud Shell 창이 열리고 테스트 탭의
curl
명령어가 표시됩니다. Cloud Shell을 승인하라는 메시지가 표시될 수 있습니다.Cloud Shell 창에 표시된
curl
명령어를 실행하려면 Return 키를 누릅니다.'Hello world' 메시지가 표시됩니다.