개요
도커 이미지를 빌드하는 과정에서 계속 no space left on device 에러가 떴다.
일단 말 그대로 디바이스에 공간이 없어서 발생하는 문제이기에 디스크 용량도 확인해보고 docker system prune으로 삭제도 해보았다.
결론은 docker system prune으로 해결.
docker system prune 사용하기
docker prune은 사용하지 않는 도커 오브젝트(컨테이너,이미지,네트워크)를 정리해준다.
$ docker system prune --help
Usage: docker system prune [OPTIONS]
Remove unused data
Options:
-a, --all Remove all unused images not just dangling ones
--filter filter Provide filter values (e.g. "label=<key>=<value>")
-f, --force Do not prompt for confirmation
--volumes Prune volumes
docker system prune --all --force 로 사용하지 않는 도커 오브젝트를 다 삭제하여 도커 캐시 클리어 해주었다.
디스크 , inode 용량 확인하고 삭제하기
inode이란?
inode는 유닉스 계열 파일 시스템에서 파일이나 디렉토리의 메타데이터를 저장하는 자료구조이다.
파일이 디스크에 저장될 때, 실제 데이터는 데이터 블록에 저장되며, 이 데이터 블록들의 위치 정보는 inode에 포함된 포인터를 통해 관리된다. inode는 이렇게 파일의 실제 내용이 저장된 블록들을 찾는 데 필요한 정보를 제공한다.
우선 디스크 용량 확인을 위해 df 사용
$ df -i
Filesystem 512-blocks Used Available Capacity iused ifree %iused Mounted on
/dev/disk1s1s1 439662488 17904464 165898048 10% 356049 829490240 0% /
devfs 413 413 0 100% 718 0 100% /dev
/dev/disk1s6 439662488 6291592 165898048 4% 3 829490240 0% /System/Volumes/VM
/dev/disk1s2 439662488 10976312 165898048 7% 1219 829490240 0% /System/Volumes/Preboot
/dev/disk1s4 439662488 56512 165898048 1% 46 829490240 0% /System/Volumes/Update
/dev/disk4s2 1024000 12328 987744 2% 1 4938720 0% /System/Volumes/xarts
/dev/disk4s1 1024000 12488 987744 2% 29 4938720 0% /System/Volumes/iSCPreboot
/dev/disk4s3 1024000 1720 987744 1% 51 4938720 0% /System/Volumes/Hardware
/dev/disk1s5 439662488 235235312 165898048 59% 869321 829490240 0% /System/Volumes/Data
/dev/disk2s1 39062504 863912 38099368 3% 47109 190496840 0% /Volumes/무제
map auto_home 0 0 0 100% 0 0 100% /System/Volumes/Data/home
devfs의 사용량이 100% 인 이유는
devfs는 파일시스템으로 사용가능한 공간을 수치로 보여주지는 것이 아니지만 파일 시스템 계층 구조의 일부로서 보이기 때문에, 이에 대한 정보를 요구하는 일반 도구들에게 해당 값을 보고해야 한다.
(참고 https://apple.stackexchange.com/questions/267165/why-is-devfs-full)
map auto_home도 disk가 꽉 찬거랑은 상관이 없다.
더 이상 진행을 안해도 되지만 리눅스 명령어 공부할 겸 진행보았다.
'클라우드 > Docker' 카테고리의 다른 글
Postgres를 도커 컨테이너로 만들고 도커 컴포즈로도 관리하기 (with volumes) (2) | 2024.02.16 |
---|---|
JAVA,Python 애플리케이션을 도커파일로 만들고 도커 컴포즈로 관리하기 (0) | 2024.02.16 |
도커 컨테이너 커밋 & 포트 바인딩 (0) | 2023.05.01 |