Skip to content
docktionary

Playground / GitHub Actions builder

GitHub Actions builder

Pick a registry, a trigger, and which tags and platforms to build, and get a working build-and-push workflow. See Buildx for what each option is actually doing.

Registry

Uses github.actor and the built-in GITHUB_TOKEN -- no secret to create.

Trigger

Image tags

Platforms

Build options

Vulnerability scan

Generated .github/workflows/deploy.yml

deploy.yml
name: build-and-push
on:
  push:
    branches:
      - main

jobs:
  build:
    runs-on: ubuntu-latest
    timeout-minutes: 20
    permissions:
      contents: read
      packages: write
    steps:
      - uses: actions/checkout@v4

      - uses: docker/setup-buildx-action@v3

      - uses: docker/login-action@v3
        with:
          registry: ghcr.io
          username: ${{ github.actor }}
          password: ${{ secrets.GITHUB_TOKEN }}

      - uses: docker/build-push-action@v6
        with:
          push: true
          tags: |
            ghcr.io/${{ github.repository }}:${{ github.sha }}
            ghcr.io/${{ github.repository }}:latest
          cache-from: type=gha
          cache-to: type=gha,mode=max

      - name: Scan image
        uses: aquasecurity/trivy-action@a9c7b0f06e461e9d4b4d1711f154ee024b8d7ab8 # v0.36.0
        with:
          image-ref: ghcr.io/${{ github.repository }}:${{ github.sha }}
          severity: CRITICAL,HIGH
          exit-code: "1"