backend

[Docker] no space left on device 해결 - Mac

버리야 2024. 1. 19. 05:09
반응형

Mac에서 Docker로 elasticsearch를 실행하려고 하니, 'no space left on device' 오류를 만났다.

 

-> Please restart Elasticsearch to activate any plugins installed
Exception in thread "main" java.nio.file.FileSystemException: /tmp/elasticsearch-11008505465111459062: No space left on device
at java.base/sun.nio.fs.UnixException.translateToIOException(UnixException.java:100)
at java.base/sun.nio.fs.UnixException.rethrowAsIOException(UnixException.java:106)
at java.base/sun.nio.fs.UnixException.rethrowAsIOException(UnixException.java:111)
at java.base/sun.nio.fs.UnixFileSystemProvider.createDirectory(UnixFileSystemProvider.java:438)
at java.base/java.nio.file.Files.createDirectory(Files.java:699)
at java.base/java.nio.file.TempFileHelper.create(TempFileHelper.java:134)
at java.base/java.nio.file.TempFileHelper.createTempDirectory(TempFileHelper.java:171)
at java.base/java.nio.file.Files.createTempDirectory(Files.java:1017)
at org.elasticsearch.tools.launchers.Launchers.createTempDirectory(Launchers.java:55)
at org.elasticsearch.tools.launchers.TempDirectory.main(TempDirectory.java:43)

 

docker desktop 에서의 no space left on device  해결 방법 

docker desktop > 상단의 톱니바퀴(Preferences) 클릭

 

Preferences > Resources > Advanced 에서, Disk Image size를 늘려주기 > 적용을 위해 Docker desktop 재시작

(캡쳐 화면에서 80GB로 변경했다. 용량이 많이 남아서..)

 

 

그외 해결방법,

필요없는 컨테이너와 이미지 삭제를 하면 된다. 

docker system df -v 명령을 실행하여 상세한 공간 사용 정보를 확인하거나, 

docker image ls 나  docker container ls -a 명령을 실행하여 이미지와 컨테이너 목록을 확인다. 불필요한 객체가 많으면 docker system prune 명령을 실행하여 정리할 수 있다.

Docker Desktop은 맥 파일 시스템에 있는 단일 "disk image" 파일에 리눅스 컨테이너와 이미지를 저장한다. 이는 리눅스에서 Docker가 컨테이너와 이미지를 /var/lib/docker 디렉토리에 저장하는 것과 다르다.

 

Docker Desktop 디스크 이미지 파일 위치찾기 :

Preferences > Resources > Advanced > Disk Image location 확인

 

참고하면 좋을 macfaqs : https://docs.docker.com/desktop/faqs/macfaqs/

반응형