instruction: How do you create a custom composite action in GitHub Actions?
output: GitHub - docker/setup-buildx-action: GitHub Action to set up Docker Buildx Skip to content Navigation Menu Toggle navigation Sign in Appearance settings Product GitHub Copilot Write better code with AI GitHub Spark New Build and deploy intelligent apps GitHub Models New Manage and compare prompts GitHub Advanced Security Find and fix vulnerabilities Actions Automate any workflow Codespaces Instant dev environments Issues Plan and track work Code Review Manage code changes Discussions Collaborate outside of code Code Search Find more, search less Explore Why GitHub All features Documentation GitHub Skills Blog Solutions By company size Enterprises Small and medium teams Startups Nonprofits By use case DevSecOps DevOps CI/CD View all use cases By industry Healthcare Financial services Manufacturing Government View all industries View all solutions Resources Topics AI DevOps Security Software Development View all Explore Learning Pathways Events &amp; Webinars Ebooks &amp; Whitepapers Customer Stories Partners Executive Insights Open Source GitHub Sponsors Fund open source developers The ReadME Project GitHub community articles Repositories Topics Trending Collections Enterprise Enterprise platform AI-powered developer platform Available add-ons GitHub Advanced Security Enterprise-grade security features Copilot for business Enterprise-grade AI features Premium Support Enterprise-grade 24/7 support Pricing Search or jump to... Search code, repositories, users, issues, pull requests... --> Search Clear Search syntax tips Provide feedback --> We read every piece of feedback, and take your input very seriously. Include my email address so I can be contacted Cancel Submit feedback Saved searches Use saved searches to filter your results more quickly --> Name Query To see all available qualifiers, see our documentation . Cancel Create saved search Sign in Sign up Appearance settings Resetting focus You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert {{ message }} docker / setup-buildx-action Public Notifications You must be signed in to change notification settings Fork 208 Star 1.2k GitHub Action to set up Docker Buildx github.com/marketplace/actions/docker-setup-buildx License Apache-2.0 license 1.2k stars 208 forks Branches Tags Activity Star Notifications You must be signed in to change notification settings Code Issues 10 Pull requests 1 Discussions Actions Projects 0 Security Uh oh! There was an error while loading. Please reload this page . Insights Additional navigation options Code Issues Pull requests Discussions Actions Projects Security Insights docker/setup-buildx-action Use this GitHub action with your project Add this Action to an existing workflow or create a new one View on Marketplace master Branches Tags Go to file Code Open more actions menu Folders and files Name Name Last commit message Last commit date Latest commit History 563 Commits .github .github __tests__ __tests__ dist dist src src .dockerignore .dockerignore .editorconfig .editorconfig .eslintignore .eslintignore .eslintrc.json .eslintrc.json .gitattributes .gitattributes .gitignore .gitignore .prettierignore .prettierignore .prettierrc.json .prettierrc.json .yarnrc.yml .yarnrc.yml LICENSE LICENSE README.md README.md action.yml action.yml codecov.yml codecov.yml dev.Dockerfile dev.Dockerfile docker-bake.hcl docker-bake.hcl jest.config.ts jest.config.ts package.json package.json tsconfig.json tsconfig.json yarn.lock yarn.lock View all files Repository files navigation README Code of conduct Contributing Apache-2.0 license Security About GitHub Action to set up Docker Buildx . This action will create and boot a builder that can be used in the following steps of your workflow if you're using Buildx or the build-push action . By default, the docker-container driver will be used to be able to build multi-platform images and export cache using a BuildKit container. Usage Configuring your builder Customizing inputs outputs environment variables Notes nodes output Contributing Usage name : ci on : push : jobs : buildx : runs-on : ubuntu-latest steps : - name : Checkout uses : actions/checkout@v4 - # Add support for more platforms with QEMU (optional) # https://github.com/docker/setup-qemu-action name : Set up QEMU uses : docker/setup-qemu-action@v3 - name : Set up Docker Buildx uses : docker/setup-buildx-action@v3 Configuring your builder Version pinning : Pin to a specific Buildx or BuildKit version BuildKit container logs : Enable BuildKit container logs for debugging purposes BuildKit Daemon configuration Registry mirror : Configure a registry mirror for your builds Max parallelism : Configure the maximum parallelism for your builds Append additional nodes to the builder : Create additional nodes for your builder Authentication for remote builders SSH authentication : Authenticate to a remote builder using SSH TLS authentication : Authenticate to a remote builder using TLS Standalone mode : Use Buildx as a standalone binary (without the Docker CLI) Isolated builders : Create isolated builders for your builds Customizing inputs The following inputs can be used as step.with keys: List type is a newline-delimited string driver-opts : | image=moby/buildkit:master network=host CSV type must be a comma-delimited string platforms : linux/amd64,linux/arm64 Name Type Default Description version String Buildx version. (eg. v0.3.0 , latest , https://github.com/docker/buildx.git#master ) name String Name of the builder. If not specified, one will be generated or if it already exists, it will be used instead of creating a new one driver String docker-container Sets the builder driver to be used driver-opts List List of additional driver-specific options (eg. image=moby/buildkit:master ) buildkitd-flags String BuildKit daemon flags buildkitd-config * String BuildKit daemon config file buildkitd-config-inline * String Same as buildkitd-config but inline install Bool false Sets up docker build command as an alias to docker buildx use Bool true Switch to this builder instance endpoint String Optional address for docker socket or context from docker context ls platforms List/CSV Fixed platforms for current node. If not empty, values take priority over the detected ones append YAML Append additional nodes to the builder keep-state Bool false Keep BuildKit state on cleanup . This is only useful on persistent self-hosted runners cache-binary Bool true Cache buildx binary to GitHub Actions cache backend cleanup Bool true Cleanup temp files and remove builder at the end of a job Important If you set the buildkitd-flags input, the default flags ( --allow-insecure-entitlement security.insecure --allow-insecure-entitlement network.host ) will be reset. If you want to retain the default behavior, make sure to include these flags in your custom buildkitd-flags value. Note buildkitd-config and buildkitd-config-inline are mutually exclusive. outputs The following outputs are available: Name Type Description name String Builder name driver String Builder driver platforms String Builder node platforms (preferred and/or available) nodes JSON Builder nodes metadata environment variables The following official docker environment variables are supported: Name Type Default Description DOCKER_CONFIG String ~/.docker The location of your client configuration files Notes nodes output [ { "name" : " builder-3820d274-502c-4498-ae24-d4c32b3023d90 " , "endpoint" : " unix:///var/run/docker.sock " , "driver-opts" : [ " network=host " , " image=moby/buildkit:master " ], "status" : " running " , "buildkitd-flags" : " --allow-insecure-entitlement security.insecure --allow-insecure-entitlement network.host " , "buildkit" : " 3fab389 " , "platforms" : " linux/amd64,linux/amd64/v2,linux/amd64/v3,linux/amd64/v4,linux/386 " } ] Name Type Description name String Node name endpoint String Node endpoint driver-opts List Options for the driver status String Node status buildkitd-flags String Flags for buildkitd daemon buildkit String BuildKit version platforms String Platforms available Contributing Want to contribute? Awesome! You can find information about contributing to this project in the CONTRIBUTING.md About GitHub Action to set up Docker Buildx github.com/marketplace/actions/docker-setup-buildx Topics docker buildkit github-actions buildx github-actions-docker Resources Readme License Apache-2.0 license Code of conduct Code of conduct Contributing Contributing Security policy Security policy Uh oh! There was an error while loading. Please reload this page . Activity Custom properties Stars 1.2k stars Watchers 16 watching Forks 208 forks Report repository Releases 45 v3.11.1 Latest Jun 18, 2025 + 44 releases Packages 0 &nbsp; &nbsp; &nbsp; Uh oh! There was an error while loading. Please reload this page . Used by 645k + 645,041 Contributors 14 Languages TypeScript 91.2% Dockerfile 5.8% HCL 3.0% Footer &copy; 2025 GitHub,&nbsp;Inc. Footer navigation Terms Privacy Security Status Docs Contact Manage cookies Do not share my personal information You can’t perform that action at this time.