Google Cloud Shell 커스텀 설정

Google Cloud Shell 살펴본 내용을 정리해 본다.

개념 탑재


Google Cloud Shell 은 GCP 를 웹에서 관리할 수 있도록 gcloud , git 등이 사전 설치되어 있는 VM (Compute Engine)과 웹 콘솔을 제공한다. 무료지만 사용량에 한도가 있다.

세션이 쉽게 끊어지고 여러 창에서 열 수 있는 환경에서 어떤 식으로 제공하는가 궁금했는데, tmux 를 이용하고 있다. 따라서 tmux 단축키를 이용하면 아래와 같이 창을 여러개 만들어 다중 작업도 가능하다.


커스텀 설정


개인적인 설정을 추가하고 싶으면 기본으로 제공되는 Docker base image 에 Dockerfile 을 이용해 Custom docker image 를 만들어 쓰면 된다. 이 부분은  Cloud Shell Environment 페이지에서 안내하고 있으며, 튜토리얼도 제공한다.

커스텀 환경은 다음과 같은 순서로 구축한다.
  1. 클라우드 쉘을 프로젝트와 연결
    gcloud config set project <project-id>
  2. VM 내에 커스텀 이미지 뼈대 코드(boilerplate)를 만들고, 해당 코드를 저장한 Source Repository 를 지정한다. 아래의 $REPO_NAME 자리에 원하는 저장소 이름을 지ㅈ
    cloudshell env create-custom-image $REPO_NAME
  3. 뼈대 코드로 생성된 cloudbuild.yaml, Dockerfile 을 수정해서 커스터마이징
  4. 이미지 빌드 및 테스트
    cloudshell env build-local
    
    cloudshell env run
    exit
  5. 작성한 코드를 저장소에 Commit & Push
    git commit -a -m "Initial custom \
        environment check-in."
    
    git push origin master
  6. 이제 빌드된 커스텀 이미지를 Container Registry 에 올려두자. 이렇게 올린 파일은 Container Registry 콘솔에서 조회할 수도 있고, 실제 데이터는 Cloud Storage 에 저장되므로 Cloud Storage 콘솔에서 확인해볼 수도 있다.
    cloudshell env push
  7. 클라우드 쉘 환경 편집 페이지에서 이미지를 커스텀 이미지로 설정한다.
  8. 환경을 업데이트한다.
    cloudshell env update-default-image

이렇게 설정까지는 했는데.. 이미지가 3G 이 넘는다.
작은 편의를 위해 이렇게까지 해야 하나 싶어 결국 삭제 ㅋ

댓글

이 블로그의 인기 게시물

pandas.read_csv() 에서 왠만하면 컬럼타입을 지정하자

스프링 컨텍스트 설정파일과 URI 경로를 제대로 못찾는 삽질