Docker

[Docker]Volumes vs Bind Mounts

2023. 10. 25. 16:50
목차
  1. 1. 사용 목적
  2. 2. Bind Mounts
  3. 3. Volumes

1. 사용 목적

docker의 데이터를 유지 시키기 위해 크게 Volumes 또는 Bind Mounts를 사용한다.

Volumes
Bind Mounts

2. Bind Mounts

- 호스트의 파일 또는 디렉토리를 컨테이너에  마운트해서 사용하는 것이다. 

- 호스트의 절대경로(absolute path)에서 파일과 디렉토리를 참조 한다. 

- 호스트에서 해당 경로로 들어가서 Docker container의 파일이나 디렉토리를 수정 및 삭제 등을 할 수 가 있다.

- 성능은 뛰어나지만 그림과 같이 특정 디렉터리 구조를 사용할 수 있는 호스트 시스템의 파일 시스템에 의존한다.

- 공식사이트에서도 이것 보다는 Volume을 권장한다. 

 

3. Volumes

- Bind Mounts 와 달리 Docker에서 완전히 관리된다.

- 이로 인해 다음과 같은 장점이 있다.

  • 볼륨은 바인드 마운트보다 백업 또는 마이그레이션이 더 쉽습니다.
  • Docker CLI 명령 또는 Docker API를 사용하여 볼륨을 관리할 수 있습니다.
  • 볼륨은 Linux 및 Windows 컨테이너 모두에서 작동합니다.
  • 여러 컨테이너 간에 볼륨을 더욱 안전하게 공유할 수 있습니다.
  • 볼륨 드라이버를 사용하면 원격 호스트 또는 클라우드 공급자에 볼륨을 저장하고, 볼륨 내용을 암호화하거나 다른 기능을 추가할 수 있습니다.
  • 새 볼륨에는 컨테이너에 의해 콘텐츠가 미리 채워질 수 있습니다.
  • Docker Desktop의 볼륨은 Mac 및 Windows 호스트의 바인드 마운트보다 성능이 훨씬 높습니다.

 

 

출처 및 참고

https://docs.docker.com/storage/bind-mounts/

https://docs.docker.com/storage/volumes/

'Docker' 카테고리의 다른 글

[Docker]error: version in "./docker-compose.yaml" is unsupported. you might be seeing this error because you're using the wrong compose file version. either specify a supported version (e.g "2.2" or "3.3") and place your service definitions under the `s..  (0) 2023.11.24
[Docker]Env를 활용해서 컨테이너 외부에서 값을 받아보자!  (2) 2023.10.31
[Grafana]Ubuntu 20.04 에서 Grafana를 docker CLI 에서 실행  (0) 2023.10.23
  • 1. 사용 목적
  • 2. Bind Mounts
  • 3. Volumes
'Docker' 카테고리의 다른 글
  • [Docker]error: version in "./docker-compose.yaml" is unsupported. you might be seeing this error because you're using the wrong compose file version. either specify a supported version (e.g "2.2" or "3.3") and place your service definitions under the `s..
  • [Docker]Env를 활용해서 컨테이너 외부에서 값을 받아보자!
  • [Grafana]Ubuntu 20.04 에서 Grafana를 docker CLI 에서 실행
easysheep
easysheep
easysheep
나의 개발자 일기
easysheep
전체
오늘
어제
  • 분류 전체보기 (95)
    • 파이썬 (7)
      • 자료형 (0)
      • matplotlib (2)
      • Tensorflow (1)
      • Selenium (1)
      • Numpy (2)
      • Pandas (1)
    • 장난감 프로젝트 (3)
    • AI_수학 (0)
      • 통계 (0)
    • 알고리즘 (63)
      • 브루트 포스 (3)
      • 그리드 알고리즘 (5)
      • 너비 우선 탐색(bfs) (12)
      • 깊이 우선 탐색(DFS) (1)
      • 최단 경로 구하기(플로이드 워셜) (1)
      • 동적 계획법(Dynamic Programming) (8)
      • Dijkstra algorithm(데이크스트라 알.. (6)
    • Backend (1)
      • Django (1)
    • 딥러닝 (1)
      • Regression(회귀) (0)
    • 머신러닝 (3)
      • Daycon (1)
      • 직접 구현 (1)
    • AWS (3)
    • DB (2)
      • MongoDB (2)
    • kubernetes (3)
    • Docker (4)
    • Stress Test Toll (0)
      • Jmeter (0)
      • nGrinder (0)
    • Ubuntu (3)

블로그 메뉴

  • 홈
  • 태그
  • 방명록

공지사항

인기 글

태그

  • mysql
  • validate service connection
  • 2*n 타일링
  • ubuntu
  • 머신 러닝
  • matplotlib
  • helm
  • dynamic programming
  • 너비 우선 탐색
  • 헬름 설치
  • 데이크스트라
  • 우분투에 헬름 설치
  • 문자열
  • error: version in "./docker-compose.yaml" is unsupported.
  • 파이썬
  • Numpy
  • 알고리즘
  • error
  • Python
  • gradio
  • Cannot stat file /proc/528/fd/0: Permission denied
  • Mac
  • BFS
  • 백준
  • grafana
  • Bind Mounts
  • heap
  • aws
  • ML
  • Docker

최근 댓글

최근 글

hELLO · Designed By 정상우.
easysheep
[Docker]Volumes vs Bind Mounts
상단으로

티스토리툴바

단축키

내 블로그

내 블로그 - 관리자 홈 전환
Q
Q
새 글 쓰기
W
W

블로그 게시글

글 수정 (권한 있는 경우)
E
E
댓글 영역으로 이동
C
C

모든 영역

이 페이지의 URL 복사
S
S
맨 위로 이동
T
T
티스토리 홈 이동
H
H
단축키 안내
Shift + /
⇧ + /

* 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.