0

我也是 openshift 和 Kubernetes 的新手(来自 Docker swarm world)。我正在寻找使用定义文件在 openshift 中创建秘密。这些秘密是从文件中生成的。举一个我正在尝试做的例子,假设我有一个文件“apache.conf”,我想将该文件添加到容器中,作为一个安装为卷的秘密。在 swarm 中,我可以在堆栈文件中编写以下内容:

my-service:
 secrets:
  - source: my-secret
    target: /home/myuser/
    mode: 0700
secrets:
 my-secret:
   file: /from/host/apache.conf

在openshift中,我希望有类似的东西:

apiVersion: v1
kind: Secret
metadata:
- name: my-secret
  files:
    - "/from/host/apache.conf"
type: Opaque 

我发现我可以做类似事情的唯一方法是使用kustomize根据这篇文章,使用 Kustomize 和 openshift 很麻烦。有没有更好的方法从文件中创建秘密?

4

1 回答 1

1

不,你不能

原因是对象 Secret 存储在 etcd 数据库中,未绑定到任何主机。因此,对象不理解路径。您可以使用 cli 从文件中创建秘密,然后内容将保存在 Secret 对象中。

oc create secret generic my-secret --from-file=fil1=pullsecret_private.json

于 2020-03-17T14:17:39.827 回答