开始使用Docker(在OS X下)

如果你想在OS X上尝试Docker,但是又觉得安装虚拟机什么的太麻烦了,那么你可以考虑下Docker Toolbox

安装Docker Toolbox

虽然官方提供了下载链接,但是我依然决定使用Homebrew Cask来安装Docker Toolbox:

brew cask install dockertoolbox

当然,如果下载特别慢的话,可以使用ProxyChains-NG来代理下。 安装结束后,VritualBox也被当作依赖安装了。(但是我推荐再安装virtualbox-extension-pack:brew cask install virtualbox-extension-pack )

创建虚拟机

接下来就要为所有的docker容器创建一个虚拟机了:

docker-machine create –driver virtualbox –virtualbox-hostonly-cidr “192.168.125.1/24” default

--driver virtualbox 表示使用VirtualBox来创建虚拟机;--virtualbox-hostonly-cidr “192.168.125.1/24” 表示使用192.168.125.1/24网段(默认使用的是192.168.99.1/24网段,但是和newifi的默认网段重复了)。 可以添加--engine-registry-mirror http://.m.daocloud.io 来使用daocloud的registry mirror。

第一个docker命令

首先执行如下命令配置好docker依赖的环境变量:

eval $(docker-machine env default)

接下来,执行docker命令的时候就会直接获取虚拟机里面的docker信息了。 比如: docker info

如何访问容器

如果我们使用了虚拟机,那么该如何访问其中的容器呢? 比如我们运行nginx容器:

docker run -p 80 nginx

那么我们应该如何访问这个nginx容器呢? 首先,我们通过docker ps命令知道这个容器的80端口被映射到了32770端口,然后通过docker-machine ip default得知虚拟机ip: container info 然后,就可以直接通过这个ip和这个端口访问了,比如

curl 192.168.125.100:32770 -i

volume映射

volume 可以看到,直接使用-v参数将本地mac上的文件夹映射到docker中也是可以的。 后来具体查了下,是OS X上的/Users目录通过vboxfs挂载到虚拟机的/Users目录中,然后在容器创建的时候再挂载到容器内部。

Kitematic

你也可以通过Kitematic来管理容器: Screen Shot Kitematic 左侧为容器列表,右侧为推荐的image。

开始使用Docker(在OS X下)

https://robberphex.com/start-using-docker-macos/

作者

Robert Lu

发布于

2016-02-09

许可协议

评论