Latest update broke docker on Debian Bulleye stable

Just got hit by a dodgy (?) update, that took out my docker containers. I’m unsure what tripped it, but here is the upgrade list:

6 packages can be upgraded. Run 'apt list --upgradable' to see them.
apt list --upgradable
Listing... Done 1.6.13-1 amd64 [upgradable from: 1.6.12-1]
docker-ce-cli/bullseye 5:20.10.22~3-0~debian-bullseye amd64 [upgradable from: 5:20.10.21~3-0~debian-bullseye]
docker-ce-rootless-extras/bullseye 5:20.10.22~3-0~debian-bullseye amd64 [upgradable from: 5:20.10.21~3-0~debian-bullseye]
docker-ce/bullseye 5:20.10.22~3-0~debian-bullseye amd64 [upgradable from: 5:20.10.21~3-0~debian-bullseye]
docker-compose-plugin/bullseye 2.14.1~debian-bullseye amd64 [upgradable from: 2.12.2~debian-bullseye]
docker-scan-plugin/bullseye 0.23.0~debian-bullseye amd64 [upgradable from: 0.21.0~debian-bullseye]

After reboot docker ps came up empty.

Fortunately I was able to roll back.

docker ps shows only containers. Containers will not survive upgrading Docker unless you enable live-restore. docker ps -a may show you stopped containers and you can run them again.

All containers were “lost” as the update overwrote docker.service, which pointed to an alternate path for the docker data using --data-root /path/to/data. Complete chaos resulted.

Now using daemon.json to point to data.

Thanks for responding.

Never change the systemd service files directly. You can run systemctl edit docker.service to create a new file to override the default parameters.

In your case using daemon.json was a better choice.

Good to know. Lots of misinformation on the web. The overlay2 directory had taken over the / partition, and I ran with the first “solution” I found.

Thanks for this.