Kubernetes:仅执行命令外壳容器

时间:2018-06-22 09:25:14

标签: kubernetes

我正在使用的规范包含一个init容器和两个容器。

初始化容器在/etc/secrets/secrets.env上创建了一个文件,第一个容器必须在source上创建文件:source /etc/secrets/secrets.env

我正在尝试使用以下规范进行操作:

    spec:
      containers:
      - name: source-envs
        image: ????
        command: ["/bin/sh", "-c", "source /etc/secrets/secrets.env"]

      volumes:
      - name: sidekick-backend-volume
        emptyDir: {}

我不太清楚该怎么做。

有什么想法吗?

1 个答案:

答案 0 :(得分:0)

它应该通过在init容器和安装在/ etc / secrets上的第一个容器之间共享一个卷来工作:

spec:
  initContainers:
  - name: create-envs
    image: ????
    command: ["/bin/sh", "-c", "touch /etc/secrets/secrets.env"]
    volumeMounts:
     - mountPath: /etc/secrets/
       name: sidekick-backend-volume
  containers:
  - name: source-envs
    image: ????
    command: ["/bin/sh", "-c", "source /etc/secrets/secrets.env"]
    volumeMounts:
     - mountPath: /etc/secrets/
       name: sidekick-backend-volume

  volumes:
  - name: sidekick-backend-volume
    emptyDir: {}