build-push-action VS setup-buildx-action

Compare build-push-action vs setup-buildx-action and see what are their differences.

Our great sponsors
  • SurveyJS - Open-Source JSON Form Builder to Create Dynamic Forms Right in Your App
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • WorkOS - The modern identity platform for B2B SaaS
build-push-action setup-buildx-action
31 14
3,983 861
3.5% 4.6%
8.5 8.0
3 days ago 13 days ago
TypeScript TypeScript
Apache License 2.0 Apache License 2.0
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.

build-push-action

Posts with mentions or reviews of build-push-action. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2024-01-07.
  • Continuous Deployment with GitHub Actions and Kamal
    4 projects | dev.to | 7 Jan 2024
    We use the docker/build-push-action to build the application image. In addition to setting the correct tag, the image build step must also provide a label matching your service name. Because the image should be pushed to your container registry, we set push: true, and because we want ludicrous build speed we instruct the build step to utilize the GitHub Actions cache.
  • Dockerize and Deploy a NodeJS Application to Cloud Run with GitHub Actions
    3 projects | dev.to | 5 Oct 2023
    name: Lint and Dockerize the app on: push: branches: [master] pull_request: branches: [master] env: # Use docker.io for Docker Hub if empty REGISTRY: docker.io # github.repository as / IMAGE_NAME: ${{ github.repository }} jobs: build: runs-on: ubuntu-latest permissions: contents: read packages: write steps: - name: Checkout repository uses: actions/checkout@v2 - name: Set up Google Cloud uses: google-github-actions/[email protected] with: project_id: ${{ secrets.GCP_PROJECT_ID }} service_account_key: ${{ secrets.GCP_SA_KEY }} # Login against a Docker registry except on PR # https://github.com/docker/login-action - name: Log into registry ${{ env.REGISTRY }} # if: github.event_name != 'pull_request' uses: docker/login-action@v1 with: username: ${{ secrets.DOCKER_USERNAME }} password: ${{ secrets.DOCKER_PASSWORD }} # Extract metadata (tags, labels) for Docker # https://github.com/docker/metadata-action #- name: Extract Docker metadata # id: meta # uses: docker/metadata-action@98669ae865ea3cffbcbaa878cf57c20bbf1c6c38 # with: # images: ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }} # Build and push Docker image with Buildx (don't push on PR) # https://github.com/docker/build-push-action - name: Build and push Docker image uses: docker/build-push-action@v2 with: context: ./ tags: ${{ secrets.DOCKER_USERNAME }}/magga:latest push: true file: ./Dockerfile - name: Image digest run: echo
  • Automating Tag Creation, Release, and Docker Image Publishing with GitHub Actions
    5 projects | dev.to | 26 Jul 2023
    docker/build-push-action@v4 to build and push Docker images with Buildx.
  • How to use notification in gitea actions
    4 projects | /r/selfhosted | 1 Apr 2023
    Hmmm interesting question... I use the following in my yaml: yaml - name: Build and push uses: https://github.com/docker/build-push-action@v2 can't you just use like: yaml - name: NTFY uses: https://github.com/dawidd6/action-send-mail@v3 and use the actions explained in the links?
  • Where do you commit files for containers that run CI scripts?
    1 project | /r/devops | 29 Mar 2023
    Docker made some decent actions free to use like this one to build and push docker images to registries.
  • [Darksouls] Remaster pour PC Controller ne fonctionne pas ?
    3 projects | /r/enfrancais | 14 Mar 2023
  • Automate Docker Image Builds and Push to GitHub Registry Using GitHub Actions 🐙
    7 projects | dev.to | 11 Mar 2023
    name: Docker Image Publish on: push: branches: [ "main" ] # Publish semver tags as releases. tags: [ 'v*.*.*' ] pull_request: branches: [ "main" ] env: # Use docker.io for Docker Hub if empty REGISTRY: ghcr.io # github.repository as / IMAGE_NAME: ${{ github.repository }} jobs: build: runs-on: ubuntu-latest permissions: contents: read packages: write # This is used to complete the identity challenge # with sigstore/fulcio when running outside of PRs. id-token: write steps: - name: Checkout repository uses: actions/checkout@v3 # Install the cosign tool except on PR # https://github.com/sigstore/cosign-installer - name: Install cosign if: github.event_name != 'pull_request' uses: sigstore/cosign-installer@f3c664df7af409cb4873aa5068053ba9d61a57b6 #v2.6.0 with: cosign-release: 'v1.11.0' # Workaround: https://github.com/docker/build-push-action/issues/461 - name: Setup Docker buildx uses: docker/setup-buildx-action@v2 # Login against a Docker registry except on PR # https://github.com/docker/login-action - name: Log into registry ${{ env.REGISTRY }} if: github.event_name != 'pull_request' uses: docker/login-action@28218f9b04b4f3f62068d7b6ce6ca5b26e35336c with: registry: ${{ env.REGISTRY }} username: ${{ github.actor }} password: ${{ secrets.GITHUB_TOKEN }} # Extract metadata (tags, labels) for Docker # https://github.com/docker/metadata-action - name: Extract Docker metadata id: meta uses: docker/metadata-action@98669ae865ea3cffbcbaa878cf57c20bbf1c6c38 with: images: ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }} # Build and push Docker image with Buildx (don't push on PR) # https://github.com/docker/build-push-action - name: Build and push Docker image id: build-and-push uses: docker/build-push-action@v4 with: context: "{{defaultContext}}:src" push: ${{ github.event_name != 'pull_request' }} # Don't push on PR tags: ${{ steps.meta.outputs.tags }} labels: ${{ steps.meta.outputs.labels }} cache-from: type=gha cache-to: type=gha,mode=max
  • Automate Docker Image Builds and Push to Docker Hub Using GitHub Actions 🐳🐙
    10 projects | dev.to | 1 Mar 2023
    Build and push Docker image: We will use the docker/build-push-action action to build and push the Docker image to Docker Hub. We will use the following inputs:
  • Show HN: Cross-Platform GitHub Action
    5 projects | news.ycombinator.com | 16 Jan 2023
    I previously tried to use Docker `docker/setup-qemu-action@v2` and `docker/setup-buildx-action@v2` for this purpose (see that example https://github.com/docker/build-push-action#git-context). Thanks to buildkit, platform switching works transparently. However, building on ARM via QEMU on GitHub Actions is terribly slow (something like 5 times more), which is hard to accept. Therefore, full of hope, I am waiting for GitHub Actions to make cloud runners available on ARM, because it is a blocker for the implementation of Graviton on the AWS environment for us.

    For a while, the blocker in GitHub Actions for providing ARM support was that Azure doesn't have ARM support. In this way, the Azure cloud offering may determine the habits of AWS consumers.

  • Do I need Dockerhub for CI/CD with Github Actions?
    2 projects | /r/docker | 15 Dec 2022
    Build and push an image in CI. This extends #2 by pushing the image to a container registry. DockerHub is the default registry in Docker, but isn't the only registry. You could use GitHub's Container Registry as well. We (Docker) have supported GitHub Actions with lots of documentation to help out. You could then extend the pipeline to actually deploy your updated image too.

setup-buildx-action

Posts with mentions or reviews of setup-buildx-action. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2023-11-12.
  • GitHub Actions Are a Problem
    19 projects | news.ycombinator.com | 12 Nov 2023
    Good luck running this locally. There's no script code to speak of, just references to external "actions" and parameters (for example, https://github.com/docker/setup-buildx-action).

    Some CI platforms are just a simple glue layer (Gitlab CI - which I prefer - is one of them), but in most cases Github CI is not. Maybe it adds to the author frustration?

  • Automate Docker Image Builds and Push to Docker Hub Using GitHub Actions 🐳🐙
    10 projects | dev.to | 1 Mar 2023
    Set up Docker Buildx: We will use the docker/setup-buildx-action action to set up Docker Buildx.
  • One Dockerfile is all it takes, falling in love with bake
    5 projects | dev.to | 16 Jan 2023
    There’s an amazing docker/bake-action which makes it insanely easy to build all of your containers in the most optimal way. Since we’ve set the group “default” block in the docker-bake.hcl, config is very minimal. One step in your GitHub Action workflow file will build all of your images and will push all of your cache layers, tag all of your containers, and push all your final images. You’ll still have to do things like checkout the code and don’t forget that you’ll want to use the docker/setup-buildx-action since bake is a buildx feature. There’s one quick gotcha for the actual docker/bake-action. We don’t want to push PR builds and we don’t want to pollute the cache with PR builds.
  • Building with Qemu via Github Actions taking forever. What other options are there?
    3 projects | /r/docker | 1 Dec 2022
    To be clear, that article does NOT provide a solution for avoiding QEMU. I suggested it because it describes "the hard way" to get a single image multi-arch image. The github action crazy-max/ghaction-docker-buildx has been archived and replaced by docker/setup-qemu-action and docker/setup-buildx-action, which it seems like you were already using.
  • Pushing Cutom Images to Docker Hub using GitHub Actions
    7 projects | dev.to | 30 Sep 2022
    Third step is docker/setup-buildx-action configures buildx, which is a Docker CLI plugin that provides enhanced build capabilities.
  • Containerizing Laravel Applications
    8 projects | dev.to | 23 Sep 2022
    We then use the docker/setup-buildx-action action to initialize an environment to build Docker images:
  • How to use Docker layer caching in GitHub Actions
    2 projects | dev.to | 27 Jun 2022
    The setup-buildx-action configures Docker Buildx to create a builder instance for running the image build. The following step build-push-action, makes use of that instance to build your Docker image. The build-push-action supports all of the features provided by BuildKit out of the box. In our simple example, we are only specifying the Docker context, but more advanced features like SSH, secrets, and build args are supported.
  • Why Darwin Failed (2006)
    3 projects | news.ycombinator.com | 31 May 2022
  • Multi-arch docker images the easy way, with Github Actions
    7 projects | dev.to | 12 Jan 2022
    # Get the repository's code - name: Checkout uses: actions/checkout@v2 # https://github.com/docker/setup-qemu-action - name: Set up QEMU uses: docker/setup-qemu-action@v1 # https://github.com/docker/setup-buildx-action - name: Set up Docker Buildx id: buildx uses: docker/setup-buildx-action@v1
  • Semantic release to npm and/or ghcr without any tooling
    21 projects | dev.to | 7 Dec 2021
    docker/setup-buildx-action@v1 - we use it to setup the docker builder

What are some alternatives?

When comparing build-push-action and setup-buildx-action you can also consider the following projects:

ssh-action - GitHub Actions for executing remote ssh commands.

setup-qemu-action - GitHub Action to install QEMU static binaries

metadata-action - GitHub Action to extract metadata (tags, labels) from Git reference and GitHub events for Docker

buildkit - concurrent, cache-efficient, and Dockerfile-agnostic builder toolkit

nocodb - 🔥 🔥 🔥 Open Source Airtable Alternative

ghaction-docker-meta - GitHub Action to extract metadata (tags, labels) for Docker [Moved to: https://github.com/docker/metadata-action]

setup-node - Set up your GitHub Actions workflow with a specific version of node.js

upload-artifact

cache - Cache dependencies and build outputs in GitHub Actions

login-action - GitHub Action to login against a Docker registry

exec - :shell: semantic-release plugin to execute custom shell commands