Docker Volume & Mount

IRISH·2024년 6월 1일
0

Docker

목록 보기
2/2
post-thumbnail

Volume

Volme 정의

  • 볼륨이란 호스트 머신의 폴더라는 것(로컬 컴퓨터 폴더라는 뜻)
    • 즉, 도커가 인식하는 호스트 머신임
    • 볼륨은 도커 컨테이너 내부의 폴더에 매핑

Volume 의미

  • 볼륨이 가지는 의미
    • 볼륨의 가지는 의미는 컨테이너 내부 폴더와 컨테이너 외부 폴더를 연결하는 것
      • 로컬폴더와 내부 폴더는 격리되어 있으나 볼륨을 이용해 연결이 가능하도록 만들 수 있다는 의미

Mount

Mount 정의 및 방식

  • 마운트란 물리적인 장치를 특정 디렉터리에 연결시켜주는 것
  • 도커는 크게 3가지의 마운트 방식을 제공
    • 볼륨 마운트 = 이 방식이 가장 베스트 방식
    • 바인드 마운트
    • tmfs 마운트

바인드 마운트

  • 바인드 마운트의 경우 호스트의 로컬경로를 직접 지정하여 볼륨을 마운트하는 방식
  • 해당 방식은 도커가 아니기 때문에, 도커프로세스와 non-도커프로세스 간의 차이가 발생할 수 있기 때문에 권장하지 않는 방식
    • 경로가 존재하지 않으면 생성하여 마운트하고 호스트 시스템의 경로에 모두 접근 할 수 있기에 주의가 필요

볼륨 마운트

  • 도커가 생성하고 관리하는 방식
  • 격리된 별도의 저장공간을 만든 후, 필요할 때 마운트 하는 형식이다. (N개의 서비스에 1개의 NAS를 마운트 하는 느낌)
  • 바인드 마운트보다 좀 더 좁은 범위의 마운트이며, 도커에 의해 관리되는 영역에 데이터가 저장됨
  • bind mount와의 차이점
    • 백업과 마이그레이션이 편리
    • 경로가 제한되어 안전하게 공유 가능
    • 볼륨 드라이버를 사용하여 원격의 저장소를 사용할 수 있음

tmfs 마운트

  • 파일시스템 대신 메모리에 데이터를 저장하는 방식을 의미(호스트 메모리에 데이터를 저장)
    • 해당 방식은 리눅스 환경에서만 가능
  • 컨테이너가 중지(stop)되면 마운트가 제거되고 파일이 삭제됨

참고

profile
#Software Engineer #IRISH

0개의 댓글