Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/kubernetes/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Kubernetes 如何将二进制文件(如cert文件)上载为配置映射_Kubernetes_Openshift_Configmap - Fatal编程技术网

Kubernetes 如何将二进制文件(如cert文件)上载为配置映射

Kubernetes 如何将二进制文件(如cert文件)上载为配置映射,kubernetes,openshift,configmap,Kubernetes,Openshift,Configmap,如何将二进制文件(如cert文件)上载为配置映射 我试图上传像.p12这样的证书文件作为配置映射,但每次都失败了。上传后我没有看到文件只是进入 我使用的命令: oc create configmap mmx-cert --from-file=xyz.p12 失败了 也用于: oc create configmap mmx-cert--from-file=game-special-key=example-files/xyz.p12 也失败。不确定oc命令是什么,但如果您正在谈论kubectl,

如何将二进制文件(如cert文件)上载为配置映射

我试图上传像.p12这样的证书文件作为配置映射,但每次都失败了。上传后我没有看到文件只是进入

我使用的命令:

oc create configmap mmx-cert --from-file=xyz.p12
失败了

也用于:

oc create configmap mmx-cert--from-file=game-special-key=example-files/xyz.p12

也失败。

不确定oc命令是什么,但如果您正在谈论kubectl,请确保输入正确的参数

kubectl create configmap mmx-cert --from-env-file=path/to/xyz.p12
请同时查看帮助,参数-from file基于文件夹,而不是文件

$ kubectl create configmap --help
...
# Create a new configmap named my-config based on folder bar
kubectl create configmap my-config --from-file=path/to/bar

不确定oc命令是什么,但如果您谈论的是kubectl,请确保输入正确的参数

kubectl create configmap mmx-cert --from-env-file=path/to/xyz.p12
请同时查看帮助,参数-from file基于文件夹,而不是文件

$ kubectl create configmap --help
...
# Create a new configmap named my-config based on folder bar
kubectl create configmap my-config --from-file=path/to/bar

您不能,ConfigMaps本身不能包含二进制数据。您需要自己对其进行编码,然后在另一端对其进行解码,通常是base64。或者只是一个可以处理二进制数据的秘密。

您不能,ConfigMaps本身不能包含二进制数据。您需要自己对其进行编码,然后在另一端对其进行解码,通常是base64。或者只是一个可以处理二进制数据的秘密。

我就是这样做的

1将证书添加到阶段CAE:

当证书与运行oc命令的目录相同时:

oc create secret generic mmx-cert --from-file='cert.p12'
2添加秘密卷:

下一步是为机密创建一个卷。作为测试,我能够使用oc命令在apache节点上创建卷。因为apache节点有一个部署配置,所以它是直接的。我进行了测试设置,并手动将其添加到应用程序中。我添加到部署yaml的部分包括:

- mountPath: /opt/webserver/cert/nonprod/
  name: mmxcert-volume


- name: mmxcert-volume
  secret:
  defaultMode: 420
  secretName: mmx-cert
3验证证书

md5sum cert.p12
我就是这样做的

1将证书添加到阶段CAE:

当证书与运行oc命令的目录相同时:

oc create secret generic mmx-cert --from-file='cert.p12'
2添加秘密卷:

下一步是为机密创建一个卷。作为测试,我能够使用oc命令在apache节点上创建卷。因为apache节点有一个部署配置,所以它是直接的。我进行了测试设置,并手动将其添加到应用程序中。我添加到部署yaml的部分包括:

- mountPath: /opt/webserver/cert/nonprod/
  name: mmxcert-volume


- name: mmxcert-volume
  secret:
  defaultMode: 420
  secretName: mmx-cert
3验证证书

md5sum cert.p12

IDK如果接受的答案随着时间的推移而改变,但您实际上可以将二进制文件放在cms base64编码上,此后您实际上不必执行任何操作,例如:

apiVersion: v1
kind: ConfigMap
binaryData:
  elasticsearch.keystore: P9dsFxZlbGFzdGljc2VhcmNoLmtleXN0b3JlAAAABAAAAAC/AAAAQM5hkNkN7WjdNRwa/vKIte4mnBrWKZxzuqTdvNdneTWzZyQU+TIquP+ZlV1zCOGm2Jbdg+wMNcWqTQY4LvoSKHEAAAAMo5XONlIK6969bNQFAAAAZ6Cn+jnDe29K0W4a0unPodSljz+W+tRxgD59+oFnt17vN9hSutTbk1lzCJNiwnhK5mliHmS5Ie/9dhWfnI+vhkzXvFAYauvFxS7aJ9L3uKw3opFUtSrPY76fAXPcEYMGp8TcTceMZK7AKJPoAAAAAAAAAAAGacI8
data:
  elasticsearch.yml: |
    ...

来源:

IDK如果接受的答案随着时间的推移而改变,但您实际上可以将二进制文件放在cms base64上,此后您实际上不必执行任何操作,例如:

apiVersion: v1
kind: ConfigMap
binaryData:
  elasticsearch.keystore: P9dsFxZlbGFzdGljc2VhcmNoLmtleXN0b3JlAAAABAAAAAC/AAAAQM5hkNkN7WjdNRwa/vKIte4mnBrWKZxzuqTdvNdneTWzZyQU+TIquP+ZlV1zCOGm2Jbdg+wMNcWqTQY4LvoSKHEAAAAMo5XONlIK6969bNQFAAAAZ6Cn+jnDe29K0W4a0unPodSljz+W+tRxgD59+oFnt17vN9hSutTbk1lzCJNiwnhK5mliHmS5Ie/9dhWfnI+vhkzXvFAYauvFxS7aJ9L3uKw3opFUtSrPY76fAXPcEYMGp8TcTceMZK7AKJPoAAAAAAAAAAAGacI8
data:
  elasticsearch.yml: |
    ...

来源:

oc命令是什么,为什么不是kubectl,有什么区别?oc命令是什么,为什么不是kubectl,有什么区别?oc是kubectl的OpenShift版本。oc是kubectl的OpenShift版本。噢,你能提供创建机密的命令,并将其作为文件装载到任何装载路径吗。就像我试图用我的p12证书文件处理config map一样。实际上,只需将create cm替换为create secret:并且在卷端,您使用的不是configMapRef,而是secretRef。哦,请提供创建secret的命令,并将其作为文件装载到任何装载路径。就像我试图用我的p12证书文件处理配置映射一样。实际上,只需用create secret:替换create cm,在卷端,使用secretRef而不是configMapRef。