인프런 영문 브랜드 로고
인프런 영문 브랜드 로고

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

eoyeong님의 프로필 이미지

작성한 질문수

비전공자도 이해할 수 있는 Docker 입문/실전

[실습] Docker로 MySQL 실행시켜보기 - 4

도커 볼륨을 사용하는 경우에 대해 질문 있습니다.

해결된 질문

작성

·

96

·

수정됨

0

안녕하세요!

강의 실습에서와 같이 바인드 마운트를 사용하는 경우에

 

1. 호스트 디렉토리 경로에 디렉토리가 이미 존재하는 경우, 호스트 디렉토리의 파일을 컨테이너 경로에 덮어씌움

2.호스트 디렉토리 경로에 디렉토리가 존재하지 않는 경우, 디렉토리를 만들고 컨테이너 경로의 파일들을 호스트 경로에 복사함.

 

이 두 가지 경우로 나뉘어서 복사되는 규칙이 달라지는데

 

도커 볼륨을 사용할 때도 동일한 규칙이 적용되나요??

도커 볼륨에다가 직접 디렉토리를 생성하는 경우는 없을 것 같아서 최초 처음 컨테이너에 볼륨을 연결하는 경우에만 2번으로 동작할 것 같고, 이후에 동일한 볼륨을 다른 컨테이너에 연결할 때는 1번처럼 동작할 것 같은데 맞을까요?

 

 

답변 2

1

JSCODE 박재성님의 프로필 이미지
JSCODE 박재성
지식공유자

안녕하세요 eoyeong님! 질문 잘 해주셨습니다:D

도커 볼륨에다가 직접 디렉토리를 생성하는 경우는 없을 것 같아서 최초 처음 컨테이너에 볼륨을 연결하는 경우에만 2번으로 동작할 것 같고, 이후에 동일한 볼륨을 다른 컨테이너에 연결할 때는 1번처럼 동작할 것 같은데 맞을까요?

-> 네 맞습니다! 정확히 잘 이해하신 것 같네요:D 정말 이렇게 작동하는 지 실제로 테스트 하는 과정을 거쳐도 좋은 학습이 될 것 같습니다~!!

 

이 과정 중에 또 궁금한 점 있으시면 편하게 질문 남겨주세요~~

eoyeong님의 프로필 이미지
eoyeong
질문자

답변 감사합니다 :)

1

인프런 AI 인턴님의 프로필 이미지

안녕하세요, 인프런 AI 인턴입니다. eoyeong님.

Docker에서 바인드 마운트와 볼륨을 사용하는 것이 사용자의 이해를 필요로 하는 중요한 부분입니다. 질문하신 내용에서 언급하신 두 가지 시나리오에 대한 차이점과 사용법을 설명드리겠습니다.

Docker 볼륨 사용 동작 방식

  1. 바인드 마운트와의 차이점:

    • 바인드 마운트는 호스트의 특정 디렉토리를 컨테이너의 디렉토리에 직접 연결합니다. 만약 호스트 디렉토리가 이미 존재하면, 해당 디렉토리 내의 파일들이 컨테이너 내에서 덮어씌워집니다. 반면 볼륨은 Docker가 관리하는 영역에 저장되어 있으며, 기술적으로 호스트의 파일 시스템과는 분리되어 있습니다.
  2. 볼륨 최초 연결 시:

    • Docker 볼륨의 경우, 처음 컨테이너에 볼륨을 연결하는 경우에도 컨테이너 내의 기존 데이터는 호스트 볼륨으로 복사되지는 않습니다. 대신, 볼륨이 비어 있으면 컨테이너 경로에 이미 존재하는 파일은 그대로 유지되거나, 초기화된 디렉토리 구조가 생성됩니다.
  3. 볼륨의 지속성:

    • 볼륨은 데이터를 지속적으로 보존하며 한 번 생성되면, 데이터는 해당 볼륨에 유지됩니다. 이는 여러 컨테이너가 동일한 볼륨을 참조하는 경우에도 데이터를 동일하게 사용할 수 있다는 장점을 제공합니다.
  4. 여러 컨테이너에서의 공유:

    • 동일한 볼륨을 여러 컨테이너에 연결하는 경우, 볼륨의 데이터는 새롭게 덮어씌워지지 않으며, 볼륨에 저장된 데이터를 이용하여 각 컨테이너가 동일한 환경을 유지하게 됩니다. 즉, 새로운 컨테이너가 해당 볼륨을 사용한다고 해서 기존의 데이터가 삭제되거나 변경되지 않습니다.

결론

따라서 Docker 볼륨의 사용은 사용자가 지정한 초기 디렉토리 및 데이터가 본질적으로 관리되고, 여러 컨테이너에 걸쳐 피복되어 여러 작업에 사용될 수 있습니다. 이는 변경되지 않는 볼륨 데이터를 보존하고 재활용하는 데에 큰 장점을 갖습니다.

더 자세한 이해를 위해 관련 질문을 추천드립니다:

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다. 현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏 추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

eoyeong님의 프로필 이미지
eoyeong
질문자

그러면 도커 볼륨은 기존 파일의 복사는 이루어지지 않고, 마운트된 경로에 새로운 파일이 추가/삭제만 되는건가요?

eoyeong님의 프로필 이미지

작성한 질문수

질문하기