-
[GCR] github action 에 google cloud 배포 위한 IAM 등록인프라/GCP 2024. 1. 29. 18:34
google cloud 에 어플리케이션을 배포하려면 CI/CD 도구가 필요하다.
배포 도구로 github actions 를 통해 구글 클라우드에 어플리케이션을 배포하려면 IAM 이라는 서비스계정 인증절차가 필요한대 이에 대해 포스팅하려고 한다.
Github Action
최상위 폴더에서 ./github/workflows 폴더에 .yml 파일을 넣어주면 된다. 이 떄 파일명은 상관없다.
name: Google Cloud Auth on: push: branches: [ "master" ] jobs: build: runs-on: ubuntu-latest steps: - uses: actions/checkout@v3 - name: Google Auth id: auth uses: 'google-github-actions/auth@v1' with: credentials_json: '${{ secrets.GCP_CREDENTIALS }}' - name: set up cloud sdk uses: 'google-github-actions/setup-gcloud@v1' - name: "Use gcloud CLI" run: "gcloud info"
위 처럼 github action 파일을 작성해주고, 위의 secrets 텍스트를 GCP IAM 서비스에서 발급 받으면 된다.
구글 클라우드에 루트 계정이 있겠지만 다른 작업자 및 다른 서비스에서 구글 클라우드를 접근하게 하기 위해서는 IAM 서비스 사용을 해야한다.
github action 처럼 외부 서비스에서 구글클라우드에 접근하게 하려면
서비스계정을 생성해야 한다.
서비스계정 생성
IAM 및 관리자 > 서비스 계정
계정ID 만 임의로 만들면 끝이다
선택사항 기입할 필요없고 완료 버튼 누른면 완료
서비스 계정을 생성하게 되면 리스트에 키 없음이라고 뜨는데, 여기 키를 생성해주게 되면 된다.
해당 줄 맨 우측에 [키관리] 버튼 누르게 되면 키 페이지 로 이동된다.
새 키 만들기
만들기 버튼을 하게되면 json 파일이 다운되는데, 여기서 이 파일의 json 전체를 복사해서
github 변수 등록
프로젝트의 settings > Secrets and variables 메뉴에서 Secrets 변수를 넣어주면 된다.
https://cloud.google.com/iam/docs/service-accounts-create?hl=ko
반응형'인프라 > GCP' 카테고리의 다른 글
firebase hosting 에 vue 프로젝트 배포하기 (0) 2024.03.25 [GCP] cloud sql 인스턴스 만들기 (0) 2024.01.30 [GCR] google cloud docker image 저장 (cloud build, Artifact Registry) (1) 2024.01.26 Google Cloud Platform(GCP) 시작하기 (0) 2024.01.25