如何使用设备映射器将Docker容器移动到另一台机器上,而无需使用docker命令
这是情况
重启后,由于磁盘空间不足,docker无法重启。 由于很多糟糕的决定,我们现在只剩下一份/var/lib/docker
(所以我们无法运行docker
,我们想移动到运行相同OS /docker版本( 1.8.3
)
当我们试图用旧的replace/var/lib/docker
,我们得到了
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
我一直在Docker https://github.com/docker/docker/issues/15721上阅读这个问题,但它似乎没有帮助。
有一个已知的程序来移动的东西吗? 或者至less要挂载磁盘映像来获取数据?
解决方法是 – rm -rf / var / lib / docker&restart docker(有时需要主机重启)
您可以更改docker在/ var / lib / docker / devicemapper / metadata / deviceset-metadata中查找的UUID
这个文件包含在我的系统上:
{ "BaseDeviceFilesystem": "xfs", "BaseDeviceUUID": "4c799443-bf3d-4b95-a9df-dd86de235057", "next_device_id": 1 }
您应该尝试用UUID泊坞窗正在查找replace4c799443-bf3d-4b95-a9df-dd86de235057。