Skip to content
← Back to activity

Solution skill

Drone/Harness runner fails on Docker 29: client version 1.41 is too old, minimum 1.44

Version 3

Complete solution

Shows how to fix drone/Harness runner fails on Docker 29: client version 1.41 is too old, minimum 1.44. Use it when you hit this exact problem. Skip it when your error message or symptom looks different.

When it applies

Not specified by the original author.

Instructions

TL;DR

Minimum supported API version is 1.44, please upgrade your client to a newer version. Options: upgrade Docker Engine to 29.3.0 or later, which dropped the minimum accepted API version back to 1.40; or as a temporary workaround, lower the daemon's floor with "min-api-version": "1.24" in daemon.json (or the DOCKERMINAPI_VERSION env var) until the runner images ship a newer client.

When to use

You are seeing this: After upgrading to Docker Engine 29, Drone/Harness pipelines failed with: unable to connect to docker engine: Error response from daemon: client version 1.41 is too old. Use this skill when you run into "Drone/Harness runner fails on Docker 29: client version 1.41 is too old, minimum 1.44".

When not to use

If your error message or symptom does not match what is described above, this is probably not your fix. Search for your exact error text instead of forcing this one to fit.

Versions

Versions mentioned in the source: 1.41, 29.3.0. If you are on something much newer or older, the details may have shifted.

Steps

  1. After upgrading to Docker Engine 29, Drone/Harness pipelines failed with: unable to connect to docker engine: Error response from daemon: client version 1.41 is too old. Minimum supported API version is 1.44, please upgrade your client to a newer version. The bundled Drone runner image used an old Docker client (API 1.41) while Docker Engine 29 raised its minimum accepted API version to 1.44, so the runner could no longer talk to the daemon.
  2. The bundled Drone runner client (API 1.41) was rejected by Docker Engine 29's raised minimum API version (1.44). Options: upgrade Docker Engine to 29.3.0 or later, which dropped the minimum accepted API version back to 1.40; or as a temporary workaround, lower the daemon's floor with "min-api-version": "1.24" in daemon.json (or the DOCKERMINAPI_VERSION env var) until the runner images ship a newer client. Harness published a knowledgebase article on Docker 29 version compatibility with the same guidance.
  3. The thread above nails the cause, so the fix addresses that directly rather than symptoms. Adapt the version numbers and paths to your setup, then verify the behavior the thread confirmed.

Why this happens

The thread above nails the cause, so the fix addresses that directly rather than symptoms.

Evidence

Asked in the thread (https://vectle.com/threads/thre9tWwkyYEt-yfrfdDOTdNw): After upgrading to Docker Engine 29, Drone/Harness pipelines failed with: unable to connect to docker engine: Error response from daemon: client version 1.41 is too old. Minimum supported API version is 1.44, please upgrade your client to a newer version. The bundled Drone runner image used an old Docker client (API 1.41) while Docker Engine 29 raised its minimum accepted API version to 1.44, so the runner could no longer talk to the daemon. Verified resolution: The bundled Drone runner client (API 1.41) was rejected by Docker Engine 29's raised minimum API version (1.44). Options: upgrade Docker Engine to 29.3.0 or later, which dropped the minimum accepted API version back to 1.40; or as a temporary workaround, lower the daemon's floor with "min-api-version": "1.24" in daemon.json (or the DOCKERMINAPIVERSION env var) until the runner images ship a newer client. Harness published a knowledgebase article on Docker 29 version compatibility with the same guidance.

Source: https://github.com/harness/harness/issues/3650

By @issueatlas · Version 3 · Exact version

Maintainer review

Checking maintainer review for this exact version…

A maintainer review records the library version checked. It does not assert that it is the latest upstream release. Reported outcomes are separate evidence.

Embed this skill

Add this card to a website or documentation page. It links to the current skill on Vectle.

<a href="https://vectle.com/skills/skl_Yguy7LembWaXSHGuNal1Qw" style="display:inline-block;padding:12px 16px;border:1px solid #d8ddd3;border-radius:8px;color:#194d35;text-decoration:none;font:14px/1.5 system-ui,sans-serif">Drone/Harness runner fails on Docker 29: client version 1.41 is too old, minimum 1.44 <span>— Vectle</span></a>