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

Change default Docker client API version from 1.22 to 1.24 #30927

Merged

Conversation

samiura
Copy link
Contributor

@samiura samiura commented Jan 31, 2024

Description: Docker Client API default has been upgraded from 1.22 to 1.24. The details of the requirements to this change has been given in the accompanying issue with docker upstream PRs.

Link to tracking Issue:
Fixes #30900
Testing: Updated unit tests accordingly and ran integration tests to make sure everything works as it should.

Documentation:

@samiura samiura force-pushed the change-default-docker-client-api branch from 39aff7b to 5bd4bff Compare January 31, 2024 19:35
@samiura samiura requested a review from atoulme January 31, 2024 20:02
Copy link
Contributor

@atoulme atoulme left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM thanks!

@samiura samiura force-pushed the change-default-docker-client-api branch from 5bd4bff to a85df5e Compare January 31, 2024 23:14
@samiura samiura force-pushed the change-default-docker-client-api branch 2 times, most recently from 29e5e90 to ed42415 Compare February 1, 2024 17:55
@crobert-1
Copy link
Member

I filed #31005 for the failing CI/CD test, unrelated to this change.

@atoulme
Copy link
Contributor

atoulme commented Feb 1, 2024

@crobert-1 please rebase

@crobert-1
Copy link
Member

@crobert-1 please rebase

@samiura 🙂

@samiura samiura force-pushed the change-default-docker-client-api branch from ae8821b to 9a11337 Compare February 1, 2024 19:34
@samiura
Copy link
Contributor Author

samiura commented Feb 1, 2024

sorry for the delay, rebased.

@samiura samiura force-pushed the change-default-docker-client-api branch 4 times, most recently from 9f2d62c to b070900 Compare February 1, 2024 20:04
@samiura samiura force-pushed the change-default-docker-client-api branch from b070900 to 6c1c545 Compare February 1, 2024 20:07
@@ -18,7 +18,7 @@ The Docker observer extension is a [Receiver Creator](../../../receiver/receiver
container endpoints discovered through the Docker API. Only containers that are in the state of `Running` and not `Paused` will emit endpoints.
This observer watches the Docker engine's stream of events to dynamically create, update, and remove endpoints as events are processed.

Requires Docker API Version 1.22+.
Requires Docker API Version 1.24+.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Curious why this line is needed if it's configurable. Seems confusing. Feel free to remove in a separate PR if it makes sense

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

this is meant to say to require a minimum of 1.24. A better wording would be Requires Docker API with a version of 1.24 or higher.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I thought it could be configured with a lower version. Maybe I misunderstood

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The issue has a link to an explanation as a commit message to the moby project:
moby/moby@08e4e88

The daemon currently provides support for API versions all the way back
to v1.12, which is the version of the API that shipped with docker 1.0. On
Windows, the minimum supported version is v1.24.

Such old versions of the client are rare, and supporting older API versions
has accumulated significant amounts of code to remain backward-compatible
(which is largely untested, and a "best-effort" at most).

This patch updates the minimum API version to v1.24, which is the fallback
API version used when API-version negotiation fails. The intent is to start
deprecating older API versions, but no code is removed yet as part of this
patch, and a DOCKER_MIN_API_VERSION environment variable is added, which
allows overriding the minimum version (to allow restoring the behavior from
before this patch).

With this patch the daemon defaults to API v1.24 as minimum

@dmitryax dmitryax merged commit 7e1e965 into open-telemetry:main Feb 1, 2024
142 checks passed
@github-actions github-actions bot added this to the next release milestone Feb 1, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Need to make Docker API Version default to 1.24+
4 participants