我试图将我的应用程序部署到运行在谷歌容器中的Kubernetes
引擎。
该应用程序可以在https://github.com/Industrial/docker-znc上找到。
Dockerfile内置于谷歌容器注册表上的映像中。
我已经通过+按钮在Kubernetes中部署了应用程序。我没有YAML
对于这个。
我已经在Kubernetes中插入了一个Secret,用于应用程序所需的PEM文件。
如何获得由创建的部署、服务和Pod的YAML
Kubernetes通过填写表格?
我如何把秘密进入我的豆荚使用?
如何获得由创建的部署、服务和Pod的YAML
Kubernetes通过填写表格?
kubectl get deployment,service,pod yourapp -o yaml --export
回答@Sinaesthetic的问题:
您知道如何为整个集群(所有部署)执行此操作吗?
kubectl get deploy --all-namespaces -o yaml --export
此方法的问题是导出不包括名称空间。因此,如果你想同时导出许多资源,我建议逐个命名空间执行:
kubectl get deploy,sts,svc,configmap,secret -n default -o yaml --export > default.yaml
不幸的是,kubernetes仍然不支持真正的get all命令,因此您需要手动列出想要导出的资源类型。可以获得资源类型的列表
kubectl api-resources
现在——export已弃用,要以'原始'格式从资源中获得输出(刚刚清理了,没有任何关于当前对象状态的信息(在这种情况下不必要的元数据)),您可以使用yq v4.x执行以下操作:
kubectl get <resource> -n <namespace> <resource-name> -o yaml \
| yq eval 'del(.metadata.resourceVersion, .metadata.uid, .metadata.annotations, .metadata.creationTimestamp, .metadata.selfLink, .metadata.managedFields)' -