与 configmap 通信时出错
Error communicating with the configmap
您好,我正在使用 google kubernetes 引擎来部署我的应用程序。我尝试添加一个 configMap
apiVersion: v1
kind: ConfigMap
metadata:
name: configmap
namespace: default
data:
database_user: root
database_password: root
database_db: db
database_port: 5432
database_host: mypostgres
然后在我的应用程序部署文件中,我映射了我的环境变量,如下所示
spec:
containers:
- env:
- name: DATABASE_HOST
valueFrom:
configMapKeyRef:
name: configmap
key: database_host
- name: DATABASE_NAME
valueFrom:
configMapKeyRef:
name: configmap
key: database_db
- name: DATABASE_PASSWORD
valueFrom:
configMapKeyRef:
name: configmap
key: database_password
- name: DATABASE_USER
valueFrom:
configMapKeyRef:
name: configmap
key: database_user
- name: DATABASE_PORT
valueFrom:
configMapKeyRef:
name: configmap
key: database_port
我的服务我没有 运行 而我得到了
CreateContainerConfigError
When I try to show the result of the pod
当我 "describe my pod " 我得到了
Error: Couldn't find key database_host
我的问题是,为什么我的部署文件没有与我定义的 configmap 通信
我通过这个命令创建了 configmap
kubectl create configmap configmap --from-file=configmap.yaml
尝试configmap --from-env-file=configm
如"kubectl create configmap --help"所述:
--from-env-file='': 指定文件的路径以读取 key=val 对的行以创建 configmap(即 Docker
.env 文件)。
所以你只需要创建一个名为 conf 的文件,其值如下:
database_user= root
database_password= root
database_db= db
database_port= 5432
database_host= mypostgres
和运行:"kubectl create configmap coco-config --from-env-file=conf"
更新:
如果您将数据放入“ ”,问题将得到解决
apiVersion: v1
kind: ConfigMap
metadata:
name: configmap
namespace: default
data:
database_user: "root"
database_password: "root"
database_db: "db"
database_port: "5432"
database_host: "mypostgres"
不要使用 --from-file 命令。
试试 kubectl apply -f configmap.yaml
您好,我正在使用 google kubernetes 引擎来部署我的应用程序。我尝试添加一个 configMap
apiVersion: v1
kind: ConfigMap
metadata:
name: configmap
namespace: default
data:
database_user: root
database_password: root
database_db: db
database_port: 5432
database_host: mypostgres
然后在我的应用程序部署文件中,我映射了我的环境变量,如下所示
spec:
containers:
- env:
- name: DATABASE_HOST
valueFrom:
configMapKeyRef:
name: configmap
key: database_host
- name: DATABASE_NAME
valueFrom:
configMapKeyRef:
name: configmap
key: database_db
- name: DATABASE_PASSWORD
valueFrom:
configMapKeyRef:
name: configmap
key: database_password
- name: DATABASE_USER
valueFrom:
configMapKeyRef:
name: configmap
key: database_user
- name: DATABASE_PORT
valueFrom:
configMapKeyRef:
name: configmap
key: database_port
我的服务我没有 运行 而我得到了
CreateContainerConfigError When I try to show the result of the pod
当我 "describe my pod " 我得到了
Error: Couldn't find key database_host
我的问题是,为什么我的部署文件没有与我定义的 configmap 通信
我通过这个命令创建了 configmap
kubectl create configmap configmap --from-file=configmap.yaml
尝试configmap --from-env-file=configm
如"kubectl create configmap --help"所述: --from-env-file='': 指定文件的路径以读取 key=val 对的行以创建 configmap(即 Docker .env 文件)。
所以你只需要创建一个名为 conf 的文件,其值如下:
database_user= root
database_password= root
database_db= db
database_port= 5432
database_host= mypostgres
和运行:"kubectl create configmap coco-config --from-env-file=conf"
更新: 如果您将数据放入“ ”,问题将得到解决
apiVersion: v1
kind: ConfigMap
metadata:
name: configmap
namespace: default
data:
database_user: "root"
database_password: "root"
database_db: "db"
database_port: "5432"
database_host: "mypostgres"
不要使用 --from-file 命令。 试试 kubectl apply -f configmap.yaml