On the 20th of March 2024, version 26.0.0 of Docker was released. There are a number of changes in this release to be aware of, with one in particular causing issues with older versions of Portainer. Version 2.20.3 of Portainer, now available, includes fixes for the known incompatibilities with Docker 26 and above, and we plan to add full support for Docker 26+ in our next LTS release (2.21), due in mid-August.
What's the issue?
The specific issue manifests in being unable to view image details or access the container console when running Portainer on a Docker 26 and above environment. This is a result of the removal of the Container
and ContainerConfig
fields from the response of Docker's GET /images/{name}/json
API endpoint. Portainer's implementation relies on these fields existing in the response it receives from the Docker API, and as such an error is returned.
Why wasn't this prepared for?
These fields were flagged as deprecated in the previous Docker release (25.0.0), which was released in January 2024. Portainer 2.19.4 was released in December 2023, so before the deprecation notice was flagged in Docker 25. Because of this, we were unaware the fields were going to be deprecated and therefore were unable to prepare for it. For our 2.20 STS release, we based this off the 2.19.4 codebase so it is affected the same way.
It is worth noting that we publish a list of the supported versions of Docker (and Kubernetes) for each release on our Requirements and Prerequisites page in the Portainer documentation. The versions we list there are versions we have tested Portainer against and can verify are functional. We recommend sticking to our supported versions where possible, especially in production environments.
Should I upgrade Docker?
Docker 26.0.0 was only a week old at the time of this initial post, and we would highly advise against upgrading to such a new version so quickly. However, we recognize that you will eventually need to upgrade, and we are working on fixes to resolve these errors. Portainer version 2.20.3, part of our STS release, contains fixes for the errors we've so far identified, and is available now. It is important to note that this patch does not provide certified complete support for Docker 26 and above - it is focused on resolving the breaking issues as described above. Full Docker 26+ support will be available in our next LTS release, 2.21 LTS, which we expect to release in mid-August.
If you have any questions around these issues or find other problems with Docker 26 and above you can reach out through our various support channels.
COMMENTS