Docker CE/EE 原生支持Kubernetes
在今天的 DockerCon EU (2017) 上,Solomon 宣布 Docker 將原生支持 Kubernetes,也就是說 Kubernetes 將和 Swarm 一樣作為 Docker 平台的編排管理系統。這包括 Docker EE、Docker CE 以及 Docker for Mac/Windows 等全平台的支持。
Docker for Mac/Windows
Docker for Mac/Windows 將原生支持把基於 docker-compose/swarm 的應用部署到本地的 Kubernetes 集群中,docker swarm 和 Kubernetes 共享相同的鏡像、存儲卷以及容器(也就是兩種調度系統同時管理同一套容器)。這有助於簡化容器應用的開發、構建、測試以及部署。
為了實現這個目標,Docker 基於 Kubernetes Custom Resources 和 API server aggregation 將 Docker Compose apps 部署為原生的 Kubernetes Pods/Services。
這裡是一個 Docker for Mac 的示例視頻,非常有趣。
Docker EE
在創建 Stack 的時候可以選擇 Swarm 或者 Kubernetes:
並且還可以在 Shared Resources 除查看共享的資源:
當然,部署也很簡單,內置在 Docker EE 中,swarm 和 Kubernetes 共享相同的 Node:
這裡這裡也有一個 Docker EE + Kubernetes 的示例視頻。
Docker CE/Moby
Moby 與 Kubernetes 的集成通過一系列的開源項目來實現:
- containerd 和 cri-containerd,可以參考Kubernetes The Hard Way查看使用方法
- LinuxKit:支持構建Kubernetes鏡像
- InfraKit:支持Kubernetes Flavor
- libnetwork:增加CNI的支持 https://github.com/docker/libnetwork/pull/1978
- Notary將會貢獻給CNCF
- libentitlement將提供高級安全介面
遺憾的是,該功能暫時還無法體驗,需要等到Docker下一個release。想要提前預覽的同學可以點擊https://beta.docker.com/註冊預覽版。
推薦閱讀:
※Docker、Kubernetes 和 Apache Mesos 對比中的一些誤區
※Kubernetes v1.7新特性解析-本地數據卷
※使用Helm管理kubernetes原生應用
TAG:Docker | Kubernetes | 容器 |