简体   繁体   中英

How to move docker containers using device mapper to another machine without using docker commands

Here's the situation

After a reboot, docker was unable to restart due to a lack of space on the disk. Due to a lot of bad decisions, we're now left only with a copy of /var/lib/docker (so we're not able to run the docker that we would like to move to an other machine running the same OS/version of docker ( 1.8.3 )

when we try to naively replace the /var/lib/docker by the old one, we got

Feb 20 08:06:33 example.com systemd[1]: Starting Docker Application Container Engine...
Feb 20 08:06:33 example.com docker[2164]: time="2016-02-20T08:06:33.111285635+01:00" level=error msg="[graphdriver] prior storage driver \"devicemapper\" failed: Base Device UUID verification failed. Possibly using a different thin pool then last invocation:exit status 2"
Feb 20 08:06:33 example.com docker[2164]: time="2016-02-20T08:06:33.111382676+01:00" level=fatal msg="Error starting daemon: error initializing graphdriver: Base Device UUID verification failed. Possibly using a different thin pool then last invocation:exit status 2"
Feb 20 08:06:33 example.com systemd[1]: docker.service: main process exited, code=exited, status=1/FAILURE

I've been reading through this issue on docker https://github.com/docker/docker/issues/15721 but it does not seems helpful.

Is there's a known procedure to move things out ? or at least to mount the disk images to get the data out?

workaround is - rm -rf /var/lib/docker & restart docker(sometimes host reboot needed)

https://github.com/docker/docker/issues/23089

You can change the UUID for which docker is looking in /var/lib/docker/devicemapper/metadata/deviceset-metadata

this file contains on my system:

{
    "BaseDeviceFilesystem": "xfs",
    "BaseDeviceUUID": "4c799443-bf3d-4b95-a9df-dd86de235057",
    "next_device_id": 1
}

you should try to replace 4c799443-bf3d-4b95-a9df-dd86de235057 with the UUID docker is looking for.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM