1
0
Fork 0
mirror of https://github.com/portainer/portainer.git synced 2025-07-23 23:39:41 +02:00

fix(docker): use version negotiation for the Docker client EE-5797 (#9250)

This commit is contained in:
andres-portainer 2023-07-25 19:00:21 -03:00 committed by GitHub
parent 86ec058347
commit 21b00c267d
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 10 additions and 7 deletions

View file

@ -57,20 +57,20 @@ func (factory *ClientFactory) CreateClient(endpoint *portainer.Endpoint, nodeNam
func createLocalClient(endpoint *portainer.Endpoint) (*client.Client, error) { func createLocalClient(endpoint *portainer.Endpoint) (*client.Client, error) {
return client.NewClientWithOpts( return client.NewClientWithOpts(
client.WithHost(endpoint.URL), client.WithHost(endpoint.URL),
client.WithVersion(dockerClientVersion), client.WithAPIVersionNegotiation(),
) )
} }
func CreateClientFromEnv() (*client.Client, error) { func CreateClientFromEnv() (*client.Client, error) {
return client.NewClientWithOpts( return client.NewClientWithOpts(
client.FromEnv, client.FromEnv,
client.WithVersion(dockerClientVersion), client.WithAPIVersionNegotiation(),
) )
} }
func CreateSimpleClient() (*client.Client, error) { func CreateSimpleClient() (*client.Client, error) {
return client.NewClientWithOpts( return client.NewClientWithOpts(
client.WithVersion(dockerClientVersion), client.WithAPIVersionNegotiation(),
) )
} }
@ -82,7 +82,7 @@ func createTCPClient(endpoint *portainer.Endpoint, timeout *time.Duration) (*cli
return client.NewClientWithOpts( return client.NewClientWithOpts(
client.WithHost(endpoint.URL), client.WithHost(endpoint.URL),
client.WithVersion(dockerClientVersion), client.WithAPIVersionNegotiation(),
client.WithHTTPClient(httpCli), client.WithHTTPClient(httpCli),
) )
} }
@ -116,7 +116,7 @@ func createEdgeClient(endpoint *portainer.Endpoint, signatureService portainer.D
return client.NewClientWithOpts( return client.NewClientWithOpts(
client.WithHost(endpointURL), client.WithHost(endpointURL),
client.WithVersion(dockerClientVersion), client.WithAPIVersionNegotiation(),
client.WithHTTPClient(httpCli), client.WithHTTPClient(httpCli),
client.WithHTTPHeaders(headers), client.WithHTTPHeaders(headers),
) )
@ -144,7 +144,7 @@ func createAgentClient(endpoint *portainer.Endpoint, signatureService portainer.
return client.NewClientWithOpts( return client.NewClientWithOpts(
client.WithHost(endpoint.URL), client.WithHost(endpoint.URL),
client.WithVersion(dockerClientVersion), client.WithAPIVersionNegotiation(),
client.WithHTTPClient(httpCli), client.WithHTTPClient(httpCli),
client.WithHTTPHeaders(headers), client.WithHTTPHeaders(headers),
) )

View file

@ -90,7 +90,10 @@ func (service *service) upgradeDocker(licenseKey, version, envType string) error
} }
func (service *service) checkImageForDocker(ctx context.Context, image string, skipPullImage bool) error { func (service *service) checkImageForDocker(ctx context.Context, image string, skipPullImage bool) error {
cli, err := client.NewClientWithOpts(client.FromEnv) cli, err := client.NewClientWithOpts(
client.FromEnv,
client.WithAPIVersionNegotiation(),
)
if err != nil { if err != nil {
return errors.Wrap(err, "failed to create docker client") return errors.Wrap(err, "failed to create docker client")
} }