2015-06-08 14 views
19

Dzisiaj po raz pierwszy zainstalowałem docker w Fedorze 21. Teraz potrzebuję zmienić lokalizację folderu obrazów docker z domyślnego/var/lib/docker.Docker dm_task_run failed error

Po skopiowaniu plików (pominięto podfolder devicemapper, zatrzymano usługę dokowania) i zmianie/etc/sysconfig/docker (dodając opcję -g), ponownie uruchomię usługę dokowania, bez problemów, utworzono devicemapper/metadata.

Następnie staram się wyciągnąć pierwsze zdjęcie:

docker pull centos 

Ale ten błąd:

docker pull centos 
latest: Pulling from docker.io/centos 

6941bfcbbfca: Download complete 
6941bfcbbfca: Error downloading dependent layers 
41459f052977: Downloading [==========================>      ] 41.61 MB/77.28 MB 
fd44297e2ddb: Error pulling image (latest) from docker.io/centos, endpoint: https://registry-1.docker.io/v1/, Driver devicemapper failed to create image rootfs 6941bfcbbfca7f4f48becd38f2639157042bfd44297e2ddb: Error pulling image (latest) from docker.io/centos, Driver devicemapper failed to create image rootfs 6941bfcbbfca7f4f48becd38f2639157042b5cf9ab8c080f1d8b6d047380ecfc: Error running DeviceCreate (createSnapDevice) dm_task_run failed 
FATA[0013] Error pulling image (latest) from docker.io/centos, Driver devicemapper failed to create image rootfs 6941bfcbbfca7f4f48becd38f2639157042b5cf9ab8c080f1d8b6d047380ecfc: Error running DeviceCreate (createSnapDevice) dm_task_run failed 

Gdy próbuję to bez konieczności zmiany lokalizacji - ok, żadnych problemów.

Jak to naprawić?

Odpowiedz

19

Tak jak w przypadku issue 3721, generalnie jest to problem z miejscem na dysku.

Problemem jest to, że docker rmi doesn't always work in that case:

Getting to w wersji 1.2 na CentOS 6.5 jeśli dysk zapełnia się przed obrazem kończy ciągnięcia. Nie można przetłumaczyć niepełnego obrazu.

Jeden "nuclear" option:

usuwając wszystko /var/lib/docker wypracowane. Dzięki

Innym powodem może być common layer of fs to be downloaded between two images.

+2

zabrakło dysku w/(centos 7.2) i jedyne można zrobić do odzyskania było usunięcie/var/lib/docker i od nowa. Dzięki. – e40

+1

Mam pytanie. jeśli wybiorę opcję jądrową, wszystkie pojemniki zostaną utracone, prawda? –

+0

@ Junneyoung Tak, nawet działa. – VonC

0

Występuje kolejny problem dm_task_run podczas docker import, dla mojego przypadku, I yum erase docker.x86_64; yum install docker.x86_64; systemctl start docker.service działa.

22

1) service docker stop

2) thin_check /home/docker/devicemapper/devicemapper/metadata

3) thin_check --clear-needs-check-flag /home/docker/devicemapper/devicemapper/metadata

4) service docker start

+4

Dziękuję, to działało świetnie dla mnie na centos. Problem zaczął się, gdy partycja się zapełniła. –

+1

zadziałał także dla mnie na centos 7. ten sam problem co @gyaani_guy – ceth

+5

To działało dla mnie, z wyjątkiem SUSE, ścieżka to/var/lib/docker/devicemapper/devicemapper/metadata. –