Docker can't run after moving container

Hello. I had a container running in my default storage pool (btrfs). My pool2 is dir type. I did

lxc move t1 -s pool2

Now docker cannot run. journal -u docker returns

Mar 29 17:31:20 t1 systemd[1]: Starting Docker Application Container Engine...
Mar 29 17:31:20 t1 dockerd[768]: time="2023-03-29T17:31:20Z" level=warning msg="containerd config version `1` has been deprecated and will be removed in containerd v2.0, please switch to version `2`, see https://github.com/containerd/containerd/blob/main/docs/PLUGINS.md#version-header"
Mar 29 17:31:20 t1 dockerd[768]: time="2023-03-29T17:31:20.222839005Z" level=warning msg="failed to load plugin io.containerd.snapshotter.v1.devmapper" error="devmapper not configured"
Mar 29 17:31:20 t1 dockerd[768]: time="2023-03-29T17:31:20.224276214Z" level=warning msg="could not use snapshotter devmapper in metadata plugin" error="devmapper not configured"
Mar 29 17:31:20 t1 dockerd[768]: time="2023-03-29T17:31:20.225645258Z" level=error msg="failed to initialize a tracing processor \"otlp\"" error="no OpenTelemetry endpoint: skip plugin"
Mar 29 17:31:20 t1 dockerd[745]: time="2023-03-29T17:31:20.235729468Z" level=error msg="[graphdriver] prior storage driver btrfs failed: prerequisites for driver not satisfied (wrong filesystem?)"
Mar 29 17:31:21 t1 dockerd[745]: time="2023-03-29T17:31:21.237393260Z" level=warning msg="grpc: addrConn.createTransport failed to connect to {unix:///var/run/docker/containerd/containerd.sock  <nil> 0 <nil>}. Err :connection error: desc = \"transport: Error while dialing dial unix:///var/run/docker/containerd/containerd.sock: timeout\". Reconnecting..." module=grpc
Mar 29 17:31:21 t1 dockerd[745]: failed to start daemon: error initializing graphdriver: prerequisites for driver not satisfied (wrong filesystem?)
Mar 29 17:31:21 t1 systemd[1]: docker.service: Main process exited, code=exited, status=1/FAILURE
Mar 29 17:31:21 t1 systemd[1]: docker.service: Failed with result 'exit-code'.
Mar 29 17:31:21 t1 systemd[1]: Failed to start Docker Application Container Engine.
Mar 29 17:31:21 t1 systemd[1]: docker.service: Scheduled restart job, restart counter is at 1.
Mar 29 17:31:21 t1 systemd[1]: Stopped Docker Application Container Engine.
Mar 29 17:31:21 t1 systemd[1]: Starting Docker Application Container Engine...
Mar 29 17:31:21 t1 dockerd[807]: time="2023-03-29T17:31:21Z" level=warning msg="containerd config version `1` has been deprecated and will be removed in containerd v2.0, please switch to version `2`, see https://github.com/containerd/containerd/blob/main/docs/PLUGINS.md#version-header"
Mar 29 17:31:21 t1 dockerd[807]: time="2023-03-29T17:31:21.750064636Z" level=warning msg="failed to load plugin io.containerd.snapshotter.v1.devmapper" error="devmapper not configured"
Mar 29 17:31:21 t1 dockerd[807]: time="2023-03-29T17:31:21.752167091Z" level=warning msg="could not use snapshotter devmapper in metadata plugin" error="devmapper not configured"
Mar 29 17:31:21 t1 dockerd[807]: time="2023-03-29T17:31:21.753296436Z" level=error msg="failed to initialize a tracing processor \"otlp\"" error="no OpenTelemetry endpoint: skip plugin"
Mar 29 17:31:21 t1 dockerd[785]: time="2023-03-29T17:31:21.763027944Z" level=error msg="[graphdriver] prior storage driver btrfs failed: prerequisites for driver not satisfied (wrong filesystem?)"
Mar 29 17:31:22 t1 dockerd[785]: failed to start daemon: error initializing graphdriver: prerequisites for driver not satisfied (wrong filesystem?)
Mar 29 17:31:22 t1 systemd[1]: docker.service: Main process exited, code=exited, status=1/FAILURE
Mar 29 17:31:22 t1 systemd[1]: docker.service: Failed with result 'exit-code'.
Mar 29 17:31:22 t1 systemd[1]: Failed to start Docker Application Container Engine.
Mar 29 17:31:22 t1 systemd[1]: docker.service: Scheduled restart job, restart counter is at 2.
Mar 29 17:31:22 t1 systemd[1]: Stopped Docker Application Container Engine.
Mar 29 17:31:23 t1 systemd[1]: Starting Docker Application Container Engine...
Mar 29 17:31:23 t1 dockerd[848]: time="2023-03-29T17:31:23Z" level=warning msg="containerd config version `1` has been deprecated and will be removed in containerd v2.0, please switch to version `2`, see https://github.com/containerd/containerd/blob/main/docs/PLUGINS.md#version-header"
Mar 29 17:31:23 t1 dockerd[848]: time="2023-03-29T17:31:23.236811862Z" level=warning msg="failed to load plugin io.containerd.snapshotter.v1.devmapper" error="devmapper not configured"
Mar 29 17:31:23 t1 dockerd[848]: time="2023-03-29T17:31:23.239148636Z" level=warning msg="could not use snapshotter devmapper in metadata plugin" error="devmapper not configured"
Mar 29 17:31:23 t1 dockerd[848]: time="2023-03-29T17:31:23.240294954Z" level=error msg="failed to initialize a tracing processor \"otlp\"" error="no OpenTelemetry endpoint: skip plugin"
Mar 29 17:31:23 t1 dockerd[824]: time="2023-03-29T17:31:23.251273351Z" level=error msg="[graphdriver] prior storage driver btrfs failed: prerequisites for driver not satisfied (wrong filesystem?)"
Mar 29 17:31:24 t1 dockerd[824]: failed to start daemon: error initializing graphdriver: prerequisites for driver not satisfied (wrong filesystem?)
Mar 29 17:31:24 t1 systemd[1]: docker.service: Main process exited, code=exited, status=1/FAILURE
Mar 29 17:31:24 t1 systemd[1]: docker.service: Failed with result 'exit-code'.
Mar 29 17:31:24 t1 systemd[1]: Failed to start Docker Application Container Engine.
Mar 29 17:31:24 t1 systemd[1]: docker.service: Scheduled restart job, restart counter is at 3.
Mar 29 17:31:24 t1 systemd[1]: Stopped Docker Application Container Engine.
Mar 29 17:31:24 t1 systemd[1]: docker.service: Start request repeated too quickly.
Mar 29 17:31:24 t1 systemd[1]: docker.service: Failed with result 'exit-code'.
Mar 29 17:31:24 t1 systemd[1]: Failed to start Docker Application Container Engine.

What to do?

Right, so Docker was setup using btrfs and subvolumes and now you moved it to a filesystem which isn’t btrfs, so no submodules.

You’ll need to reconfigure Docker in /etc/docker to use the overlay2 backend instead of btrfs. But also, you’re going to need to wipe your /var/lib/docker, deleting all containers and images in the process as all of those are stored in a format which will not work with a dir storage pool.

1 Like

Thank you.

I uninstalled docker, and deleted /var/lib/docker. Reinstall it and now it is running. Now is time to get all the things running again.