Cloud Shell 구성

이 페이지에서는 Cloud Shell을 구성하여 환경을 맞춤설정하는 방법을 설명합니다.

Cloud Shell 홈 디렉터리의 구성 파일

Cloud Shell은 $HOME 디렉터리로 마운트된 영구 디스크 스토리지 무료 5GB를 프로비저닝합니다. 설치된 소프트웨어, 스크립트, 사용자 구성 파일(예: .bashrc.vimrc)을 비롯한 홈 디렉터리에 저장된 모든 파일은 세션 간에 유지됩니다. .bashrc는 여러 세션에 유지되므로 Cloud Shell 동작을 맞춤설정하는 데 가장 좋은 방법입니다. 이와 비슷하게, 설치를 유지하기 위해서는 패키지를 홈 디렉터리에 설치할 수 있습니다.

사전 구성된 환경 변수

Cloud Shell이 시작되면 Cloud Shell의 활성 프로젝트가 즉시 사용 가능하도록 Cloud Shell에 있는 gcloud 구성으로 전파됩니다. 애플리케이션 기본 사용자 인증 정보 라이브러리 지원에서 프로젝트 ID를 정의하기 위해 사용하는 GOOGLE_CLOUD_PROJECT 환경 변수도 Cloud Shell의 활성 프로젝트를 가리키도록 설정됩니다.

CLOUD_SHELL 환경 변수가 true로 설정됩니다. 이 변수는 애플리케이션에서 Cloud Shell에서 실행 중인지 확인하기 위해 애플리케이션에서 확인할 수 있습니다.

gcloud CLI 환경설정

Cloud Shell을 사용할 때 gcloud CLI 환경설정은 현재 탭에서만 설정되고 세션 간에는 유지되지 않는 임시 tmp 폴더에 저장됩니다.

gcloud CLI 구성을 유지하려면 다음 방법 중 하나를 사용해서 설정하면 됩니다.

  • gcloud CLI 구성을 탭별로 맞춤설정하되 기본 구성 자체를 맞춤설정하려면 gcloud 구성 명령어(예를 들어 gcloud config set compute/region us-central1로 기본 리전 설정)를 $HOME/.bashrc 파일의 끝에 추가합니다.

    이렇게 하면 모든 새로운 탭이 Google Cloud 콘솔 프로젝트와 맞춤설정된 기본 구성을 상속하지만 각 탭의 구성을 추가로 맞춤설정할 수도 있습니다.

  • 항상 동일한 gcloud CLI 구성을 사용하려면 .bashrc 파일 끝에 export CLOUDSDK_CONFIG=$HOME/.config/gcloud를 추가한 후 gcloud config configurations create CONFIG_NAME을 실행하여 사용하고 싶은 구성을 만듭니다.

일반 속성

작업할 프로젝트를 설정하려면 다음을 실행합니다.

gcloud config set project [PROJECT_NAME]

명령어 프롬프트가 현재의 활성 프로젝트를 반영하도록 업데이트되어 [USERNAME]@cloudshell:~ ([PROJECT_NAME])$형식을 따릅니다.

원하는 리전을 선택하려면 다음을 실행합니다.

gcloud config set compute/region us-east1

위의 명령어는 설정할 수 있는 gcloud CLI 구성 예시입니다. 속성 설정에 대한 자세한 내용과 전체 목록은 gcloud CLI 속성 가이드를 참조하세요.

환경 맞춤설정

환경을 맞춤설정하면 Cloud Shell 환경이 시작될 때 추가 패키지를 이 환경에 설치할 수 있습니다.

환경 맞춤설정 스크립트

인스턴스가 부팅되면 Cloud Shell이 자동으로 $HOME/.customize_environment 스크립트를 실행합니다. .profile 또는 .bashrc와 달리 이 스크립트는 셸이 로그인될 때마다 한 번이 아닌 Cloud Shell이 부팅될 때 한 번 실행됩니다.

이 스크립트는 루트로 실행되며 Debian 패키지 관리 명령어를 사용하여 각 Cloud Shell 세션에 원하는 패키지를 설치할 수 있습니다.

