@levinzhang
2018-08-24T06:50:57.000000Z
字数 1574
阅读 530
by
Docker在其stable频道发布了Windows和Mac平台下Docker Desktop对Kubernetes的支持。Kubernetes也得到了Docker Enterprise的支持,允许我们将相同的镜像部署到两个系统中。它还包括对Docker Compose的支持,允许我们使用compose文件部署到Kubernetes,可以将其作为kubeconfig文件的替代方案。
Docker在其stable频道发布了Windows和Mac平台下Docker Desktop对Kubernetes的支持。Kubernetes也得到了Docker Enterprise的支持,允许我们将相同的镜像部署到两个系统中。它还包括对Docker Compose的支持,允许我们使用compose文件部署到Kubernetes,可以将其作为kubeconfig文件的替代方案。
随着1.10.3版本的发布,面向macOS和Windows 10平台的Docker Desktop将会添加对Kubernetes的完整支持。Kubernetes容器运行在与Docker Desktop托管Docker容器相同的Linux VM上。这样的话,能够为我们提供Docker Desktop已有的特性集,包括自动将本地机器的端口映射到容器中,从而允许从主机中进行浏览。Kubernetes服务器作为单节点集群运行,目前是不能配置的。
Docker Desktop包含了kubectl
,允许我们通过命令行与集群进行交互。例如,如果你已经有一个Kubernetes YAML文件的话,那么可以通过下面的命令进行部署:
docker-compose build
kubectl apply -f /path/to/kube-deployment.yml
另外,Docker Compose与Kubernetes进行了完整的集成,也可以用来进行部署:
docker stack deploy -c /path/to/docker-compose.yml mystack
通过使用Docker Compose,我们可以将部署栈划分为Kubernetes和Swarm,或者在它们之间进行切换。建议不要同时在Kubernetes和Swarm模式中部署相同的映像,因为这会导致端口和服务名称的冲突。
Docker Enterprise同样包含了对Kubernetes的完整支持。这样的话,允许我们在本地使用Docker Desktop进行开发和测试,然后将完全相同的Docker容器化应用部署到生产环境中。Docker Desktop是一个官方认证的Kubernetes分发版,并且已经基于CNCF Conformance测试套件进行了测试。
Minikube是在本地运行Kubernetes的另一个替代方案。Docker的产品主管Gareth Rushgrove对比了Minikube和Docker Desktop的使用场景:
我认为Minikube非常适合使用Kubernetes的人,而Docker Desktop非常适合那些构建应用程序并在其上运行的人。Minikube有很多配置项,包括启动特定版本的Kubernetes、有用addon、不同的运行时等等。Docker Desktop的设计更多是在后台运行,单击一个按钮,您就有了开发所需的Kubernetes API。
Docker Desktop可以在Windows和Mac平台下使用。Docker社区论坛可以进行一些通用讨论和求助(Mac或Windows)。Docker还能够通过Github(Mac或Windows)接受bug和反馈。