天天看点

kubernetes configmap挂载配置文件

为什么用到configmap呢,你们的项目肯定会有配置文件把,比如拿java项目来讲,配置数据库什么的不必多说了把,那么他们写本地的IP,每次打包跑在容器时,如何更改呢?

configmap。

当你用endpoint+svc(service简称)代理了一个数据库时,service IP肯定是有变化的

先创建一个configmap,

kubernetes configmap挂载配置文件

比如你/root/aa下面有这几个文件

创建configmap可以用命令也可以写yaml

例: kubectl create configmap test1 --from-file=/root/aa/

这样就创建成功了

可以 kubectl get configmap test1 -o yaml 查看

可以这样编写yaml。

apiVersion: v1

kind: Pod

metadata:

name: tomcat-deployment

labels:

app: tomcat-

spec:

containers:

- name: tomcat

image: tomcat7

imagePullPolicy: IfNotPresent #使用本地docker镜像

ports:

- containerPort: 8080

hostPort: 80

volumeMounts:

- name: config

mountPath: /usr/local/tomcat7/webapps/project/WEB-INF/classes/properties/jdbc.properties #此处的路径是你容器中tomcat配置文件的位置

subPath: jdbc.properties

- name: config #多个配置文件多个 -name

mountPath: /usr/local/tomcat7/webapps/youshang_xinrong/WEB-INF/classes/properties/server.properties

subPath: server.properties

volumes:

- name: config

configMap:

name: test1

kubectl create -f XX.yaml 然后就可以了

继续阅读