ConfigMap 마운트
2024. 5. 4. 08:30ㆍk8s
ConfigMap을 이용해서 mount하는 경우, 실제 디렉토리에 존재하는 파일이 없어지지는 않음
파일이 하나인 경우
apiVersion: v1
kind: ConfigMap
metadata:
name: {config}
namespace: {config}
data:
{file1}: |
{내용}
---
containers:
- name: {pod}
image: {image}
ports:
- containerPort: {port}
volumeMounts:
- name: {volume}
mountPath: {directory}/{file1}
# 특정 파일을 하나만 mount하는 경우, subPath를 기술해야 함
# 기술하지 않으면, 기존 디렉토리 전체를 삭제하고 해당 파일만 생성됨
subPath: {file1}
imagePullSecrets:
- name: {pod}
volumes:
- name: {volume}
configMap:
name: {config}
파일이 2개 이상인 경우
apiVersion: v1
kind: ConfigMap
metadata:
name: {config}
namespace: {config}
data:
{file1}: |
{내용}
{file2}: |
{내용}
---
containers:
- name: {pod}
image: {image}
ports:
- containerPort: {port}
volumeMounts:
- name: {volume1}
mountPath: {directory}/{file1}
subPath: {file1}
- name: {volume2}
mountPath: {directory}/{file2}
subPath: {file2}
imagePullSecrets:
- name: {pod}
volumes:
- name: {volume1}
configMap:
name: {config}
items:
- key: {file1}
path: {file1}
- name: {volume2}
configMap:
name: {config}
items:
- key: {file2}
path: {file2}
ConfigMap 적용하기
# apply를 수행해도 pod에서 변경된 configMap을 참조하지 않음
kubctl apply -f {yml 파일}
# pod를 재기동해야 함
# 삭제하면 자동으로 새로 생성됨
kubectl delete {pod} -n {namespace}
TS
- Pod "postgres-0" is invalid: [spec.volumes[1].name: Invalid value: "pg_hba": a lowercase RFC 1123 label must consist of lower case alphanumeric characters or '-', and must start and end with an alphanumeric character (e.g. 'my-name', or '123-abc', regex used for validation is '[a-z0-9]([-a-z0-9]*[a-z0-9])?'), spec.containers[0].volumeMounts[2].name: Not found: "pg_hba"]
volume이름에는 '.', '_'를 사용할 수 없음
'k8s' 카테고리의 다른 글
docker registry 조회 명령 (0) | 2024.07.06 |
---|---|
디버깅에 유용한 명령어 (0) | 2024.05.05 |
initContainers 사용하기 (1) | 2024.04.28 |
Minikube docker registry 설치 (0) | 2024.04.16 |
Minikube addon registry 설정 (0) | 2024.04.10 |