Kubernetes 기초 (16) - ConfigMap

이것저것 개발자·2023년 4월 3일
0

kubernetes 기초

목록 보기
16/16
post-thumbnail

ConfigMap

Configuration + Map (키, 밸류)

  • Pod의 상태와 상관없이 독립적으로 정보를 관리

리터럴 방식

  • key=value를 직접 커맨드라인에 작성하는 방법
kubectl create configmap <name> --from-literal=key=value

파일 방식

  • 파일로 configMap을 작성하는 방법
kubectl create configmap <name> --from-file=<filepath>
configMap 형태
apiVersion: v1
data:
	MESSAGE: Hello
    STUDENT_NAME: SIMON
kind: ConfigMap
metadata:
	name: greeting-config
    namespace: default

ConfigMap을 참조하여 환경변수 설정

개별로 설정

spec:
	containers:
    	env:
        - name: STUDENT_NAME    # 환경변수 Key
          valueFrom:            # Value
          	configMapKeyRef:
            	name: greeting-config  # configMap 이름
                key: STUDENT_NAME      # configMap key
        - name: MESSAGE
          valueFrom:
          	configMapKeyRef:
            	name: greeting-config
                key: MESSAGE
        - name: GREETING
          value: $(MESSAGE)!$(STUDENT_NAME)

한번에 설정

spec:
	containers:
    	envFrom:
        - confiMapRef:
          name: greeting-config    # ConfigMap 이름
        env:
        - name: GREETING
          value: $(MESSAGE)!$(STUDENT_NAME)

ConfigMap 타입의 볼륨을 Pod에 선언하는 방법

spec:
	volumes:                 # Pod에서 사용할 볼륨 목록 선언
    - name: app-config       # 컨테이너에서 참조할 볼륨 이름
      configMap: 
      	name: nginx-config   # 참조할 ConfigMap 이름
    containers:
    - name: nginx
      image: nginx
      ports:
      - containerPort: 80
      volumeMounts:          # 컨테이너에서 Pod 볼륨 마운트 선언
      - name: app-config     # 마운팅할 Pod 볼륨 이름
        mountPath: /etc/nginx/conf.d  # 컨테이너 안에서 마운팅할 경로
profile
조호영, Developing something

0개의 댓글