예를 들어 Cloud Shell에 erlang을 설치하려면 .customize_environment 파일은 다음과 같습니다.

#!/bin/sh
apt-get update
apt-get -y install erlang

.customize_environment 스크립트의 실행 로그는 /var/log/customize_environment에서 찾을 수 있습니다. .customize_environment 스크립트는 백그라운드 프로세스로 실행되며 성공적으로 실행되면 /google/devshell/customize_environment_done을 터치합니다. 패키지 설치는 로그인과 동시에 실행되므로 로그인 프롬프트가 표시되고 잠시 후 설치된 패키지를 사용할 수 있습니다.

지정된 사용자 계정으로 Cloud Shell 열기

authuser 매개변수를 사용하면 Cloud Shell에서 사용할 사용자 계정을 지정할 수 있습니다. 지정된 사용자 계정으로 로그인해야 합니다. 지정된 계정에 로그인하지 않은 경우 Cloud Shell은 로그인된 기본 계정으로 열립니다. 예를 들어 URL shell.cloud.google.com?authuser=client1@example.com을 사용하여 client1@example.com으로 로그인되어 Cloud Shell을 열 수 있습니다.

컨테이너 이미지 맞춤설정

컨테이너 이미지 맞춤설정을 사용하면 지정된 추가 패키지와 커스텀 구성이 있는 커스텀 Cloud Shell 환경으로 작동하는 Docker 이미지를 만들 수 있습니다. Docker 이미지는 기본 Cloud Shell 이미지를 기반으로 하고 Container Registry에 호스팅되어야 합니다.

커스텀 컨테이너 이미지를 만드는 방법은 컨테이너 이미지 맞춤설정 가이드를 참조하세요.

환경 맞춤설정과 달리 컨테이너 이미지 맞춤설정은 기본 Cloud Shell 환경에 영향을 주지 않습니다. Cloud Shell에서 열기 링크를 사용하여 커스텀 이미지를 사용하고 공유할 수 있습니다.

tmux 지원

Cloud Shell은 기본적으로 tmux를 사용하므로 브라우저 탭 세션에서 지속성을 향상시킬 수 있습니다. 예를 들어 탭에서 Google Cloud 콘솔을 새로 고치거나 다른 머신에서 Cloud Shell에 연결하더라도 세션 상태가 손실되지 않습니다.

Cloud Shell은 기본 tmux 키 결합을 지원합니다. 예를 들어 Ctrl+b를 누른 후 %를 누르면 tmux는 현재 세션 창을 왼쪽과 오른쪽 창으로 분할하므로 디버깅에 유용할 수 있습니다.

Cloud Shell에서 tmux를 중지하려면 터미널 설정 버튼(렌치 아이콘)을 클릭하고 tmux 설정을 선택한 후 tmux 통합 사용 설정 옵션을 선택 취소합니다.

사용 통계

Cloud Shell은 Cloud Shell 터미널 내에서 실행되는 명령에서 익명 처리된 사용 통계를 수집합니다. 통계는 Cloud Shell에 사전 설치된 명령어에서만 수집됩니다. 이러한 통계를 사용자 계정에 다시 연결하는 것은 불가능합니다.

측정항목은 이러한 명령어에 전달된 인수와 같은 개인 식별 정보에서 수집되지 않습니다.

언제든지 측정항목 수집 환경설정을 변경하려면 설정 메뉴 설정 버튼에서 터미널 사용 통계를 선택합니다. 설정 메뉴에서 환경설정을 변경하면 다음 세션에서 적용됩니다. 측정항목 수집을 사용 설정 또는 사용 중지하려면 탭을 닫고 항목을 변경한 후 다른 탭을 엽니다.

참고: Cloud Shell에 기본적으로 사용 설정되어 있는 gcloud 사용 통계와는 별개입니다.

gcloud CLI 측정항목 수집을 사용 중지하려면 Cloud Shell 세션에서 다음 명령어를 실행합니다.

gcloud config set disable_usage_reporting true