Exercise 8.1: Create a ConfigMap
CP 노드에 연결된 터미널로 이동
ConfigMap에 사용할 파일 생성
{ mkdir primary echo c > primary/cyan echo m > primary/magenta echo y > primary/yellow echo k > primary/black echo "known as key" >> primary/black echo blue > favorite }
ConfigMap 생성
kubectl create configmap colors \ --from-literal=text=black \ --from-file=./favorite \ --from-file=./primary/
생성된 ConfigMap 확인
kubectl get cm colors
생성된 ConfigMap 데이터 확인
kubectl get cm colors -o yaml
Pod 생성
cat <<EOF | kubectl create -f - apiVersion: v1 kind: Pod metadata: name: shell-demo spec: containers: - name: nginx image: nginx env: - name: ilike valueFrom: configMapKeyRef: name: colors key: favorite EOF
생성된 Pod에 지정한 환경변수 확인
kubectl exec shell-demo -- /bin/bash -c 'echo $ilike'
Pod 삭제
kubectl delete pod shell-demo
Pod 생성
cat <<EOF | kubectl create -f - apiVersion: v1 kind: Pod metadata: name: shell-demo spec: containers: - name: nginx image: nginx envFrom: - configMapRef: name: colors EOF
생성된 Pod에 지정된 모든 환경변수 확인
kubectl exec shell-demo -- /bin/bash -c 'env'
Pod 삭제
kubectl delete pod shell-demo
ConfigMap 생성
cat <<EOF | kubectl create -f - apiVersion: v1 kind: ConfigMap metadata: name: fast-car namespace: default data: car.make: Hyundai car.model: Ioniq car.trim: Exclusive EOF
생성된 ConfigMap 데이터 확인
kubectl get cm fast-car -o yaml
Pod 생성
cat <<EOF | kubectl create -f - apiVersion: v1 kind: Pod metadata: name: shell-demo spec: containers: - name: nginx image: nginx volumeMounts: - name: car-vol mountPath: /etc/cars volumes: - name: car-vol configMap: name: fast-car EOF
생성된 Pod에 마운트된 디렉토리 확인
kubectl exec shell-demo -- /bin/bash -c 'df -ha |grep cars'
생성된 Pod에 마운트된 파일 내용 확인
kubectl exec shell-demo -- /bin/bash -c 'cat /etc/cars/car.trim; echo'
Pod 삭제
kubectl delete pod shell-demo
ConfigMap 삭제
kubectl delete cm fast-car colors
Last updated