一、docker三剑客介绍
使用"三剑客"可以帮助我们解决docker host维护,多容器编排部署,多个docker host集群的各个难题。
docker-machine 创建虚拟机
我们知道docker使用了linux的内核技术(namespace 资源隔离,cgroup资源限制等),那么如果我想在windows或Mac系统上运行docker怎么办呢?
答案是借助虚拟机来实现,也就是说我在windows或Mac上运行一个linux虚拟机,再在虚拟机里运行docker。
docker-compose 进行容器编排
用容器运行一个服务,需要使用docker run命令。但如果我要运行多个服务呢?
假设我要运行一个web服务,还要运行一个db服务,那么是用一个容器运行,还是用多个容器运行呢?
一个容器运行多个服务会造成镜像的复杂度提高,docker倾向于一个容器运行一个应用。
那么复杂的架构就会需要很多的容器,并且需要它们之间有关联(容器之间的依赖和连接)就更复杂了。这个复杂的问题需要解决,这就涉及到了容器编排的问题了。
docker-compose就是可以做容器编排的小工具,它可以在一个文件中定义多个容器,只用一行命令就可以让—切就绪并运行。
拉取镜像如果网络有问题,排查思路是先看ip和网关,再看dns
docker-swarm 用多个docker host组成集群之后编排里面的容器