volumeMounts
필드의 각 속성들에 대해 상세히 설명해드리겠습니다:
containers:
volumeMounts:
- name: app-storage # volume의 이름
mountPath: /app/data # 컨테이너 내부 마운트 경로
subPath: data # 볼륨 내부의 하위 경로
readOnly: false # 읽기 전용 여부
mountPropagation: None # 마운트 전파 정책
name
- 필수 필드입니다
- Pod의
volumes
섹션에서 정의된 볼륨의 이름과 일치해야 합니다 - 이를 통해 어떤 볼륨을 마운트할지 지정합니다
mountPath
- 필수 필드입니다
- 볼륨을 마운트할 컨테이너 내부의 절대 경로를 지정합니다
- 예:
/var/log
,/app/config
,/data
등 - 다른
volumeMount
와 중첩되지 않아야 합니다
subPath
- 선택적 필드입니다
- 볼륨 내의 특정 하위 디렉토리를 마운트하고 싶을 때 사용합니다
- 전체 볼륨이 아닌 특정 하위 경로만 마운트하므로 다른 마운트와 볼륨을 공유할 수 있습니다
- 예시:
volumeMounts: - name: shared-data mountPath: /app1/data subPath: app1 - name: shared-data mountPath: /app2/data subPath: app2
readOnly
- 선택적 필드입니다 (기본값: false)
true
: 읽기 전용으로 마운트false
: 읽기/쓰기 모두 가능
mountPropagation
- 선택적 필드입니다
- 호스트-컨테이너 간 마운트 전파 방식을 결정합니다
- 가능한 값:
None
: 호스트의 후속 마운트가 컨테이너에 표시되지 않음 (기본값)HostToContainer
: 호스트의 후속 마운트가 컨테이너에도 표시됨Bidirectional
: 호스트와 컨테이너 양방향으로 마운트가 전파됨
사용 예시:
containers:
- name: app
image: nginx
volumeMounts:
# 기본적인 볼륨 마운트
- name: config-volume
mountPath: /etc/nginx/conf.d
# 읽기 전용 설정 파일
- name: ssl-certs
mountPath: /etc/ssl/certs
readOnly: true
# 공유 볼륨의 특정 하위 디렉토리 사용
- name: shared-data
mountPath: /app/my-data
subPath: app1/data
# 로그 디렉토리를 호스트와 양방향 공유
- name: log-volume
mountPath: /var/log
mountPropagation: Bidirectional
이러한 설정들을 통해 컨테이너와 볼륨 간의 세밀한 마운트 제어가 가능합니다.
댓글 없음:
댓글 쓰기