首页 > 解决方案 > 在 kustomization 中从另一个目录引用资源 yaml

问题描述

我在下面给出的文件夹结构中有一个资源 yaml 文件

根据

---- 首先.yaml

主要的

---- kustomization.yaml

在 kustomization.yaml 我将 first.yaml 称为

资源:

  • ../base/first.yaml

但是当我应用 kubectl apply -f kustomizatio.yaml 时出现错误

accumulating resources: accumulating resources from '../base/first.yaml': security; file '../base/first.yaml' is not in or below '../base'

如何将文件夹库中的 first.yaml 资源调用到主文件夹中的 kustomization?

标签: kubernetesyamlkustomize

解决方案


Kustomize 不能引用父目录中的单个资源,它只能引用当前或子目录中的资源,但可以引用其他 Kustomize 目录。

以下将是您所拥有的有效配置:

.
├── base
│   ├── main
│   │   ├── kustomization.yaml
│   │   └── resource.yaml
│   └── stuff
│       ├── first.yaml
│       └── kustomization.yaml
└── cluster
    └── kustomization.yaml

内容base/main/kustomization.yaml

apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization
resources:
  - resource.yaml

内容base/stuff/kustomization.yaml

apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization
resources:
  - first.yaml

内容cluster/kustomization.yaml

apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization
resources:
 - ../base/main
 - ../base/stuff

推荐阅读