Now that Docker released an upgrade to version 23.0.0
I got an unfriendly reminder that three old Ubuntu installations were still configured to use aufs
with Docker.
I had to revert to version 20.10.23
in order to be able to start my containers.
According to a chatbot, I can use docker save
to export the content of the image, then upgrade the system to 23.0.0
, and use docker load
in order to recreate the image for use with the overlay2
driver.
Now my question is:
Is it possible to push
the old, original, unsaved aufs
images of the 20.10.23
version into a private registry, then upgrade the system to Docker version 23.0.0
, and have docker run
pull those old images for use with the overlay2
driver?
Could this cause an undefined behavior because the images in the registry were created with aufs
, or is this a working migration path?
The Docker registry protocols and the
docker save
tar file formats are independent of any particular storage backend. If you (or your CI system) have anaufs
Docker installation and push images to a registry, you shouldn't have any trouble pulling them on to anoverlay2
setup.Also consider that the registry protocol has only really had two major versions, but at various times
devicemapper
,aufs
,overlay
, andoverlay2
have all been "the best" storage backend, and Docker Hub itself hasn't needed to do anything special to support this. Also of note is the appearance of alternate container runtimes like Podman, and Kubernetes's announcement that Docker proper is no longer a recommended container runtime, but these alternate systems still work file with existing image registries.