如何在 GitHub 操作中设置 Dockerfile 标签?

How to set Dockerfile tag in GitHub Actions?

我正在使用 docker/build-push-action@v2 和自动版本更新操作,作业运行良好,直到构建和推送步骤出现此错误

/usr/bin/docker buildx build --build-arg NPM_TOKEN=*** --iidfile /tmp/docker-build-push-MO1ELt/iidfile --tag registry.digitalocean.com/xxx/xxx: --metadata-file /tmp/docker-build-push-MO1ELt/metadata-file --push ./xxx
error: invalid tag "registry.digitalocean.com/xxx/xxx:": invalid reference format
Error: buildx failed with: error: invalid tag "registry.digitalocean.com/xxx/xxx:": invalid reference format

是我添加的标签正确还是版本bump包有问题?

我的GitHub动作文件

name: deploy-auth

on:
  push:
    branches:
      - main
    paths:
      - 'xxx/**'

jobs: 
  build:
    runs-on: ubuntu-latest
    steps:
    
      - name: Checkout main
        uses: actions/checkout@v2
        
      - name: Automated Version Bump
        uses: 'phips28/gh-action-bump-version@master'
        env:
          GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
        with:
          default: fix
          tag-prefix: 'v'
        
          
      - name: Output Step
        env:
          NEW_TAG: ${{ steps.version-bump.outputs.newTag }}
        run: echo "new tag $NEW_TAG"
      
      - name: Install doctl
        uses: digitalocean/action-doctl@v2
        with:
          token: ${{ secrets.DIGITALOCEAN_ACCESS_TOKEN }}
          
      - name: Log in to DigitalOcean Container Registry with short-lived credentials
        run: doctl registry login --expiry-seconds 600
        
      - name: Build and push Docker image
        uses: docker/build-push-action@v2
        with: 
          context: ./xxx
          push: true
          tags: registry.digitalocean.com/xxx/xxx:${{ steps.version-bump.outputs.newTag }}
          build-args: |
            NPM_TOKEN=${{ secrets.NPM_TOKEN }}

GHA 中没有 version-bump 步骤。这意味着 ${{ steps.version-bump.outputs.newTag }} 是空的。您可以在步骤上设置一个id字段来定义它:

      - name: Automated Version Bump
        uses: 'phips28/gh-action-bump-version@master'
        id: version-bump
        env:
          GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
        with:
          default: fix
          tag-prefix: 'v'