前言
Docker Machine 是 Docker 官提供的个具,它可以帮助我们在远程的机器上安装 Docker,并可以使用 docker-machine 命令来管理主机。它也可以集中管理所有的 docker 主机,比如快速的给 500 台服务器安装上 docker。本节将介绍 Docker Machine 的安装及使。
目录
一、安装
Docker Machine 是 Docker 官编排(Orchestration)项之,负责在多种平台上快速安装 Docker 环境,该项基于 Go 语实现,前在Github上进维护。 Docker Machine 可以在多种操作系统平台上安装,包括 Linux、macOS,以及 Windows。
macOS、Windows
Docker for Mac、Docker for Windows 带 docker-machine 进制包,安装之后即可使。查看版本信息。
$ docker-machine -v
docker-machine version 0.13.0, build 9ba6da9
Linux
在 Linux 上的也安装分简单,从官 GitHub Release处直接下载编译好的进制件即可。 例如, 在 Linux 64 位系统上直接下载对应的进制包。
$ sudo curl -L https://github.com/docker/machine/releases/download/v0.13.0/docker-machine-` uname -s`-`uname -m` > /usr/local/bin/docker-machine
$ sudo chmod +x /usr/local/bin/docker-machine
完成后,查看版本信息。
$ docker-machine -v
docker-machine version 0.13.0, build 9ba6da9
二、使用方法
Docker Machine 持多种后端驱动,包括虚拟机、本地主机和云平台等。
创建本地主机实例Virtualbox 驱动
使 virtualbox 类型的驱动,创建台 Docker 主机,命名为 test。
$ docker-machine create -d virtualbox test
你也可以在创建时加上如下参数,来配置主机或者主机上的 Docker。
–engine-opt dns=114.114.114.114配置 Docker 的默认 DNS
–engine-registry-mirror https://registry.docker-cn.com配置 Docker 的仓库镜像
–virtualbox-memory 2048 配置主机内存
–virtualbox-cpu-count 2 配置主机 CPU
更多参数请使 docker-machine create --driver virtualbox --help 命令查看。
$ docker-machine create -d generic
--generic-ip-address=123.59.188.19
--generic-ssh-user=root
--generic-ssh-key ~/.ssh/id_rsa
dev
MacOS xhyve 驱动
xhyve 驱动 GitHub: https://github.com/zchee/docker-machine-driver-xhyve,`xhyve`是`MacOS`上轻量化的虚拟引擎,使其创建的 Docker Machine 较 VirtualBox 驱动创建的运效率要。
$ brew install docker-machine-driver-xhyve
......
$ docker-machine create
-d xhyve
# --xhyve-boot2docker-url ~/.docker/machine/cache/boot2docker.iso
--engine-opt dns=114.114.114.114
--engine-registry-mirror https://registry.docker-cn.com
--xhyve-memory-size 2048
--xhyve-rawdisk
--xhyve-cpu-count 2
xhyve
注意:次创建时建议加上_–xhyve-boot2docker-url ~/.docker/machine/cache/boot2docker.iso_ 参数,避免每次创建时都从 GitHub 下载 ISO 镜像。
更多参数请使 docker-machine create --driver xhyve --help 命令查看。
Windows 10
Windows 10 安装 Docker for Windows 之后不能再安装 VirtualBox ,也就不能使 virtualbox 驱动来创建 Docker Machine,我们可以选择使 hyperv 驱动。
$ docker-machine create --driver hyperv vm
更多参数请使 docker-machine create --driver hyperv --help 命令查看。
三、使用介绍
创建好主机之后,查看主机
$ docker-machine ls
NAME ACTIVE DRIVER STATE URL SWARM DOCKER ERRORStest - virtualbox Running tcp://192.168.99.187:2376 v17.1 0.0-ce
创建主机成功后,可以通过 env 命令来让后续操作对象都是标主机。
$ docker-machine env test
后续根据提示在命令输命令之后就可以操作 test 主机。也可以通过 SSH 登录到主机。
$ docker-machine ssh test
docker@test:~$ docker --version
Docker version 17.10.0-ce, build f4ffd25
连接到主机之后你就可以在其上使 Docker 了。
官方支持驱动
通过 -d 选项可以选择持的驱动类型:
amazonec2
azure
digitalocean
exoscale
generic
hyperv
none
openstack
rackspace
softlayer
virtualbox
vmwarevcloudair
vmwarefusion
vmwarevsphere
操作命令
active 查看活跃的 Docker 主机
config 输出连接的配置信息
create 创建个 Docker 主机
env 显示连接某个主机需要的环境变量
inspect 输出主机更多信息
ip 获取主机地址
kill 停某个主机
ls 列出所有管理的主机
provision 重新设置个已存在的主机
regenerate-certs 为某个主机重新成 TLS 认证信息
restart 重启主机
rm 删除某台主机
ssh SSH 到主机上执命令
scp 在主机之间复制件
mount 挂载主机录到本地
start 启动个主机
status 查看主机状态
stop 停个主机
upgrade 更新主机 Docker 版本为最新
url 获取主机的 URL
version 输出 docker-machine 版本信息
help 输出帮助信息
每个命令,带有不同的参数,可以通过如下命令来查看具体的法:
$ docker-machine COMMAND --help