로컬에서 도커 테스트하다가 마주한 에러입니다.
도커 데스크탑에서 해당 프로젝트에서 띄운 두 개의 컨테이너를 모두 삭제한 후에 다시 docker-compose 명령어를 통해 다시 띄우려고 했었는데요,
컨테이너 삭제 후에 docker-compose 명령어를 입력했을 때에 마주한 에러입니다.
docker-compose.yml 파일은 로컬 테스트용 파일이구요, 여기에는 web 컨테이너와 db 컨테이너에 대한 정의가 있습니다.
이 docker-compose -f docker-compose.yml down -v
명령어를 통해 해당 docker-compose.yml 파일을 실행하여 컨테이너를 띄우도록 하는 명령인데, 이런 에러가 났습니다.
해당 에러를 구글링하고 찾아본 결과,
지워서 더 이상 존재하지 않는 기존 네트워크에 컨테이너를 추가하려 할 때에 이 문제가 발생한다고 합니다.
그리고 이는, docker-compose up --force-recreate
로 해결할 수 있었습니다.
강제로 다시 만들게끔 하는 명령어더라구요
다시 컨테이너가 잘 띄워지는 것을 확인할 수 있습니다!
추가로 컨테이너를 지웠다가 다시 만들 때에
기존에 존재하던 네트워크들이나 기존 볼륨들을 모두 삭제한 후에 이 명령어를 수행해도 됩니다.
그럼 쓰지 않는 볼륨들을 모두 삭제하니 용량이 더 줄겠죠?
해당 명령어는 다음과 같습니다.
docker system prune -a
기왕에 기존 컨테이너 싹 다 지워버리고 새로 빌드하는데,
이전꺼 싹 다 지우는 것도 깔끔하고 좋은 것 같아요
깔끔!
다시 띄우고 도커 데스크탑 앱을 이용해서도 확인해보았습니다.
여기서도 직접 컨테이너를 확인할 수 있고, 에러가 나도 여기서도 확인이 가능하다는 점에서 참 편리한 것 같아요.