이 페이지에서는 Cloud Run용 서비스 개발을 시작하기 위해 알아야 할 몇 가지 사항을 설명합니다.
코드 요구사항
서비스를 개발할 때 다음 요구사항을 충족해야 합니다.
- 서비스는 요청을 리슨해야 합니다.
요청이 전송되는 포트를 구성할 수 있습니다.
Cloud Run 인스턴스 내에서
PORT
환경 변수 값은 항상 요청이 전송되는 포트를 반영합니다. 코드에서는 이PORT
환경 변수가 있는지 확인해야 하며, 변수가 있으면 이를 리슨하여 이동성을 극대화해야 합니다. - 서비스는 스테이트리스(Stateless)여야 하며, 영구 로컬 상태를 사용할 수 없습니다.
- 서비스가 요청 처리 범위 외부에서 백그라운드 작업을 수행하는 경우 항상 CPU가 항상 할당됨 설정을 사용해야 합니다.
- 서비스에 네트워크 파일 시스템이 사용될 경우 2세대 실행 환경을 사용해야 합니다.
컨테이너 런타임 계약에서 이러한 제약조건에 대한 자세한 내용을 확인할 수 있습니다.
프로그래밍 언어 지원
Cloud Run을 사용하면 원하는 프로그래밍 언어로 코드를 작성할 수 있습니다.
빌드 및 배포 빠른 시작에서는 많이 사용되는 언어로 샘플을 제공합니다.
웹 서버 사용
웹 서버를 사용하여 필수 포트에서 리슨하고 수신 요청을 처리하고 라우팅할 수 있습니다. 예를 들어 Node.js 개발자는 Express.js를, Python 개발자는 Flask를, Ruby 개발자는 Sinatra를 사용할 수 있습니다.
코드 컨테이너화
자세한 내용은 코드 컨테이너화를 참조하세요.
다음 단계
- 서비스 코드와 Dockerfile이 있으면 컨테이너 이미지를 빌드한 다음 로컬 테스트에서 계속 반복해야 합니다.
- 기존 웹 애플리케이션을 마이그레이션하는 경우 Cloud Run으로 서비스 마이그레이션을 참조하세요.
- Cloud Run 서비스 설계, 구현, 테스트, 배포에 대한 권장사항은 개발 도움말을 참조하세요.