Github 推送过程中的操作错误 docker 图片

Github action error during push docker image

我正在尝试 运行 在我的 github 操作中进行 docker 推送,因为我喜欢使用相同的图像作为不同回购协议的一部分。我使用的代码如下:

  docker build . --pull --rm --file "$GITHUB_WORKSPACE/${{ matrix.path }}/Dockerfile" --tag ${{ matrix.name }}
  echo "${{ secrets.GITHUB_TOKEN }}" | docker login ghcr.io -u ${{ github.actor }} --password-stdin

  IMAGE_ID=ghcr.io/${{ github.repository }}/${{ matrix.name }}
  # Strip git ref prefix from version
  VERSION=$(echo "${{ github.ref }}" | sed -e 's,.*/\(.*\),,')
  echo IMAGE_ID=$IMAGE_ID
  echo VERSION=$VERSION
  docker tag ${{ matrix.name }} $IMAGE_ID:$VERSION
  docker push $IMAGE_ID:$VERSION

我遇到的错误与权限有关:

  denied: installation not allowed to Create organization package"

任何建议我的权限中缺少什么。

感谢大家的提示,这是缺少 PAT 规则和错误格式的结合。 以下代码现在有效:

      docker build . --pull --rm --file "$GITHUB_WORKSPACE/${{ matrix.path }}/Dockerfile" --tag ${{ matrix.name }}
      echo "${{ secrets.GIT_DOCKER_PAT }}" | docker login ghcr.io -u ${{ github.actor }} --password-stdin

      IMAGE_ID=ghcr.io/${{ github.actor }}/${{ matrix.name }}
      # Change all uppercase to lowercase
      IMAGE_ID=$(echo $IMAGE_ID | tr '[A-Z]' '[a-z]')
      # Strip git ref prefix from version
      VERSION=$(echo "${{ github.ref }}" | sed -e 's,.*/\(.*\),,')
      echo IMAGE_ID=$IMAGE_ID
      echo VERSION=$VERSION
      docker tag ${{ matrix.name }} $IMAGE_ID:$VERSION
      docker push $IMAGE_ID:$VERSION

PAT 具有以下权限: