Skip to content

Commit 33e9c7a

Browse files
committed
feat(k8s): config maps
1 parent c5e0436 commit 33e9c7a

File tree

5 files changed

+43
-0
lines changed

5 files changed

+43
-0
lines changed

app/configmap-production.yaml

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
apiVersion: v1
2+
kind: ConfigMap
3+
metadata:
4+
name: training-config-production
5+
namespace: default
6+
data:
7+
NODE_ENV: production
8+
MONGO_URI: mongodb://34.225.152.246:27017/training

app/configmap-staging.yaml

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
apiVersion: v1
2+
kind: ConfigMap
3+
metadata:
4+
name: training-config-staging
5+
namespace: default
6+
data:
7+
NODE_ENV: staging
8+
MONGO_URI: mongodb://54.212.50.140:27017/training

app/configmap-volumes.yaml

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
apiVersion: v1
2+
kind: ConfigMap
3+
metadata:
4+
name: training-config-volumes
5+
namespace: default
6+
data:
7+
training.type: kubernetes
8+
training.time: 2 day

app/deployment.yaml

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -49,9 +49,14 @@ spec:
4949
secretKeyRef:
5050
name: training-secrets
5151
key: redis
52+
envFrom:
53+
- configMapRef:
54+
name: training-config-production # training-config-staging
5255
volumeMounts:
5356
- mountPath: /data
5457
name: data
58+
- mountPath: /etc/config
59+
name: config
5560
- name: logging-agent
5661
image: busybox
5762
args: [/bin/sh, -c, 'tail -f /data/training.log']
@@ -66,3 +71,6 @@ spec:
6671
volumes:
6772
- name: data
6873
emptyDir: {}
74+
- name: config
75+
configMap:
76+
name: training-config-volumes

commands.txt

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -76,3 +76,14 @@ kubectl get cronjob training-job-cron
7676
# pod=$(kubectl get pods -a --selector=job-name=training-job-cron-1516207920 --output=jsonpath={.items..metadata.name})
7777
# kubectl logs $pod
7878
kubectl delete cronjob hello
79+
80+
### configmap ###
81+
kubectl create -f ./configmap-production.yaml
82+
kubectl create -f ./configmap-staging.yaml
83+
kubectl create -f ./configmap-volumes.yaml
84+
kubectl create -f ./deployment.yaml
85+
kubectl get configmaps
86+
pod=$(kubectl get pods --show-all --selector=app=training --output=jsonpath={.items..metadata.name})
87+
kubectl exec -it $pod -c training /bin/sh
88+
cat /etc/config/training.type
89+
echo $NODE_ENV

0 commit comments

Comments
 (0)