前言

一直以为mac是支持Docker的,等到真想装一个的时候才发现,mac内核居然不支持!

幸好有解决方案,可以使用boot2docker(貌似现在是docker-machine了,不过看下载的映像还是boot2docker.iso),

其原理是让docker运行在一个虚拟机中,mac宿主机上运行docker的client。这个虚拟机十分的小,给你的感觉就像直接在宿主机上一样。

安装

boot2docker是将docker daemon运行在虚拟机中的,所以系统中必须要有虚拟机环境:VMware、virtualbox、parallels都可以,必须要有,且使用的工具包有所不同。

本人习惯于使用parallels desktop,机子上本来装着就有,所以优先选择parallels环境。

使用parallels环境可以不用安装boot2docker,直接安装docker-machine-parallels即可。

项目地址:https://github.com/Parallels/docker-machine-parallels

使用Homebrew先查看下都有哪些软件:

selflydeMacBook-Pro:~ liyd$ brew search docker
boot2docker                         docker-cloud                        docker-gen                          docker-machine-driver-xhyve         docker-swarm
docker ✔                            docker-compose                      docker-machine ✔                    docker-machine-parallels ✔
homebrew/completions/boot2docker-completion                  homebrew/versions/docker110                                  Caskroom/cask/docker
homebrew/completions/docker-completion                       homebrew/versions/docker171                                  Caskroom/cask/dockertoolbox
homebrew/completions/docker-compose-completion               Caskroom/cask/boot2docker-status                             Caskroom/versions/boot2docker-status-beta
homebrew/completions/docker-machine-completion               Caskroom/cask/boot2docker
homebrew/emacs/dockerfile-mode                               Caskroom/cask/docker-compose
selflydeMacBook-Pro:~ liyd$

这里我们只需要安装两个软件包:docker和docker-machine-parallels,其中docker-machine会成为docker-machine-parallels的依赖而自动进行安装。

可以看到上面这三个软件包后面都有个勾,因为我本机已经安装过了。

selflydeMacBook-Pro:~ liyd$ brew install docker-machine-parallels
selflydeMacBook-Pro:~ liyd$ brew install docker

创建虚拟机

只需要一个命令,

selflydeMacBook-Pro:~ liyd$ docker-machine create --driver=parallels prl-dev

当然还有一些其它的参数,具体可以看项目主页上的说明。

第一次创建会比较慢,因为要下载boot2docker.iso

如果提示下载失败,可以自行到github上去下载后,放到~/.docker/machine/cache目录下。

使用

创建虚拟机后,会提示你使用docker-machine env命令,然后再用eval命令:

selflydeMacBook-Pro:~ liyd$ docker-machine env prl-dev
export DOCKER_TLS_VERIFY="1"
export DOCKER_HOST="tcp://10.211.55.11:2376"
export DOCKER_CERT_PATH="/Users/liyd/.docker/machine/machines/prl-dev"
export DOCKER_MACHINE_NAME="prl-dev"
# Run this command to configure your shell:
# eval $(docker-machine env prl-dev)
selflydeMacBook-Pro:~ liyd$ eval $(docker-machine env prl-dev)

至此,就可以像平常使用docker一样来自由发挥了!

docker-machine还有一些其它非常有用的命令,可以自行在命令行查看:

active   Print which machine is active
config   Print the connection config for machine
create   Create a machine
env        Display the commands to set up the environment for the Docker client
inspect     Inspect information about a machine
ip       Get the IP address of a machine
kill         Kill a machine
ls       List machines
provision     Re-provision existing machines
regenerate-certs    Regenerate TLS Certificates for a machine
restart     Restart a machine
rm       Remove a machine
ssh        Log into or run a command on a machine with SSH.
scp        Copy files between machines
start      Start a machine
status   Get the status of a machine
stop         Stop a machine
upgrade     Upgrade a machine to the latest version of Docker
url        Get the URL of a machine
version     Show the Docker Machine version or a machine docker version
help         Shows a list of commands or help for one command
你可能感兴趣的内容
Docker安全部署的17条建议 收藏,2916 浏览
网络工程师眼中的docker 收藏,3311 浏览
1条评论
poijklmnb098 1年前

Very Good Mac下安装使用Docker

selfly

交流QQ群:32261424
Owner