请使用docker-machine的单一命令来创建docker-host
使用docker-machine工具,可以简化在本地机器或云提供商上安装docker daemon的过程。
UNIX 系统下的环境
- docker
首先下载docker-machine二进制文件。您可以在https://docs.docker.com/machine/上找到。
确认版本(OS X)
$docker-machine -v
docker-machine_darwin version 0.1.0
需要本地安装(必须安装VirtualBox)。
$ docker-machine create --driver virtualbox dev
INFO[0000] Creating SSH key...
INFO[0000] Creating VirtualBox VM...
INFO[0007] Starting VirtualBox VM...
INFO[0007] Waiting for VM to start...
INFO[0038] "dev" has been created and is now the active machine
INFO[0038] To connect: docker $(docker-machine config dev) ps
将其安装到Google Cloud
$ docker-machine create -d google --google-zone asia-east1-b --google-project awesome-project dev-gcp
docker主机列表
$ docker-machine ls
NAME ACTIVE DRIVER STATE URL
dev * virtualbox Running tcp://192.168.99.103:2376
dev-gcp google Running tcp://104.155.212.199:2376
staging digitalocean Running tcp://100.236.50.118:2376
在dev-gcp上安装MongoDB容器(30秒内!)
$ docker `docker-machine config dev-gcp` run --name mongodb-3.0 -d mongo:latest
cc7aded0fb5439c6e54edd6234e06dd61c374248a9a42191f256d461d3c5xxxx
$ docker `docker-machine config dev` ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
cc7aded0fb54 mongo:latest "/entrypoint.sh mong 4 seconds ago Up 3 seconds 27017/tcp mongodb-3.0
将MongoDB容器化并通过命令行进行操作。
$ docker `docker-machine config dev-gcp` run --rm -t -i --name mongodb-3.0-cli mongo:latest /bin/bash
root@90c92aeb9f8f:/# mongo 172.17.0.5 // mongodb-containerの IPaddress
MongoDB shell version: 3.0.0
connecting to: 172.17.0.5/test
Welcome to the MongoDB shell.
For interactive help, type "help".
我将连接到创建的机器(docker-host).
$ docker-machine ssh dev-gcp
将机器移除。
$ docker-machine rm dev-gcp
INFO[0000] Deleting instance.
INFO[0001] Waiting for instance to delete.
INFO[0026] Deleting disk.
INFO[0027] Waiting for disk to delete.
虽然docker machine在生产环境中还没有被广泛使用,
但我认为它有很多可行之处。我们也在开发cloudinit。
我们已经在生产中使用它了。创建实例非常方便。