2016-07-08 7 views
1

저는 CentOS 컴퓨터에서 잠시 동안 Docker를 사용하고 있었으며 많은 이미지와 컨테이너 (약 4GB)가있었습니다. 내 컴퓨터에 8GB의 저장소가 있고 Docker 컨테이너 또는 Docker 이미지를 docker rm 또는 docker rmi으로 제거하려고 할 때마다 devicemapper에서 오류가 계속 발생했습니다. 오류는 Error response from daemon: Driver devicemapper failed to remove root filesystem입니다. 그래서 Docker 서비스를 중단하고 다시 시작하려고했지만 devicemapper 때문에 실패했습니다. Docker를 제거한 후 다음 명령을 실행하여 모든 이미지, 컨테이너 및 볼륨을 제거했습니다. rm -rf /var/lib/docker. 그러나, 어떤 공간가 해제 된 것처럼 보이지 않는 후 실행 :도커가있는 CentOS에 공간이 없습니다

$ df -h 
Filesystem  Size Used Avail Use% Mounted on 
/dev/xvda1  8.0G 7.7G 346M 96%/
devtmpfs  1.8G  0 1.8G 0% /dev 
tmpfs   1.8G  0 1.8G 0% /dev/shm 
tmpfs   1.8G 193M 1.6G 11% /run 
tmpfs   1.8G  0 1.8G 0% /sys/fs/cgroup 
tmpfs   361M  0 361M 0% /run/user/1000 

$ du -ch -d 1 | sort -hr 
3.6G total 
3.6G . 
1.7G ./usr 
903M ./var 
433M ./home 
228M ./opt 
193M ./run 
118M ./boot 
17M  ./etc 
6.4M ./tmp 
4.0K ./root 
0  ./sys 
0  ./srv 
0  ./proc 
0  ./mnt 
0  ./media 
0  ./dev 

왜 뒤 내가 3.6G를 사용하고 나에게 말한다 반면 나는 7.7을 사용하고 말해 df라고합니까? /var/lib/docker에있는 모든 것을 삭제 한 이후 du가주는 수치 (3.6G)는 올바른 값이어야합니다.

+0

'docker rmi'로 도커 이미지를 지우는 클리너. 이미지 나 중간 생성 컨테이너를 제대로 제거하지 않았을 수 있습니다. –

+0

'docker rm' 또는'docker rmi'가있는 컨테이너 나 이미지를 제거 할 수 없습니다. 나는'데몬으로부터의 오류 응답 : 드라이버 devicemapper가 루트 파일 시스템을 제거하지 못했습니다 .'라는 오류를 계속 받았습니다. 그 다음에, 방금 전 Docker를 제거하고'rm -rf/var/lib/docker' 명령을 실행하여 모든 이미지, 컨테이너 및 볼륨을 삭제했습니다. – pcsram

답변

0

비슷한 문제가있었습니다. 이 ticket이 도움이되었습니다. 사용중인 파일 시스템에 따라

, 당신은 하나 fstrim, zerofree를 사용하거나 다른 기계 나에 드라이브를 추가하고 파일 시스템 XFS 경우 사용을 xfs_repair

를 사용하는 것이 좋습니다 당신은 후 다음 xfs_repair을 사용 이 명령을 실행하면 드라이브 루트에 lost+found 디렉토리에 upspace하지만 도달 할 수없는 모든 데이터가 들어 있어야합니다.

그런 다음 삭제할 수 있으며 실제로는 du에 반영됩니다.

관련 문제