使用Docker Machine

Docker Machine 官方的解释是:
Docker Machine是一个工具,用来在虚拟主机上安装Docker Engine,并使用 docker-machine命令来管理这些虚拟主机。
官方给的Docker Machine的具体使用场景:
1. 你目前只有一个老版本的MacOSX(比如10.10.2)或者Windows系统,想在上边运行docker。
2. 想在远程系统上创建Docker主机。
Docker Engine 主要用来接收和处理docker命令请求的。
Docker Machine则主要用来管理 docker化的 host
安装
在 Linux 上的也安装十分简单,从 官方 GitHub Release 处直接下载编译好的二进制文件即可。
例如,在 Linux 64 位系统上直接下载对应的二进制包。
| 1 | $ sudo curl -L https://github.com/docker/machine/releases/download/v0.13.0/docker-machine-`uname -s`-`uname -m` > /usr/local/bin/docker-machine | 
完成后,查看版本信息。
| 1 | $ docker-machine -v | 
常用命令
| 1 | Commands: | 
示例
| 1 | # 创建 | 
远程主机安装 Docker
通过 docker-machine 命令我们可以轻松的在远程主机上安装 Docker。
前提条件
在使用 docker-machine 进行远程安装前我们需要做一些准备工作:
- 在目标主机上创建一个用户并加入sudo 组
- 为该用户设置 sudo 操作不需要输入密码
- 把本地用户的 ssh public key 添加到目标主机上
- 比如我们要在远程主机上添加一个名为 nick 的用户并加入 sudo 组: - 1 
 2- $ sudo adduser nick 
 $ sudo usermod -a -G sudo nick
- 然后设置 sudo 操作不需要输入密码: - sudo visudo把下面一行内容添加到文档的最后并保存文件:- 1 - nick ALL=(ALL:ALL) NOPASSWD: ALL 
- 把本地用户的 ssh public key 添加到目标主机上: - 1 - ssh-copy-id -i ~/.ssh/id_rsa.pub nick@xxx.xxx.xxx.xxx 
- 安装 
 本地运行命令:- 1 
 2
 3
 4
 5- $ docker-machine create -d generic \ 
 --generic-ip-address=xxx.xxx.xxx.xxx \
 --generic-ssh-user=nick \
 --generic-ssh-key ~/.ssh/id_rsa \
 krdevdb- 说明: 
 create 命令本是要创建虚拟主机并安装 Docker,因为本例中的目标主机已经存在,所以仅安装 Docker。
 -d 是 –driver 的简写形式,主要用来指定使用什么驱动程序来创建目标主机。Docker Machine 支持在云服务器上创建主机,就是靠使用不同的驱动来实现了。本例中使用 generic 就可以了。
 –generic 开头的三个参数主要是指定操作的目标主机和使用的账户。
 最后一个参数 krdevdb 是虚拟机的名称,Docker Machine 会用它来设置目标主机的名称。
- 检查 - 1 - $ docker-machine ls 
通过本地的客户端操作远程主机
| 1 | eval $(docker-machine env krdevdb) | 
参考文档https://yeasy.gitbooks.io/docker_practice/machine/install.html 
