Docker现在有多火我这里就不说了,但是对于Mac用户来说,运行Docker一直都不是很舒心的事,从一开始的DOCKER TOOLBOX使用VirtualBox来运行一个linux虚拟机,然后在虚拟机上安装docker,将docker client的连接设置成虚拟机的docker服务地址,使用起来和在本地安装docker差不多,但需要安装VirtualBox、�虚拟机,这样总感觉不是太爽,并且占用系统空间较大(7G左右)。
目前官方推出了最新的DOCKER FOR MAC,号称“OS X native virtualization”,在文件系统、网络的使用上体验好了很多,但心里阴影也有不小的面积,因为我的Mac存储空间太小,才256G,随便装几个软件就告警,空间严重不足。
如何使用阿里云来运行Docker呢?借助Docker Machine,可以极大的简化安装Docker环境,我们只需要开发好一个阿里云的docker machine驱动,就可以通过一条命令行就完成docker运行环境的安装,配置好docker命令行工具后,和在本地使用一样Docker。
接下来就开始我们的干货之旅。
安装Docker �Machine
直接安装Docker Toolbox,默认会包括Machine一起安装,下载地址:https://www.docker.com/products/docker-toolbox。具体的安装过程就不说了,全是“下一步”。
安装Docker Machine Aliyun Drivier
目前Docker Machine默认的安装包里不包括aliyun的驱动,我们在开发云平台的时候开发了一个相应的驱动,详见:https://github.com/venusource/docker-machine-aliyun,详细的安装过程见github项目的ReadMe。这里就不详述了。
配置Docker Machine
在使用阿里云之前需要先配置阿里云的ACCESS KEY ID和ACCESS KEY SECRET,将其导入系统环境变量。
export ECS_ACCESS_KEY_ID="your access key id"
export ECS_ACCESS_KEY_SECRET="your access key secret"
然后就可以直接使用了,执行如下命令,将会在阿里云上启动一个虚拟机,然后安装docker。
docker-machine create --driver=aliyun aliyuntest
如下图所示:
整个过程就是:
- 创建安全组
- 新建虚拟机ECS
- 配置SSH无密码访问
- 安装Docker
- 配置Docker ssl连接
整个过程会因为各种因素比较慢,安装docker过程中还会因为网络原因(你懂的)安装失败。如果报错的话,执行如下命令重试:
docker-machine regenerate-certs aliyuntest
如果一切都没问题的话,执行如下命令更换本地docker client的相关连接和认证信息。
eval "$(docker-machine env aliyuntest)"
现在你就可以和正常使用Docker一样了。执行如下命令试试hello-world吧:
docker run hello-world
执行如下图所示:
OK,是不是和在本地linux上使用docker一样?
阿里云可是按时计费的哦,使用完一定要把它删除,如果不删除你的银子没了可别来找我。
怎么样?感觉爽吧?至少我现在已经不在Mac本上跑Docker,全用docker machine启阿里云的ECS。可以在我们的命令行后面加上--region-id = us-west-1,这样我们启动的阿里云ECS是美国机房的,下载各种docker镜像超级快。
最后再告诉一个快速登录阿里云服务器的命令:
docker-machine ssh aliyuntest
是不是很方便,都不用输入密码的。
这台机器可以成为您在云端的开发用机了,特别适用于像我这样的使用mac的linux开发人员。
看完文章有收获的话记得打赏、关注、点赞哦!
CJ推荐:
IOS APP开发常用的几个命令行工具
使用GitLab来实现IOS项目的持续集成CI
互联网+时代的全新软件(产品)交付模式
程序员的编辑器-VIM(爱就是爱)
向开源社区贡献您的代码
在github上写博客
DevOps是什么东东?
js依赖管理工具bower
JS模块化编程-requirejs