docker管理工具之machine
背景
現如今,不同云平臺上安裝docker的流程都不一樣,這樣對于用戶部署docker主機就非常復雜。為了解決這一問題,出現了machine項目 (https://github.com/docker/machine),通過docker-machine可以在不同平臺上(例如Azure、 Rackspace、Openstack、Google等云平臺)創建docker主機。
是什么?
Machine是一個簡化docker安裝的命令行工具,其可以在不同平臺上創建包含docker的實例。
現狀?
Machine當前處在beta版本,支持以下平臺:
Amazon Web Services
Digital Ocean
Google Compute Engine
IBM Softlayer
Microsoft Azure
Microsoft Hyper-V
Openstack
Rackspace
Oracle VirtualBox
VMware Fusion
VMware vCloud Air
VMware vSphere
怎么用?
首先安裝docker-machine命令行工具,可以從machine對應的github上下載(https://github.com /docker/machine/releases),下載文件是一個二進制可執行呈現,不需要任何依賴,直接改名為docker-machine即可。
docker-machine創建docker主機的過程:
(1)調用create命令可創建一個docker主機
$ 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
說明:在virtualbox創建一個docker虛擬機,也可以指定別的driver
(2)通過ls命令可查看當前已安裝的主機
$ docker-machine ls NAME ACTIVE DRIVER STATE URL dev * virtualbox Running tcp://192.168.99.100:2376
(3)可以通過docker-machine config dev查看docker client連接信息
$ docker-machine config dev --tls --tlscacert=/Users/ehazlett/.docker/machines/dev/ca.pem --tlscert=/Users/ehazlett/.docker/machines/dev/cert.pem --tlskey=/Users/ehazlett/.docker/machines/dev/key.pem -H tcp://192.168.99.103:2376
通過此命令可以構造docker相關命令,例如:
$ docker $(docker-machine config dev) run busybox echo hello world
(4)其他命令:
info(查看信息) stop(停止主機) kill(強制停止) start(啟用主機)
restart(重啟主機) rm(刪除主機) ssh(登陸主機) url(獲取docker的url) upgrade(升級docker)
參考:
http://docs.docker.com/machine
https://github.com/docker/machine