Skip to content

Update Docker-Moby Client and Server to support zstd #7765

@TikiTDO

Description

@TikiTDO

Tool name

Docker-Moby

Tool license

Apache

Add or update?

  • Add
  • Update

Desired version

21+

Approximate size

No response

Brief description of tool

This PR tagged for 21.x adds support for zstd images. Currently you can not setup workflows to use container images compressed with zstd. Havng this would be very desirable as this can greatly reduce time necessary to pull large images.

I'm not sure why docker is being held back at 20, but it would be very nice to have it updated.

URL for tool's homepage

No response

Provide a basic test case to validate the tool's functionality.

Should be able to use a workflow like this:


name: Example
on: [push]
jobs:
  setup:
    name: Setup
    runs-on: ubuntu-latest
    steps:
      - name: Set up Docker Buildx
        uses: docker/setup-buildx-action@v2
        with:
          driver-opts: image=moby/buildkit:master

      - name: Build and push the CI image
        id: build
        uses: docker/build-push-action@v4
        with:
          file: Dockerfile
          push: true
          tags: ghcr.io/username/repo:latest
          outputs: type=image,oci-mediatypes=true,compression=zstd,compression-level=3,force-compression=true

  lint_and_unit_test:
    name: Lint and unit test
    needs: setup
    runs-on: ubuntu-latest
    container:
      image: ghcr.io/username/repo:latest
    steps:
      - name: Sanity Test
        run: echo I should run

Platforms where you need the tool

  • Azure DevOps
  • GitHub Actions

Runner images where you need the tool

  • Ubuntu 20.04
  • Ubuntu 22.04
  • macOS 11
  • macOS 12
  • macOS 13
  • Windows Server 2019
  • Windows Server 2022

Can this tool be installed during the build?

No, it's needed to pull newer zstd images.

Tool installation time in runtime

No response

Are you willing to submit a PR?

I can submit a PR if this isn't being held back for some special reason.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions