도커 스웜 모드 볼륨

정원식·2023년 12월 16일

Docker Swarm 정리

목록 보기
6/7

22년 2월에 작성한 글입니다.

스웜 모드 볼륨

  • docker service create --mount 옵션 사용하여 볼륨 지정
    • bind mount: 호스트와 공유
    • named volume: 도커 볼륨
    • tmpfs: 유닉스 계열 임시 파일 스토리지
    • npipe: 윈도우 컨테이너용

bind mount

  • 호스트와 디렉터리 공유
docker service create --name ubuntu \
--mount type=bind,source=/root/host,target=/root/container \
ubuntu:14.04 \
ping docker.com

named volume

  • 도커 볼륨 사용
docker service create --name ubuntu \
--mount type=volume,source=myvol,target=/root \
ubuntu:14.04 \
ping docker.com
  • type 값을 mount 로 지정
  • source: 사용할 볼륨
    • 해당하는 볼륨이 존재하면 사용, 아니면 새로 생성
  • target: 컨테이너 내부 마운트 될 디렉터리 위치
  • volume-nocopy: 볼륨으로 파일이 복사되는것 방지

한계

  • 서비스를 할당 받을수 있는 모든 노드가 동일한 볼륨을 가지고 있어야함

방법1: 퍼시스턴트 스토리지

  • 어느 노드에서도 접근 가능한 퍼시스턴트 스토리지 사용
  • 도커가 자체적으로 제공 X
    • 서드파티 플러그인
    • nfs, dfs 등을 별도로 구성해야함

방법2: 라벨링

  • 각 노드에 라벨을 붙여 서비스를 제한 (docker node)
    • 필요한 볼륨이 존재하는 노드에만 태스크 할당

Reference

profile
매일매일 성장하고 싶은 백엔드 개발자입니다.

0개의 댓글