Sangmun

Google Cloud Registry에 Docker Image push 본문

개발/docker

Google Cloud Registry에 Docker Image push

상상2 2023. 2. 5. 15:36

Docker Image를 저장하는 Registry는 아래와 같이 있으며

별로도 지정을 하지 않으면 기본적으로 Dockerhub를 사용하게 된다.

 

GCR에 Docker 이미지 푸시하기

 

먼저 GCP의 Container Registry에 이동해서 확인을 해준다. 현재는 아직 푸시된 이미지가 없기 때문에 아무것도 있지 않다.

다음으로는 로컬에서 gcloud를 이용해서 클라우드에 있는 우리의 프로젝트에 로그인을 한다.

만약에 gcloud sdk가 없다면 설치를 해주면 된다.

https://cloud.google.com/sdk?hl=ko 

 

Cloud SDK - 라이브러리 및 명령줄 도구  |  Google Cloud

Cloud SDK는 Google Cloud에서의 개발을 위한 도구 모음으로 gcloud, gsutil, bq 명령줄 도구, 클라이언트 라이브러리, 로컬 에뮬레이터가 포함되어 있습니다.

cloud.google.com

gcloud가 설치가 되었으면 다음의 명령어로 gcloud에 로그인을 한 후 프로젝트로 접근을 해준다.

$gcloud auth login
$gcloud config set project <your_project_id>

왼쪽은 ID column에 있는게 project id이다.

다음으로는 gcloud의 docker 설정을 해준다.

$gcloud auth configure-docker

 

이제 기존에 있던 docker image를 gcr에 업로드 하기 위해 tag를 붙여줘야 한다.

gcr에 올릴 이미지 이름은 gcr.io/gcp 프로젝트 이름/이미지 이름 의 형태여야 한다.

 

docker tag 명령어를 사용해서 기존의  my-fastapi-app 이미지를 grc.io 이미지로 바꿔주고

tag로 새로 만들어준 이미지를 push하면 gcr에 업로드가 된다.

gcr에 이미지가 업로드된 모습

 

그리고 업로드된 이미지는 docker pull gcr.io/gcp 프로젝트 이름/이미지 이름 명령어 형태로 다시 다운로드가 가능하다.

 

GCP Cloud Run으로 GCR에 올린 이미지 배포 하기

cloud run으로 gcr에 올린 이미지를 배포하는 방법은 매우 쉽다.

Cloud Run 생성에서 컨테이너 이미지 URL에 방금전 GCR에 push할때 사용했던 gcr.io/gcp 프로젝트 이름/이미지 이름 형태의 주소를 넣어주기만 하면 되기 때문이다.

생성이 완료가 되면 아래와 같이 URL이 생성이 되고

해당 주소로 curl 명령어를 날려주면 아래와 같이 응답이 오는것을 확인할 수 있다.

'개발 > docker' 카테고리의 다른 글

Docker Image를 만들기 위한 Dockerfile 작성 기본  (0) 2023.02.04
Comments