Google Container Registry, Docker Buildx 및 GitHub 작업 사용
gcloud auth configure-docker --quiet gcr.io
를 호출합니다. 워크플로는 다음과 같습니다.
- name: Setup auth
id: "auth"
uses: "google-github-actions/auth@v0"
with:
workload_identity_provider: ${{ secrets.WORKLOAD_IDENTITY_PROVIDER }}
service_account: "github-deployer@${{ secrets.GOOGLE_CLOUD_PROJECT }}.iam.gserviceaccount.com"
- name: Setup docker
uses: docker/setup-buildx-action@v2
- name: Authenticate docker
run: |
gcloud auth configure-docker --quiet gcr.io
- name: Build and push
uses: docker/build-push-action@v3
with:
context: .
push: true
tags: ${{ env.IMAGE }}
cache-from: type=gha
cache-to: type=gha,mode=max
GCR에서 작동하는 캐시를 가져올 수 없습니다. 버그인지 아니면 내가 뭔가 잘못하고 있는지 잘 모르겠습니다.
IAM 역할
또한
Storage Legacy Bucket Writer
서비스 계정에 추가하기 위해 github-deployer@
를 기반으로 사용자 정의 역할을 생성했습니다.여기에는 다음 권한이 포함됩니다.
storage.buckets.get
storage.multipartUploads.abort
storage.multipartUploads.create
storage.multipartUploads.list
storage.multipartUploads.listParts
storage.objects.create
storage.objects.delete
storage.objects.list
그리고 그것은 작동합니다! 🎉
Reference
이 문제에 관하여(Google Container Registry, Docker Buildx 및 GitHub 작업 사용), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/jpoehnelt/using-google-container-registry-docker-buildx-and-github-actions-d22텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)