Google Cloud의 기본 명령줄 도구인 Google Cloud CLI에서 자주 사용하는 명령어 목록입니다.
(소개 도움말, 명령어 이해, 인쇄용 PDF도 포함됩니다.)
요약본
시작하기
gcloud CLI를 사용하여 시작합니다.
gcloud init: gcloud CLI를 초기화, 승인, 구성합니다.gcloud version: 버전과 설치된 구성요소를 표시합니다.gcloud components install: 특정 구성요소를 설치합니다.gcloud components update: gcloud CLI를 최신 버전으로 업데이트합니다.gcloud config set project: 작업할 기본 Google Cloud 프로젝트를 설정합니다.gcloud info: 현재 gcloud CLI 환경 세부정보를 표시합니다.
도움말
gcloud CLI가 최선을 다해 도와드리겠습니다.
gcloud help: gcloud CLI 참조 문서에서 특정 용어를 검색합니다.gcloud feedback: gcloud CLI팀에 의견을 보냅니다.gcloud topic: 접근성, 필터링, 형식 지정과 같은 비명령어 주제에 대한 보충 도움말 자료입니다.
맞춤설정
gcloud CLI를 직접 만들고 속성을 통하여 구성을 맞춤설정합니다.
gcloud config set: 현재 구성의 속성(예: 컴퓨팅/영역)을 정의합니다.gcloud config get: gcloud CLI 속성의 값을 가져옵니다.gcloud config list: 현재 구성의 모든 속성을 표시합니다.gcloud config configurations create: 이름이 지정된 새 구성을 만듭니다.gcloud config configurations list: 사용 가능한 모든 구성 목록을 표시합니다.gcloud config configurations activate: 기존의 이름이 지정된 구성으로 전환합니다.
승인 및 사용자 인증 정보
gcloud CLI에 대한 권한을 부여하고 취소하며 사용자 인증 정보를 관리합니다.
gcloud auth login:Google Cloud 사용자 인증 정보로 gcloud CLI에 대한Google Cloud 액세스를 승인하고 현재 계정을 활성으로 설정합니다.gcloud auth activate-service-account: 서비스 계정 사용자 인증 정보를 사용하여gcloud auth login과 유사한 Google Cloud 액세스를 승인합니다.gcloud auth application-default: Cloud 클라이언트 라이브러리의 애플리케이션 기본 사용자 인증 정보(ADC)를 관리합니다.gcloud auth list: 모든 사용자 인증 정보 계정을 나열합니다.gcloud auth print-access-token: 현재 계정의 액세스 토큰을 표시합니다.gcloud auth revoke: 계정의 액세스 사용자 인증 정보를 삭제합니다.
프로젝트
프로젝트 액세스 정책을 관리합니다.
gcloud projects describe: 프로젝트의 메타데이터(ID 포함)를 표시합니다.gcloud projects add-iam-policy-binding: 지정된 프로젝트에 IAM 정책 binding을 추가합니다.
IAM
Identity and Access Management(IAM) 환경설정 및 서비스 계정을 구성합니다.
gcloud iam list-grantable-roles: 리소스에 대해 IAM 역할 부여 가능한 역할을 나열합니다.gcloud iam roles create: 프로젝트 또는 조직의 커스텀 역할을 만듭니다.gcloud iam service-accounts create: 프로젝트의 서비스 계정을 만듭니다.gcloud iam service-accounts add-iam-policy-binding: 서비스 계정에 IAM 정책 binding을 추가합니다.gcloud iam service-accounts set-iam-policy-binding: 기존 IAM 정책 binding을 바꿉니다.gcloud iam service-accounts keys list: 서비스 계정의 키를 나열합니다.
Docker 및 Google Kubernetes Engine(GKE)
Kubernetes에서 컨테이너화된 애플리케이션을 관리합니다.
gcloud auth configure-docker: gcloud CLI를 Docker 사용자 인증 정보 도우미로 등록합니다.gcloud container clusters create: GKE 컨테이너를 실행할 클러스터를 만듭니다.gcloud container clusters list: GKE 컨테이너를 실행하기 위한 클러스터를 나열합니다.gcloud container clusters get-credentials:kubectl을 가져와서 GKE 클러스터를 사용하기 위해kubeconfig를 업데이트합니다.gcloud container images list-tags: 컨테이너 이미지의 태그 및 다이제스트 메타데이터를 나열합니다.
가상 머신 및 Compute Engine
인프라에서 VM을 생성, 실행, 관리합니다. Google Cloud
gcloud compute zones list: Compute Engine 영역을 나열합니다.gcloud compute instances create: VM 인스턴스를 만듭니다.gcloud compute instances describe: VM 인스턴스의 세부정보를 표시합니다.gcloud compute instances list: 프로젝트의 모든 VM 인스턴스를 나열합니다.gcloud compute disks snapshot: 영구 디스크의 스냅샷을 만듭니다.gcloud compute snapshots describe: 스냅샷의 세부정보를 표시합니다.gcloud compute snapshots delete: 스냅샷을 삭제합니다.gcloud compute ssh: SSH를 사용하여 VM 인스턴스에 연결합니다.
서버리스 및 App Engine
완전 관리형 서버리스 플랫폼에서 확장성이 우수한 애플리케이션 빌드하기
gcloud app deploy: App Engine 서버에 앱의 코드와 구성을 배포합니다.gcloud app versions list: App Engine 서버에 배포된 모든 서비스의 모든 버전을 나열합니다.gcloud app browse: 웹브라우저에서 현재 앱을 엽니다.gcloud app create: 현재 프로젝트 내에서 App Engine 앱을 만듭니다.gcloud app logs read: 최신 App Engine 앱 로그를 표시합니다.
기타
유용하게 사용되는 명령어
gcloud kms decrypt: Cloud Key Management Service 키를 사용하여 암호문을 일반 텍스트 파일로 복호화합니다.gcloud logging logs list: 프로젝트 로그를 나열합니다.gcloud sql backups describe: Cloud SQL 인스턴스 백업에 대한 정보를 표시합니다.gcloud sql export sql: Cloud SQL 인스턴스에서 SQL 파일로 데이터를 내보냅니다.
소개 입문서
gcloud CLI를 시작하는 방법에 대한 간단한 입문서 입니다.
Google Cloud CLI 설치
이 설치 안내에 따라 Google Cloud CLI를 설치합니다.
플래그, 인수 및 기타 놀라운 추가
인수는 위치 인수 또는 플래그일 수 있습니다.
- 위치 인수: 명령어 이름 뒤에 설정하며 위치 인수의 순서를 준수해야 합니다.
플래그: 위치 인수 뒤에 설정되며 플래그 순서는 중요하지 않습니다.
플래그는 다음 중 하나일 수 있습니다.
- 이름-값 쌍(
--foo=bar) - 불리언(
--force/no-force)
또한 플래그는 다음 중 하나일 수 있습니다.
- 필수
- 선택사항: 선택적 플래그가 정의되어 있지 않으면 기본값이 사용됩니다.
- 이름-값 쌍(
전역 플래그
다음과 같은 일부 플래그는 gcloud CLI 환경 전체에서 사용할 수 있습니다.
--help: 잘 모르는 경우 명령어에 대한 자세한 도움말을 표시합니다.--project: 현재 프로젝트가 아닌 다른 프로젝트를 사용하는 경우 사용합니다.--quiet: 대화형 메시지 표시를 사용 중지하고 입력에 기본값을 적용합니다.--verbosity:debug,info,warning,error,critical,none의 세부정보 수준을 설정합니다.--version:gcloud버전 정보를 표시합니다.--format:config,csv,default,diff,disable,flattened,get,json,list,multi,none,object,table,text,value,yaml로 출력 형식을 설정합니다.
결과 정리
필터, 형식, 제한, 정렬 기준 플래그를 통해 출력에서 최대한 활용할 수 있습니다.
f1-micro 머신 유형이 아니고 프리픽스가 us인 Compute Engine 인스턴스의 경우 다음 명령어를 사용합니다.
gcloud compute instances list --filter="zone ~ ^us AND -machineType:f1-micro"
2018년 1월 15일 이후에 생성된 프로젝트 목록이 가장 오래된 것부터 최신순으로 정렬되고 프로젝트 번호, 프로젝트 ID, 로컬 시간대의 날짜 및 시간으로 이루어진 생성 시간 열이 있는 테이블로 표시되는 경우 다음 명령어를 사용합니다.
gcloud projects list --format="table(projectNumber,projectId,createTime.date(tz=LOCAL))"
--filter="createTime>=2018-01-15T12:00:00" --sort-by=createTime
my-label(모든 값) 라벨이 지정된 Compute Engine 인스턴스 10개 목록의 경우 다음 명령어를 사용합니다.
gcloud compute instances list --filter="labels.my-label:*" --limit=10
명령어 이해
명령어를 자체적으로 검색할 수 있도록 하는 gcloud CLI 명령어의 기본 패턴입니다.
gcloud CLI 명령어 찾기
gcloud CLI는 트리입니다. 리프가 아닌 노드는 명령어 그룹이고 리프 노드는 명령어입니다. 명령어 및 리소스에서도 명령줄 자동 완성 기능을 사용할 수 있습니다.
대부분의 gcloud 명령어는 다음 형식을 따릅니다.
gcloud + release level (optional) + component + entity + operation + positional args + flags
예를 들면 다음과 같습니다.
gcloud + compute + instances + create + example-instance-1 + --zone=us-central1-a
출시 레벨
출시 레벨은 명령어의 릴리스 상태를 나타냅니다.
예시: 알파 명령어의 경우 alpha, 베타 명령어의 경우 beta, GA 명령어의 경우 출시 레벨이 필요하지 않습니다.
구성요소
구성요소는 다양한 Google Cloud 서비스를 나타냅니다.
예시: Compute Engine의 경우 compute, App Engine의 경우 app 등입니다.
항목
항목은 구성요소 아래에 있는 요소 또는 요소 모음의 복수 형태를 나타냅니다.
예시: compute의 경우 disks, firewalls, images, instances, regions, zones이 있습니다.
작업
작업은 항목에서 수행할 작업의 명령형 동사 형태를 나타냅니다.
예시: 일반적인 작업은 describe, list, create/update,
delete/clear, import, export, copy, remove, add, reset, restart,
restore, run, deploy입니다.
위치 인수
위치 인수는 명령어를 실행하는 데 필요한 필수 순서별 인수를 나타냅니다.
예시: <INSTANCE_NAMES>은 gcloud compute instances create의 필수 위치 인수입니다.
플래그
플래그는 위치 인수 뒤에 명령어로 전달되는 추가 인수 --flag-name(=value)를 나타냅니다.
예시: --machine-type=<MACHINE_TYPE> 및 --preemptible는 gcloud compute instances create에 대한 선택적 플래그입니다.