도커 볼륨과 바인드 마운트
섹션 4 도커 볼륨을 활용해 데이터 유실 방지하기를 공부하고 나서 관련된 내용을 좀더 공부하다가 바인드 마운트라는 것을 알았는데요
섹션 4 내용은 볼륨보다는 바인드 마운트에 대한 내용이라는 생각이 들었는데 어떤 차이가 있는건가요?
답변 2
1
안녕하세요 3831568님! 예리한 질문 주셨네요ㅎㅎ
사실 섹션 4에서 언급한 볼륨의 개념은 정확하게 얘기하자면 '바인드 마운트'의 개념입니다.
하지만 실제로 '볼륨'과 '바인드 마운트'는 컨테이너와 호스트 간에
저장소를 공유한다는 점에서 유사합니다.
이 때문에 쉬운 이해를 위해 '볼륨'이라고 설명드렸습니다.
'볼륨'과 '바인드 마운트'의 개념을 구별하기 위해 아래 링크가 도움되실 것 같아서 첨부하겠습니다.
https://ok-lab.tistory.com/121
강의에서는 '바인드 마운트'에 대한 개념만 다루고 있기 때문에
추가적으로 도커의 '볼륨'의 개념에 대해서 추가적으로 학습해보셔도 좋을 것 같습니다:D
이 외로 궁금하신 점 생기시면 또 질문 남겨주세요~~
0
안녕하세요, 인프런 AI 인턴입니다. 3831568님!
Docker에서 데이터를 지속하기 위해 활용되는 두 가지 주요 방식인 “볼륨(Volume)“과 “바인드 마운트(Bind Mount)“는 여러 가지 면에서 차이가 있습니다. 아래에 각 개념과 그 차이점에 대해 간략히 설명드리겠습니다.
Docker 볼륨 (Volume):
- Docker에서 데이터를 지속적으로 사용할 수 있도록 특별히 설계된 메커니즘입니다.
- Docker가 자체적으로 관리하는 위치에 데이터가 저장되며, 이 위치는 Docker 엔진에 의해 자동으로 관리됩니다.
- 여러 컨테이너 간에 쉽게 공유할 수 있으며, 데이터 백업이나 이동에도 편리합니다.
- 데이터의 라이프사이클이 컨테이너보다 독립적이어서, 컨테이너가 삭제되더라도 데이터가 안전하게 보관됩니다.
- Docker에서 데이터를 지속적으로 사용할 수 있도록 특별히 설계된 메커니즘입니다.
바인드 마운트 (Bind Mount):
- 호스트 시스템의 특정 디렉토리를 컨테이너 내의 특정 경로에 직접 연결하여 사용합니다.
- 사용자가 지정한 호스트의 디렉토리와 Docker 컨테이너 내부의 디렉토리가 연결되므로, 호스트의 디렉토리 내용이 실시간으로 컨테이너와 동기화됩니다.
- 컨테이너가 삭제되더라도 호스트의 데이터는 남아있습니다. 그러나 디렉토리가 변경되면 그 변화가 즉시 같이 반영되므로, 사용 시 주의가 필요합니다.
- 개발 환경에서는 주로 테스트 및 코드의 즉각적인 반영을 위해 사용됩니다.
- 호스트 시스템의 특정 디렉토리를 컨테이너 내의 특정 경로에 직접 연결하여 사용합니다.
각 방법은 목적과 상황에 따라 적절히 선택해야 합니다. 만약 호스트의 디렉토리 접근과 변경에 민감하다면, 바인드 마운트를 사용할 수 있으며 데이터의 독립적인 관리를 원할 경우에는 볼륨을 사용하는 것이 좋습니다.
질문에 대한 보다 심도 깊은 이해를 돕기 위한 관련 자료로 Docker의 다양한 스토리지 옵션에 대한 설명을 참고해보시면 도움이 될 것입니다.
저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.
EC2 터미널에서 docker pull
0
64
2
AWS ECR
0
58
2
FROM openjdk:17-jdk 현재 기준 dockerhub에 없습니다
1
100
2
Redis 볼륨 설정?
0
117
2
컨테이너의 IP
0
80
2
도커 이미지를 만들 때 application.yml
0
105
2
compose.yml 관리
0
88
2
ECR 리포지토리에 이미지가 3개가 보입니다.
0
77
2
액세스 키 등록하는 시점 관련 질문이 있습니다.
0
83
1
depends_on에 따른 컨테이너 실행 순서
0
76
2
실제 웹 서비스 배포 시 질문
0
80
2
도커 volume 질문
0
67
3
HTTPS로도 받고 싶으면 docker compose에 443도 쓰면 될까요?
0
74
2
sql 볼륨 폴더 지우면 데이터베이스 데이터 날라가는거 아닌가요?
0
74
2
39강 도커파일 빌드 경로 질문이 있습니다.
0
70
2
도커파일 copy
0
70
2
실무에서 docker compose up --build를 할 때
0
188
2
mysql_data 폴더 내부에 다른 파일이 있는데도 잘 되는 경우
0
86
2
도커 허브에서 postgres 버전 확인하는 법
0
127
2
보충 자료와도 관련된 추가 내용
1
82
1
현업에서 MySQL은 RDS와 도커 볼륨 중 어떤 걸 사용하나요?
0
110
2
노션 자료에 안 보이는 이미지가 있습니다
0
101
1
도커 허브에서의 latest가 가장 최신인 게 맞나요?
0
121
2
docker image ls 실행 시 나오는 내용이 다릅니다
0
87
2





