728x90
반응형
명명된(named) 볼륨으로 구조하기!
Docker의 볼륨 유형과 데이터 관리
볼륨의 두 가지 유형
익명 볼륨 (Anonymous Volumes)
- 특징
- 도커가 자동 관리
- 임시적 특성
- 컨테이너와 생명주기 연결
- 생성 방법
VOLUME ["/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
반응형
'강의 > Docker & Kubernetes : 실전 가이드' 카테고리의 다른 글
[55] NodeJS 특화 조정 : 컨테이너에서 Nodemon 사용하기 (0) | 2025.02.22 |
---|---|
[52, 53, 54] 바인드 마운트 (bind mount) 시작하기 (0) | 2025.02.22 |
[47, 48] 볼륨 소개하기 (0) | 2025.02.20 |
[46] 데모 앱 구축 & 이해하기 (0) | 2025.02.20 |
[44] 데이터 카테고리 / 다양한 종류의 데이터 이해하기 (0) | 2025.02.19 |
댓글