您现在的位置是:首页 > 文章详情

使用Docker Machine管理阿里云ECS

日期:2016-03-03点击:566

Docker Machine是一个docker管理工具,它解决了docker的两个问题:

  1. docker只能运行在Linux上
  2. docker只能管理运行本机的docker镜像。

本质上docker-machine是一个虚拟机管理工具,它通过创建一个安装好docker的虚拟机(支持VirtualBox,DigitalOcean,EC2等),并设置对应的环境变量(DOCKER_HOST,DOCKER_MACHINE_NAME等),使得本地的docker工具获得透明远程操作虚拟机的能力。从而使本身不支持docker的Windows和Mac系统能够直接使用docker命令。

docker-machine的安装可以通过docker-toolbox (支持Windows和Mac),如果是Mac电脑,推荐直接使用brew安装。

使用docker-machine创建一台虚拟机非常简单:

#创建一台名为vb的本地Virtualbox虚拟机 docker-machine create --driver virtualbox vb #创建一台名为do的Digitalocean远程服务器 export DIGITALOCEAN_ACCESS_TOKEN=xxxxx #从digitalocean的管理面板获取的token export DIGITALOCEAN_SIZE="512mb" #内存512mb,1gb类似 export DIGITALOCEAN_IMAGE="ubuntu-14-04-x64" #系统Ubuntu 14.04 export DIGITALOCEAN_REGION="sgp1" #区域新加坡 docker-machine create --driver digitalocean do 

可通过docker-machine ls查看当前所有的虚拟机,docker-machine ssh vb可ssh到指定虚拟机,默认是一个精简的Linux系统。执行eval $(docker-machine env do)后,设置相关环境变量指向名为do的虚拟机,后续docker命令都会远程的在这台虚拟机上执行。如:这个时候执行docker images列出的是Digitalocean远程服务器上的docker镜像。

详细使用方法参考官方文档。

这里主要想讲的是docker-machine对阿里云的支持。

docker-machine不支持直接创建阿里云ECS,虽然有第三方插件,但我只想用docker-machine远程安装管理docker的功能,创建和删除ECS还是在阿里云的控制台操作比较放心:)

搜索一下文档,发现官方虽然没有阿里云driver但有一个generic driver,可通过ssh管理现有的机器,原则上所有的Linux机器都支持。

但有一个问题,docker-machine的ssh功能只支持基于Public Key认证,而阿里云创建虚拟机的时候只支持通过密码登录,所以还需配置一下Public Key,如果是Mac电脑:

export ECS_IP=0.0.0.0 #阿里云控制台创建的ecs的ip地址 brew install ssh-copy-id ssh-copy-id -i ~/.ssh/id_rsa.pub root@$ECS_IP ssh root@$ECS_IP #测试是否不用输入密码就登录了

公钥认证搞定后,创建阿里云的docker-machine

export ECS_IP=0.0.0.0 #阿里云控制台创建的ecs的ip地址 docker-machine create --driver generic --generic-ip-address=$ECS_IP aliyun-machine

也可在创建的时候加上阿里云的docker加速器地址

export ECS_IP=0.0.0.0 #阿里云控制台创建的ecs的ip地址 export ALI_MIRROR=https://0i912uv5.mirror.aliyuncs.com #从dev.aliyun.com后台获取你的专属加速器,这个是假的并不能用 docker-machine create --engine-registry-mirror=$ALI_MIRROR --driver generic --generic-ip-address=$ECS_IP aliyun-machine

创建完成后,记得eval $(docker-machine env aliyun-machine)一下,即可用本地的docker远程操作阿里云ECS上的docker镜像了。

最后,用docker-machine来玩玩这个微信机器人吧
http://dev.aliyun.com/detail.html?repoId=2859

原文链接:https://yq.aliyun.com/articles/7495
关注公众号

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。

持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。

转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。

文章评论

共有0条评论来说两句吧...

文章二维码

扫描即可查看该文章

点击排行

推荐阅读

最新文章