2015-06-08 18 views
19

Hôm nay tôi lần đầu tiên cài đặt docker trên Fedora 21. Bây giờ, tôi cần thay đổi vị trí của thư mục hình ảnh docker từ mặc định/var/lib/docker.Docker dm_task_run lỗi không thành công

Sau khi sao chép tệp (bỏ qua thư mục con bị bỏ qua, dịch vụ docker dừng) và thay đổi/etc/sysconfig/docker (thêm tùy chọn -g), tôi chạy dịch vụ docker một lần nữa, không có vấn đề, devicemapper/siêu dữ liệu được tạo.

Tiếp theo, tôi đang cố gắng để kéo hình ảnh đầu tiên:

docker pull centos 

Nhưng xảy ra lỗi này:

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 

Nếu tôi cố gắng này mà không thay đổi vị trí - ok, không có vấn đề.

Làm thế nào để sửa chữa nó?

Trả lời

19

Như đã thấy trong issue 3721, điều này thường là vấn đề về dung lượng ổ đĩa.

Vấn đề là docker rmi doesn't always work in that case:

Bắt này trong v1.2 trên CentOS 6.5 nếu một đĩa đầy lên trước khi hình ảnh kết thúc kéo. Không thể rmi hình ảnh không đầy đủ.

Một "nuclear" option:

loại bỏ tất cả mọi thứ trong /var/lib/docker làm việc ra. Cảm ơn

Lý do khác có thể là common layer of fs to be downloaded between two images.

+2

Tôi chạy ra khỏi không gian đĩa trên/(centos 7.2) và điều duy nhất tôi có thể làm để khôi phục đã bị xóa/var/lib/docker và bắt đầu lại. Cảm ơn. – e40

+1

Tôi có một câu hỏi. nếu tôi chọn lựa chọn hạt nhân thì tất cả các container sẽ bị mất, đúng không? –

+0

@JuneyoungOh có, ngay cả những người đang chạy. – VonC

0

Tôi gặp sự cố dm_task_run khác trong thời gian docker import, đối với trường hợp của tôi, tôi yum erase docker.x86_64; yum install docker.x86_64; systemctl start docker.service hoạt động.

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

Cảm ơn bạn, điều này làm việc tuyệt vời cho tôi trên centos. Sự cố bắt đầu khi phân vùng đầy. –

+1

cũng làm việc tốt cho tôi trên centos 7. cùng một vấn đề như @gyaani_guy – ceth

+5

Điều này đã làm việc cho tôi, ngoại trừ SUSE, đường dẫn là/var/lib/docker/devicemapper/devicemapper/metadata. –

Các vấn đề liên quan