我正在Github上运行谷歌-github-行动/部署-cloudrun操作,当试图将一个对接者映像推送到ArtifaceRegistry时,失败了。
Google Artifact Registry
将图像推送到name invalid: Missing image name. Pushes should be of the form docker push HOST-NAME/PROJECT-ID/REPOSITORY/IMAGE
时会失败Github action YML
# Authenticate Docker to Google Cloud Artifact Registry
- name: Docker Auth
id: docker-auth
uses: 'docker/login-action@v1'
with:
username: 'oauth2accesstoken'
password: '${{ steps.auth.outputs.access_token }}'
registry: '${{ env.GAR_LOCATION }}-docker.pkg.dev'
- name: Build and Push Container
run: |-
docker build -t "${{ env.GAR_LOCATION }}-docker.pkg.dev/${{ env.PROJECT_ID }}/${{ env.SERVICE }}:${{ github.sha }}" .
docker push "${{ env.GAR_LOCATION }}-docker.pkg.dev/${{ env.PROJECT_ID }}/${{ env.SERVICE }}:${{ github.sha }}"
日志输出
Successfully built 2edd636b95c7
Successfully tagged us-central1-docker.pkg.dev/[my-project]/github-actions:ecb28fdf92addae09fe6bd9e86033027b2850de3
The push refers to repository [us-central1-docker.pkg.dev/[my-project]/github-actions]
8189f048f482: Retrying in 5 seconds
... multiple retries ...
name invalid: Missing image name. Pushes should be of the form docker push HOST-NAME/PROJECT-ID/REPOSITORY/IMAGE
Error: Process completed with exit code 1.
我确实启用了工件注册中心,并使用路径us-central1-docker.pkg.dev/[my-project]/github-actions
创建了存储库
IAM角色具有以下权限
我不知道为什么认证的停靠者似乎不存在注册中心。
发布于 2022-09-29 07:25:58
原来,上面的表示法只是指定HOST-NAME/PROJECT-ID/REPOSITORY:tag
,而不是/IMAGE
。
用例如${{ env.GAR_LOCATION }}-docker.pkg.dev/${{ env.PROJECT_ID }}/${{ env.SERVICE }}/website:${{ github.sha }}
替换所有事件将使用/website
作为存储库中的实际映像名。
https://stackoverflow.com/questions/73891299
复制相似问题