我有一个 keystore.jks 文件,我需要将它作为 docker 进程的 env 变量传递。
我使用以下命令将文件存储为机密。
kubectl 创建秘密通用 ssl-keystore-cert --from-file=./keystore.jks
在我的 deployment.yaml 中使用上述秘密,如下所示。
{
"name": "SERVER_SSL_KEYSTORE",
"valueFrom": {
"secretKeyRef": {
"name": "ssl-keystore-cert",
"key": "keystore.jks"
}
}
}
Run Code Online (Sandbox Code Playgroud)
错误:无法启动容器“app-service”:来自守护进程的错误响应:oci 运行时错误:container_linux.go:265:启动容器进程导致“process_linux.go:368:容器初始化导致\”setenv:无效参数\“”回退重启失败的容器
反正有没有将 keystore.jks 存储在 secret 或 configmap 中?
调试:-
kubectl 描述秘密 ssl-keystore-cert
Name: ssl-keystore-cert
Labels: <none>
Annotations: <none>
Type: Opaque
Data
====
keystore.jks: 4818 bytes
Run Code Online (Sandbox Code Playgroud)
在创建秘密时,您引用keystore.jks
但在您的 yaml 中,您引用了server-ssl.jks
这些应该是相同的密钥,但它们是不同的。
要验证密钥是否正确,请运行:
kubectl describe secrets/ssl-keystore-cert
| 归档时间: |
|
| 查看次数: |
14892 次 |
| 最近记录: |