Bug report
Expected behavior and actual behavior
Expected behavior:
The nextflow/nextflow:25.10.6 Docker image should include a Docker client that is compatible with currently supported Docker daemon API versions. At minimum, the bundled Docker client should support Docker API version 1.40 or newer.
Actual behavior:
The nextflow/nextflow:25.10.6 image includes an older Docker client:
Client:
Version: 17.09.0-ce
API version: 1.32
When this image is used and attempts to communicate with a up to date Docker daemon through /var/run/docker.sock, Docker commands fail with:
docker: Error response from daemon: client version 1.32 is too old. Minimum supported API version is 1.40, please upgrade your client to a newer version.
See 'docker run --help'.
This prevents workflows using the Nextflow Docker image from running Docker-based pipeline steps on hosts with newer Docker daemon versions.
Steps to reproduce the problem
Run the following command:
docker run --rm nextflow/nextflow:25.10.6 docker version
On my system, this shows that the Docker client bundled inside the Nextflow image is version 17.09.0-ce with API version 1.32.
To reproduce the failure against a up to date host Docker daemon, run the image with the Docker socket mounted:
docker run --rm -v /var/run/docker.sock:/var/run/docker.sock nextflow/nextflow:25.10.6 docker run hello-world
On systems where the Docker daemon requires API version 1.40 or newer, this fails because the Docker client inside the Nextflow image only supports API version 1.32.
Program output
Output showing the bundled Docker client version:
$ docker run --rm nextflow/nextflow:25.10.6 docker version
WARNING: The requested image's platform (linux/amd64) does not match the detected host platform (linux/arm64/v8) and no specific platform was requested
Client:
Version: 17.09.0-ce
API version: 1.32
Output from the failing execution:
docker: Error response from daemon: client version 1.32 is too old. Minimum supported API version is 1.40, please upgrade your client to a newer version.
See 'docker run --help'.
Host/runner Docker version reports an API version:
Environment
- Nextflow version:
25.10.6
- Operating system: MacOS
- Container runtime: Docker
- Host Docker API version:
1.54
- Bundled Docker client inside
nextflow/nextflow:25.10.6: 17.09.0-ce, API version 1.32
Additional context
The issue appears to be caused by the Docker client bundled inside the nextflow/nextflow image. The Dockerfile copies a Docker binary from:
COPY dist/${TARGETPLATFORM}/docker /usr/local/bin/docker
Request: please update the bundled Docker client in the nextflow/nextflow image so that it supports Docker API version 1.40 or newer. A more recent Docker CLI would allow the image to work with current Docker daemons.
Additionally pushing an arm image would be nice as well.
Bug report
Expected behavior and actual behavior
Expected behavior:
The
nextflow/nextflow:25.10.6Docker image should include a Docker client that is compatible with currently supported Docker daemon API versions. At minimum, the bundled Docker client should support Docker API version1.40or newer.Actual behavior:
The
nextflow/nextflow:25.10.6image includes an older Docker client:When this image is used and attempts to communicate with a up to date Docker daemon through
/var/run/docker.sock, Docker commands fail with:This prevents workflows using the Nextflow Docker image from running Docker-based pipeline steps on hosts with newer Docker daemon versions.
Steps to reproduce the problem
Run the following command:
On my system, this shows that the Docker client bundled inside the Nextflow image is version
17.09.0-cewith API version1.32.To reproduce the failure against a up to date host Docker daemon, run the image with the Docker socket mounted:
On systems where the Docker daemon requires API version
1.40or newer, this fails because the Docker client inside the Nextflow image only supports API version1.32.Program output
Output showing the bundled Docker client version:
Output from the failing execution:
Host/runner Docker version reports an API version:
Environment
25.10.61.54nextflow/nextflow:25.10.6:17.09.0-ce, API version1.32Additional context
The issue appears to be caused by the Docker client bundled inside the
nextflow/nextflowimage. The Dockerfile copies a Docker binary from:COPY dist/${TARGETPLATFORM}/docker /usr/local/bin/dockerRequest: please update the bundled Docker client in the
nextflow/nextflowimage so that it supports Docker API version1.40or newer. A more recent Docker CLI would allow the image to work with current Docker daemons.Additionally pushing an arm image would be nice as well.