윈도우에서 도커를 쓰면 정말 에러 해결하기가 힘들다.
특히 도커 툴 박스는 더욱이 그런 것 같다. 이게 virtual box 위에서 동작하다보니까 더 까다롭다.
얼마전 도커를 사용하다가 계속 컨테이너가 1개 뿐이 안올라가고
Error response from daemon: cgroups: cannot find cgroup mount destination: unknow 라는 에러가 계속 나왔다.
그래서 컨테이너 1개만 실행해도 저 에러가 계속 나와서 여간 까다로운 것이 아니었다.
구글링을 해도 안나오고.. 결국 찾다 찾다 겨우 찾아서 저 도커 에러에 대해 포스팅을 남긴다.
Error response from daemon: cgroups: cannot find cgroup mount destination: unknow 이 에러의 대한 설명은
cgroup은 자원할당을 하는 역할을 한다. 얘가 없다고 난리를 치는 것이다.
이렇게 도커를 실행하자마자 docker run을 통해 image를 실행시키면 컨테이너가 잘 올라온다.
하지만 다른 image를 실행시키면
Error response from daemon: cgroups: cannot find cgroup mount destination: unknow 에러가 나오면서 container가 올라가긴 하는데
실행이 안된다
이렇게 컨테이너는 올라간다.
docker rm 으로 지워주자.
자 이제 저 에러를 해결하기 위해 virtual box(버추얼 박스)에 들어가야 한다.
그 전에 확인할 것이
docker-machine ssh default를 쳐보자
이렇게 화면이 나오면서 docker@default 커널로 접속이 될 것이다
그리고 virtual box를 켜서 봐보면
실제로 default라는 애가 실행중이다.
쟤를 더블클릭을 하면
아까 위에서 docker-machine ssh default한 것처럼 똑같이 나온다
일단 저장하고 나온다
그러면 이 상태가 되는데
헤드리스 시작으로 시작을 해준다
다시 실행 중으로 바뀐다.
이 상태에서 도커 커맨드 창으로 간다
그리고 다시 docker-machine ssh default를 쳐준다.
sudo -i를 통해 관리자 권한을 획득한다
그 다음 mkdir /sys/fs/cgroup/systemd를 해준다.
그리고 mount -t cgroup -o none,name=systemd cgroup /sys/fs/cgroup/systemd를 쳐준다
그리고 빠져 나오고
다시 하면! 이렇게 잘 나온다!
에러 없이 잘 실행이 될 것이다.
아오 이거 때문에 며칠을 고생한건지.. 아무튼 해결!
이상으로 도커 툴 박스에서 문제 해결하는 방법이었다