Kubernetes K8s:添加环境值后应用yaml文件时出错
以下Kubernetes K8s:添加环境值后应用yaml文件时出错,kubernetes,Kubernetes,以下yaml文件工作正常 apiVersion: apps/v1 kind: Deployment metadata: name: something spec: replicas: 2 selector: matchLabels: app: something template: metadata: labels: app: something spec: volumes: - name
yaml
文件工作正常
apiVersion: apps/v1
kind: Deployment
metadata:
name: something
spec:
replicas: 2
selector:
matchLabels:
app: something
template:
metadata:
labels:
app: something
spec:
volumes:
- name: shared-logs
emptyDir: {}
containers:
- name: something
image: docker.io/manuchadha25/something
volumeMounts:
- name: shared-logs
mountPath: /deploy/codingjediweb-1.0/logs/
env:
- name: DB_CASSANDRA_URI
value: cassandra://34.91.5.44
- name: DB_PASSWORD
value: something
- name: DB_KEYSPACE_NAME
value: something
- name: DB_USERNAME
value: something
- name: EMAIL_SERVER
value: something
- name: EMAIL_USER
value: something
- name: EMAIL_PASSWORD
value: something
- name: ALLOWED_NODES
value: 34.105.134.5
ports:
- containerPort: 9000
#- name: logging
# image: busybox
#volumeMounts:
# - name: shared-logs
# mountPath: /deploy/codingjediweb-1.0/logs/
#command: ['sh', '-c', "while true; do sleep 86400; done"]
但是当我在env
部分中添加以下两行时,我得到了错误
apiVersion: apps/v1
kind: Deployment
metadata:
name: something
spec:
replicas: 2
selector:
matchLabels:
app: something
template:
metadata:
labels:
app: something
spec:
volumes:
- name: shared-logs
emptyDir: {}
containers:
- name: something
image: docker.io/manuchadha25/something
volumeMounts:
- name: shared-logs
mountPath: /deploy/codingjediweb-1.0/logs/
env:
- name: DB_CASSANDRA_URI
value: cassandra://34.91.5.44
- name: DB_CASSANDRA_PORT <--- NEW LINE
value: 9042<--- NEW LINE
- name: DB_PASSWORD
value: something
- name: DB_KEYSPACE_NAME
value: something
- name: DB_USERNAME
value: something
- name: EMAIL_SERVER
value: something
- name: EMAIL_USER
value: something
- name: EMAIL_PASSWORD
value: something
- name: ALLOWED_NODES
value: 34.105.134.5
ports:
- containerPort: 9000
#- name: logging
# image: busybox
#volumeMounts:
# - name: shared-logs
# mountPath: /deploy/codingjediweb-1.0/logs/
#command: ['sh', '-c', "while true; do sleep 86400; done"]
$ kubectl apply -f codingjediweb-nodes.yaml
Error from server (BadRequest): error when creating "codingjediweb-nodes.yaml": Deployment in version "v1" cannot be handled as a Deployment: v1.Deployment.Spec: v1.DeploymentSpec.Template: v1.PodTemplateSpec.Spec: v1.PodSpec.Containers: []v1.Container: v1.Container.Env: []v1.EnvVar: v1.EnvVar.Value: ReadString: expects " or n, but found 9, error found in #10 byte of ...|,"value":9042},{"nam|..., bigger context ...|.1.85.10"},{"name":"DB_CASSANDRA_PORT","value":9042},{"name":"DB_PASSWORD","value":"1GFGc1Q|...
apiVersion:apps/v1
种类:部署
元数据:
名字:什么
规格:
副本:2份
选择器:
火柴标签:
应用程序:什么
模板:
元数据:
标签:
应用程序:什么
规格:
卷数:
-名称:共享日志
emptyDir:{}
容器:
-名字:什么
图片:docker.io/manuchadha25/something
体积数量:
-名称:共享日志
mountPath:/deploy/codingjediweb-1.0/logs/
环境:
-姓名:DB_CASSANDRA_URI
价值:cassandra://34.91.5.44
-名称:DB_CASSANDRA_PORT能否请您在双qoutes“9042”中添加9042,然后再试一次。我认为它是在寻找字符串,而不是获取数字,因此请在双引号中添加值尝试在9042周围加一个引号,应该可以,或者您可以使用ASCII来表示9042。让我知道它是否有效。可能是