강의/Docker & Kubernetes : 실전 가이드

[50] 명명된(name) 볼륨으로 구조하기!

JJIMJJIM 2025. 2. 22. 12:28
728x90
반응형
SMALL

 

명명된(named) 볼륨으로 구조하기!

Docker의 볼륨 유형과 데이터 관리

 

 

볼륨의 두 가지 유형

익명 볼륨 (Anonymous Volumes)

  • 특징
    • 도커가 자동 관리
    • 임시적 특성
    • 컨테이너와 생명주기 연결
  • 생성 방법
# Docekrfile에 적용
VOLUME ["/app/feedback"]

# 명령어에 적용
docker run -v /app/feedback(컨테이너 내부 경로만) 이미지_이름
  • 한계
    • 컨테이너 제거 시 볼륨도 삭제 (--rm 사용 시)
    • 직접 접근 어려움
    • 컨테이너를 종료하고 수동으로 삭제하면, 볼륨이 삭제되진 않지만 새로 생성/실행할대마다 새 볼륨이 생성되기에 데이터 저장 안된다

 

명명된 볼륨 (Named Volumes)

  • 특징
    • 사용자가 이름 지정
    • 영구적 데이터 저장
    • 컨테이너 독립적
  • 생성 방법
docker run -v feedback:/app/feedback 이미지명
  •  장점
    • 컨테이너 제거 후에도 데이터 유지
    • 여러 컨테이너 간 공유 가능

 

 

볼륨 관리 명령어

# 볼륨 목록 확인
docker volume ls

# 특정 볼륨 제거
docker volume rm 볼륨명

# 사용하지 않는 볼륨 제거
docker volume prune

 

 

익명 볼륨 명령어 예시

# 케이스 1: stop/start
docker run -v /app/data ...  # 익명 볼륨 생성
docker stop 컨테이너ID      # 볼륨 유지
docker start 컨테이너ID     # 같은 볼륨 사용

# 케이스 2: 삭제 후 재생성
docker run -v /app/data ...  # 첫 번째 익명 볼륨
docker rm 컨테이너ID        # 볼륨 남음
docker run -v /app/data ...  # 새로운 익명 볼륨 생성

# 케이스 3: --rm 옵션
docker run --rm -v /app/data ...  # 종료 시 볼륨도 삭제

 

 

주요 차이점 정리

생명주기

  • 익명 볼륨 : 컨테이너 의존적
  • 명명된 볼륨 : 독립적 유지

 

접근성

  • 익명 볼륨 : 도커 관리, 접근 제한
  • 명명된 볼륨 : 이름으로 관리 가능

 

용도

  • 익명 볼륨 : 임시 데이터
  • 명명된 볼륨 : 영구 데이터 저장

 

 

사용 시나리오

익명 볼륨 사용

  • 임시 캐시 데이터
  • 컨테이너 종속적 데이터
  • 재사용 불필요 데이터

 

명명된 볼륨 사용

  • 데이터베이스 파일
  • 사용자 업로드 파일
  • 설정 파일

이러한 볼륨 관리를 통해 효율적인 데이터 지속성을 확보할 수 있습니다.

 

 

 

참고

https://www.udemy.com/course/docker-kubernetes-2022

 

728x90
반응형
LIST