2015-06-22 18 views

Trả lời

10

AUFS không thể kết nối hệ thống tệp vùng chứa docker.

Điều này là do đường dẫn đã được gắn kết - hoặc - có điều kiện chủng tộc trong tương tác của docker với AUFS, do số lượng lớn khối lượng hiện có.

Để giải quyết việc này, hãy thử như sau:

  1. khởi động lại dịch vụ Docker hoặc daemon và thử lại.

  2. kiểm tra mount cho auf được gắn trên bất kỳ đường nào dưới /var/lib/docker/aufs/. Nếu tìm thấy, dừng docker, sau đó umount chúng (cần sudo).

    dụ:

mount

none on /var/lib/docker/aufs/mnt/55639da9aa959e88765899ac9dc200ccdf363b2f09ea933370cf4f96051b22b9 type aufs (rw,relatime,si=5abf628bd5735419,dio,dirperm1)

sau đó sudo umount /var/lib/docker/aufs/mnt/55639da9aa959e88765899ac9dc200ccdf363b2f09ea933370cf4f96051b22b9

  1. Nếu điều đó không làm việc, ngăn chặn Docker, sau đó sudo rm -rf /var/lib/docker/aufs. Bạn sẽ mất bất kỳ vùng chứa đã dừng nào và tất cả hình ảnh. Nhưng đây chỉ là về bảo đảm để giải quyết vấn đề.
46

Tôi có một số lỗi chưa được giải quyết sau khi xóa /var/lib/docker/aufs, thêm một vài bước nữa.

Để thêm vào @benwalther answer, vì tôi thiếu uy tín để bình luận:

# Cleaning up through docker avoids these errors 
# ERROR: Service 'master' failed to build: 
#  open /var/lib/docker/aufs/layers/<container_id>: no such file or directory 
# ERROR: Service 'master' failed to build: failed to register layer: 
#  open /var/lib/docker/aufs/layers/<container_id>: no such file or directory 
docker rm -f $(docker ps -a -q) 
docker rmi -f $(docker images -a -q) 

# As per @BenWalther's answer above 
sudo service docker stop 
sudo rm -rf /var/lib/docker/aufs 

# Removing the linkgraph.db fixed this error: 
# Conflict. The name "/jenkins_data_1" is already in use by container <container_id>. 
# You have to remove (or rename) that container to be able to reuse that name. 
sudo rm -f /var/lib/docker/linkgraph.db 


sudo service docker start 
+0

Điều này sẽ là một câu trả lời cho riêng bạn (không phải là nhận xét) nếu bạn đảm bảo nó hoàn thành. Chỉ cần cung cấp bất kỳ phân bổ cần thiết nào. – Teepeemm

+3

Tôi cũng gặp phải lỗi "đăng ký không thành công: mở/var/lib/docker/aufs/layers/: không có tệp hoặc thư mục". Điều này dường như gần như làm thủ thuật cho tôi, ngoại trừ việc tôi cũng phải xóa thư mục aufs (/ var/lib/docker/image/aufs) –

+2

Sau khi dừng docker, tôi phải xóa mọi thứ bằng 'rm -rf/var/lib/docker/* ', trước khi nó bắt đầu hoạt động. – dashohoxha

7

Đáng tiếc là trên hệ thống của tôi, tôi không thể giải quyết này với câu trả lời ở trên. Việc quản lý docker giữ nhớ một tập tin nhất định trong lớp aufs mà nó không thể tiếp cận được nữa. Các giải pháp khác không hoạt động. Vì vậy, nếu điều này là một lựa chọn cho bạn, bạn có thể thử việc sửa chữa như sau: gỡ bỏ cài đặt/thanh trừng dockerdocker-engine:

apt-get purge docker docker-engine 

Sau đó, chắc chắn tất cả mọi thứ từ /var/lib/docker được lấy ra.

rm -rf /var/lib/docker 

Sau lần cài đặt lại bộ đế.

10

Tôi đã gỡ bỏ và có cùng một vấn đề:

error creating aufs mount to /var/lib/docker/aufs/mnt/blah-blah-init: invalid argument

Nó giải quyết bằng cách chạy các lệnh sau:

docker stop $(docker ps -a -q); 
docker rm $(docker ps -a -q); 
docker rmi -f $(docker images -a -q) 
0

Trong cửa sổ sau khi khởi động lại, vấn đề máy Docker được giải quyết cho tôi. dừng chân đế máy. docker-machine bắt đầu docker-compose up

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