OS 전용 런타임 구성

OS 전용 런타임은 Cloud Run 소스 배포를 위한 언어 독립적인 범용 런타임입니다. 여기에는 추가 언어별 런타임 구성요소 없이 기본 Ubuntu 운영체제 (OS)가 포함됩니다. OS 전용 런타임을 사용하면 소스에서 Go 애플리케이션과 Dart, Go와 같은 바이너리를 배포할 수 있습니다. 이 런타임을 사용하여 처음부터 빌드한 자체 애플리케이션 이미지를 배포할 수도 있습니다.

OS 전용 런타임은 Cloud Run의 자동 기본 이미지 업데이트와 호환됩니다. 즉, 특정 지원되는 언어 런타임을 사용하지 않는 경우에도 애플리케이션이 운영체제 수준의 보안 패치와 업데이트를 자동으로 수신합니다.

지원되는 스택

OS 전용 런타임은 google-24 스택에서 사용할 수 있습니다. 사용 가능한 OS 전용 런타임 버전 및 지원 일정에 대한 자세한 내용은 런타임 수명 주기를 참고하세요.

컴파일된 바이너리

OS 전용 런타임을 사용하면 사전 컴파일된 바이너리를 배포할 수 있습니다. 런타임 별칭을 사용하여 기본 이미지를 타겟팅할 수도 있습니다. 예를 들어 google-24/osonly24 기본 이미지를 사용하려면 별칭 osonly24을 지정합니다.

컴파일된 언어의 경우 배포하기 전에 Linux OS를 타겟팅하는 바이너리를 빌드해야 합니다. 예를 들어 linux/amd64를 타겟팅하는 Go 애플리케이션을 컴파일하려면 다음 명령어를 실행합니다.

GOOS="linux" GOARCH=amd64 go build main.go

Cloud Run에 배포

gcloud beta run deploy 명령어를 사용하여 소스에서 Cloud Run으로 서비스를 배포합니다. 다음 배포 방법 중 하나를 사용하여 기본 이미지 (예: osonly24)를 지정합니다.

빌드 사용

빌드를 사용하여 소스에서 Cloud Run에 Go 애플리케이션을 배포하려면 다음 명령어를 실행합니다.

gcloud beta run deploy SERVICE \
--source . \
--base-image=osonly24 \
--project PROJECT_ID \
--automatic-updates

다음을 바꿉니다.

  • SERVICE: Cloud Run 서비스 이름
  • PROJECT_ID: Google Cloud 프로젝트 ID

빌드를 사용하여 소스에서 배포하는 방법에 대한 자세한 내용은 소스 코드에서 서비스 배포를 참고하세요.

빌드 없음

빌드를 사용하지 않고 소스에서 Cloud Run으로 배포하려면 다음 명령어를 실행합니다.

gcloud beta run deploy SERVICE \
--source . \
--no-build \
--base-image=osonly24 \
--project PROJECT_ID \
--command COMMAND

다음을 바꿉니다.

  • SERVICE: Cloud Run 서비스 이름
  • PROJECT_ID: Google Cloud 프로젝트 ID
  • COMMAND: 컨테이너가 시작할 때 실행하는 명령어입니다(예: ./main).

빌드 없이 소스에서 배포하는 방법에 대한 자세한 내용은 소스 코드에서 서비스 배포를 참고하세요.