Kubernetes k8s读取键有问题“;ValueError:无法反序列化密钥数据;
我在GKE private cluster上部署了应用程序,我有后端服务,但问题是后端服务无法读取GOOGLE_ACCOUNT_private_密钥,我收到以下错误:Kubernetes k8s读取键有问题“;ValueError:无法反序列化密钥数据;,kubernetes,yaml,google-kubernetes-engine,Kubernetes,Yaml,Google Kubernetes Engine,我在GKE private cluster上部署了应用程序,我有后端服务,但问题是后端服务无法读取GOOGLE_ACCOUNT_private_密钥,我收到以下错误: line 1526, in _handle_key_loading_error raise ValueError("Could not deserialize key data.") ValueError: Could not deserialize key data. 这是后端部署的一部分,可在其中
line 1526, in _handle_key_loading_error
raise ValueError("Could not deserialize key data.")
ValueError: Could not deserialize key data.
这是后端部署的一部分,可在其中找到此环境:
env:
- name: GOOGLE_ACCOUNT_PRIVATE_KEY
valueFrom:
configMapKeyRef:
name: gapk
key: GOOGLE_ACCOUNT_PRIVATE_KEY
我还有其他成功的环境,我没有任何错误
这就是我如何保持GOOGLE_帐户_私有_密钥环境:
apiVersion: v1
kind: ConfigMap
metadata:
name: gapk
data:
GOOGLE_ACCOUNT_PRIVATE_KEY: '-----BEGIN PRIVATE KEY-----\private key\n-----END PRIVATE KEY-----\n'
使用“
而不是”
会像新行一样解释\n
,但当我将键放入“
时,我出现了序列化错误,这两种方式我都弄错了:(
我在解码时是否犯了一些错误,同时我将密钥的原始值放入了base64中,但仍然得到错误
value错误:无法反序列化密钥数据。
您是否尝试过将\n
替换为\\n
另一种尝试是删除
\n
并在多行上插入真正的换行符。只要字符串被引用就可以了。另一种尝试是删除尾随的换行符,因为私钥正则表达式在这一行上并不总是一致。您尝试过用\\n
替换\n
吗?@RobEvans我遇到了以下错误无法序列化另一件事是尝试删除\n
并在多行上插入真正的换行符。只要字符串被引用就可以了。另一件事是尝试删除尾随的换行符,因为私钥正则表达式在这一行上并不总是一致。@robvans由于此问题已解决,请将此解决方案作为社区更好的可见性的答案发布。完成。很高兴它起作用。最近一直存在类似问题XD