最近把玩了docker学了好多新东西,这里记录一下使用过程中遇到的一些问题。首先是安装的问题,我这里环境是macbook pro,mac osx 10.10.5。mac下安装很简单,只需要到官网下载个软件包,直接安装即可。但我这个在安装完后发现无法启动默认的机器。
个人原创,版权所有,转载请注明原文出处,并保留原文链接:
http://www.embbnux.com/2015/09/04/mac_osx_cannot_boot_docker_default_machine_problem_solve/
一 MAC下安装
mac的安装教程请见官网教程,我这里就不在重复叙述: Install docker on mac osx
需要说一下的是 docker本身并不支持mac osx,而只支持linux内核。为了在mac上运行docker,在使用的时候是启用了一个linux虚拟机。旧版本的docker使用的是boot2docker,而新版本使用的是docker machine.在安装的时候顺便一起安装了virtualbox用于虚拟机的运行。
二 问题的出现
安装完docker时,我试图启动docker:
$docker-machine create --driver virtualbox default $docker-machine start default exit status 1 Started machines may have new IP addresses. You may need to re-run the `docker-machine env` command. $docker version Client: Version: 1.8.1 API version: 1.20 Go version: go1.4.2 Git commit: d12ea79 Built: Thu Aug 13 02:49:29 UTC 2015 OS/Arch: darwin/amd64 Get http:///var/run/docker.sock/v1.20/version: dial unix /var/run/docker.sock: no such file or directory. * Are you trying to connect to a TLS-enabled daemon without TLS? * Is your docker daemon up and running?
直接使用docker自带的快速终端登录则提示:
default is not running. Please start this with docker-machine start default
看来是docker在mac上建的linux虚拟机没有启动
打开virtualbox直接点击启动,提示错误:
Failed to load VMMR0.r0 (VERR_VMM_SMAP_BUT_AC_CLEAR). 返回 代码: NS_ERROR_FAILURE (0x80004005) 组件: ConsoleWrap 界面: IConsole {872da645-4a9b-1727-bee2-5585105b9eed}
virtualbox我之前也一直在用,装了个其他系统玩,启动改系统也发现无法启动。看了下virtualbox发现版本变成了5.0,我之前一直用的4.3版本,看来在安装docker的时候被替换了。
三 问题的解决
google了下,发现确实是virtualbox的版本问题。docker machine和当前的virtualbox 5.0有问题。解决办法是安装最新测试版的virtualbox,或者使用旧版本的virtualbox.
这里我把virtualbox撤回到了4.3版本,发现问题解决了,哈哈
$ docker version Client: Version: 1.8.1 API version: 1.20 Go version: go1.4.2 Git commit: d12ea79 Built: Thu Aug 13 02:49:29 UTC 2015 OS/Arch: darwin/amd64 Server: Version: 1.8.1 API version: 1.20 Go version: go1.4.2 Git commit: d12ea79 Built: Thu Aug 13 02:49:29 UTC 2015 OS/Arch: linux/amd64 #启动hello world $docker run hello-world
好腻害哦