mirror of
https://github.com/jesseduffield/lazydocker.git
synced 2026-07-23 23:51:03 +00:00
Fix Docker API version compatibility by enabling proper version negotiation
Replace client.FromEnv with individual options to avoid WithVersionFromEnv which prevents API version negotiation when DOCKER_API_VERSION is set Co-authored-by: jesseduffield <8456633+jesseduffield@users.noreply.github.com>
This commit is contained in:
parent
d7f5b3f701
commit
a71fd954dd
1 changed files with 10 additions and 1 deletions
|
|
@ -96,7 +96,16 @@ func NewDockerCommand(log *logrus.Entry, osCommand *OSCommand, tr *i18n.Translat
|
||||||
dockerHost = dockerHostFromEnv
|
dockerHost = dockerHostFromEnv
|
||||||
}
|
}
|
||||||
|
|
||||||
cli, err := client.NewClientWithOpts(client.FromEnv, client.WithAPIVersionNegotiation(), client.WithHost(dockerHost))
|
// We avoid using client.FromEnv because it includes WithVersionFromEnv() which
|
||||||
|
// sets manualOverride=true when DOCKER_API_VERSION is set, preventing API version
|
||||||
|
// negotiation even when WithAPIVersionNegotiation() is specified.
|
||||||
|
// Instead, we manually configure TLS and host from environment, but always enable
|
||||||
|
// API version negotiation to support older Docker daemons.
|
||||||
|
cli, err := client.NewClientWithOpts(
|
||||||
|
client.WithTLSClientConfigFromEnv(),
|
||||||
|
client.WithAPIVersionNegotiation(),
|
||||||
|
client.WithHost(dockerHost),
|
||||||
|
)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
ogLog.Fatal(err)
|
ogLog.Fatal(err)
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue