Docker machine for Mac 에서 no space left on device
오늘은 Docker를 Mac에서 사용할 때 격는 문제에 대해 정리합니다.
Prerequisite
- Docker version 17.03.1-ce
- Docker-machine version 0.10.0
저는 Docker toolbox
를 이용하고 있으며, Docker for Mac
과 의 차이점에 관련된 내용은 여기서 참고하시면 됩니다.
Problem
Docker
이미지 빌드 중에 이런 메시지를 만났습니다.
failed to register layer: Untar re-exec error: exit status 1: output: write /home/oracle/app/oracle/oradata/oracle/users01.dbf: no space left on device
no space left on device
틀림없이 제 맥북은 용량이 많이 남아있습니다.
Solution
Docker-machine
은 VirtualBox 를 이용해서 docker
를 실행합니다.
이에 docker
가 실행되는 환경 접속을 하려면 별도의 명령이 필요합니다.
$ docker-machine ssh
이제 도커가 돌고 있는 가상 환경으로 들어왔습니다.
디스크 용량을 확인합니다.
$ sudo df -h
...
/dev/sda1 20.0G 19.9G 0.1G 99% /mnt/sda1/var/lib/docker/aufs
...
저 녀석이 꽉차 있습니다.
그냥 docker-machine
의 가상머신 환경을 날리고 용량을 크게 다시 만듭니다.
$ docker-machine ls
NAME ACTIVE DRIVER STATE URL SWARM DOCKER ERRORS
default * virtualbox Running tcp://192.168.99.101:2376 v17.06.0-ce
저 default
를 날립니다.
$ docker-machine rm default
이제 disk size 를 새로 지정합니다. 여기서는 80G 로 만듭니다.
$ docker-machine create --driver virtualbox --virtualbox-disk-size "80000" default
이 전 과정을 반복해서 용량을 확인합니다.
$ docker-machine ssh
$ sudo df -h
변경이 완료되었습니다.