Kubernetes可以像Docker Compose一样使用吗?

我一直在挖掘Kubernetes文档数小时。 我了解核心devise,以及服务,控制器,吊舱等的概念。

但是,我不明白的是我可以声明性地configuration群集的过程。 也就是说,我写一个configuration文件(或其集合)的方式来定义化妆和云部署的扩展选项。 我希望能够声明哪个容器需要在哪个容器中进行,如何进行通信,如何进行扩展等,而不需要运行大量的cli命令。

是否有Kubernetes的docker -composefunction?

我希望我的应用程序在git中被定义为受版本控制,而不依赖手动的cli交互。

这是可能做到一个简洁的方式吗? 有没有比官方文件更清晰的参考?

如果你仍然在看,也许这个工具可以帮助:

https://github.com/kelseyhightower/compose2kube

您可以创build撰写文件

web: image: nginx ports: - "80" - "443" database: image: postgres ports: - "5432" cache: image: memcached ports: - "11211" 

然后使用该工具将其转换为kubernetes objetcs

 compose2kube -compose-file docker-compose.yml -output-dir output 

哪个会创build这些文件

 output/cache-rc.yaml output/database-rc.yaml output/web-rc.yaml 

那么你可以使用kubectl将它们应用到kubernetes

如果你有现有的dockercomposer php文件,你可以看看Kompose项目https://github.com/kubernetes-incubator/kompose

Kubernetes当然有自己的yaml(如“ 部署应用程序 ”所示)

但是正如“ Docker集群工具比较:Kubernetes VS Docker Swarm ”一样, Docker并没有被写入,而是拥有自己的系统。

你可以使用docker-compose来启动Kubernetes,如“ vyshane/kid ”所示:它kubectl脚本中的一些kubectl命令cli (可以进行版本化)。