我试图使用initContainer部署带有容器和KNative的服务。
如果这有关系的话,我安装了Istio而没有侧射。
这是我得到的错误:
Internal error occurred: admission webhook "webhook.serving.knative.dev" denied the request: validation failed: must not set the field(s): spec.template.spec.initContainers
volumes not mounted: [some_script]: spec.template.spec.containers[0].volumeMounts我的YAML档案:
apiVersion: serving.knative.dev/v1
kind: Service
metadata:
name: my-service
spec:
template:
spec:
containers:
- image: image
imagePullPolicy: IfNotPresent
name: my-container
ports:
- containerPort: 1234
volumeMounts:
- mountPath: ........
name: .....
.......
initContainers:
- args:
- -c
- /some_dir/some_script.sh
command:
- /bin/sh
image: alpine
imagePullPolicy: IfNotPresent
name: my-init-container
volumeMounts:
- mountPath: /some_dir
name: some_dir
- mountPath: /some_dir/some_script.sh
name: some_script
subPath: some_script.sh
- configMap:
defaultMode: 511
name: some_script.sh
name: some_script谢谢!
发布于 2020-01-15 08:52:50
Init容器不存在于等级库中,这让我相信它是不受支持的。
发布于 2020-01-18 04:57:25
为了给Arghya的答案添加更多的颜色,本机现在故意将init容器排除在外,因为它们可以在冷启动期间导致大量(无限)的额外延迟。此外,init的目标之一是简化许多Kubernetes API,因此可以作为用户容器的启动部分实现的init容器之类的解决方案被屏蔽。
此处限制的原因之一是,添加到API中比从API中删除要容易得多,因此初始API很少看到哪些约束非常繁重。
发布于 2022-08-03 20:08:31
本机在一个特性标志后面引入了init容器注入。请查看knative.dev站点上的文档:https://knative.dev/docs/serving/configuration/feature-flags/#kubernetes-init-containers
https://stackoverflow.com/questions/59747412
复制相似问题