인프런 커뮤니티 질문&답변

인프런님의 프로필 이미지

작성한 질문수

개발자를 위한 쉬운 도커

도커 볼륨(Docker Volume)

도커 볼륨 경로에 대한 질문입니다

해결된 질문

작성

·

395

2

강의 14:50 쯤에

제가 이해한 바로는 맥에서는 도커데스크탑인 가상머신을 사용하기 때문에 저 경로가 도커 데스크탑에서의 볼륨 경로이고 여기에 실제 데이터를 저장한다고 이해했습니다. 그렇다면 만약 도커 데스크탑을 삭제한다면 여기에 저장된 데이터들은 없어지는건가요? 그리고 저 경로에 왜 접근이 힘든건지 잘 모르겠습니다.

답변 1

1

데브위키님의 프로필 이미지
데브위키
지식공유자

인프런님 안녕하세요. 데브위키입니다.

네 말씀해주신 대로 가상머신을 사용하기 때문에 실제로 볼륨이 마운트되어 데이터가 저장되는 곳은 가상 머신이 맞습니다! 그래서 도커 데스크탑을 삭제하시면 저장된 데이터도 역시 삭제됩니다.

경로에 접근이 힘든 이유는 Docker Desktop 이 자체적으로 도커가 실행되는 가상 머신을 자체적으로 관리하고, 이 가상머신에 접근하는 것을 공식적으로 지원하지 않기 때문입니다.

 

이 현상은 윈도우와 맥OS에서 도커 데스크탑을 통해 컨테이너를 사용하실 때의 특이한 케이스라고 생각해주시면 좋을 것 같습니다.

볼륨에 저장된 데이터를 직접 관찰하는 케이스는 학습이나 디버깅 용도로 많이 사용하시게 될 것 같습니다. 직접 관찰하시면서 테스트 하실 수 있는 방법은 두 가지가 있습니다.

  1. 바인드 마운트 사용: 볼륨 마지막 부분의 바인드 마운트 기능을 활용하시면 볼륨 내부의 내용을 직접 보실 수 있습니다.

  2. 디버깅 컨테이너 사용: 디버깅용 컨테이너를 통해서 볼륨 내부의 내용을 관찰하실 수 있습니다.

     

     

     

    예시:

     

# 디버깅용 컨테이너 생성 및 shell접근
$ docker run -it --rm --name volume-debug-container -v {관찰할볼륨명}:/data alpine sh

  
# 컨테이너 내부에서 명령어 실행하여 볼륨 내부 확인
$ ls -al /data

 

이런 식으로 관찰하고 싶으신 볼륨을 디버깅용 컨테이너로 마운트 한 다음에 내부를 관찰하실 수 있습니다.

 

강의 들으시면서 궁금하신 점이 생기면 편하게 질문 주세요.

완강까지 응원하겠습니다!

인프런님의 프로필 이미지
인프런
질문자

보고싶을때 디버깅용 컨테이너로 보면 되겠군요 감사합니다!