Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Deprecation] Docker Build scripts deprecation and migration to buildkit. #4126

Open
peterzhuamazon opened this issue Oct 12, 2023 · 2 comments
Labels
dependencies Pull requests that update a dependency file docker enhancement New Enhancement

Comments

@peterzhuamazon
Copy link
Member

peterzhuamazon commented Oct 12, 2023

Since docker engine has released version 24, we have seen the legacy builder behavior being deprecated and will be eventually removed in a future release:
https://docs.docker.com/engine/deprecated/#legacy-builder-for-linux-images

DEPRECATED: The legacy builder is deprecated and will be removed in a future release.
            Install the buildx component to build images with BuildKit:
            https://docs.docker.com/go/buildx/

This means the scripts we used to build both single and multi-arch layers docker images would need to be updated accordingly, or we should lock the docker engine version now.


On LINUX:

The legacy builder behavior will be replaced by buildkit eventually, in which it will contain the buildx plugin, all commands also changed compares to the legacy docker build command.
https://github.com/moby/buildkit

The buildx behavior is unchanged and we can still use the buildx plugin by itself as of now, as we already lock the buildx version here:
https://github.com/opensearch-project/opensearch-build/blob/main/docker/ci/dockerfiles/current/docker-builder.ubuntu2004.x64.dockerfile#L57


On Windows:

The buildkit does not support Windows docker image build as of now per their msg:

    Classic builder for building Windows images

    BuildKit does not (yet) provide support for building Windows images, and docker build continues to use the classic builder to build native Windows images on Windows daemons.

We still need to monitor and observe this behavior going on.

As of now, we should start locking docker version on both LINUX images and Windows images, so that breaking change can be taken care greacefully if the classic builder ever get removed.

Thanks.

@peterzhuamazon peterzhuamazon added enhancement New Enhancement docker dependencies Pull requests that update a dependency file labels Oct 12, 2023
@github-actions github-actions bot added the untriaged Issues that have not yet been triaged label Oct 12, 2023
@peterzhuamazon peterzhuamazon removed the untriaged Issues that have not yet been triaged label Oct 24, 2023
@peterzhuamazon
Copy link
Member Author

@peterzhuamazon
Copy link
Member Author

Will stay on the version 24.0.7 of docker.io for the time being when migrating from Ubuntu20.04 to Ubuntu24.04 in

Thanks.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
dependencies Pull requests that update a dependency file docker enhancement New Enhancement
Projects
Development

No branches or pull requests

1 participant