开发者社区> yuxiao.lxy> 正文
阿里云
为了无法计算的价值
打开APP
阿里云APP内打开

mac下使用docker-for-mac代替docker-toolbox

简介: 新的docker fro mac简化mac下使用docker的流程,更加方便。
+关注继续查看

为什么使用Docker for Mac

  • 启动时不需要再使用dokcer-machine设定启动的默认的环境,省去了使用virtualbox的过程;
  • 享受和在linux下使用docker一样的体验. 总之,新工具更方便!

mac下启动docker的工具发展

  • 最开始使用boot2docker
  • 再到Docker Toolbox
  • 最近新出的 Docker for Mac

如何配置和使用Docker for Mac

基础配置

使用docker for mac基本的机器要求

1. Mac must be a 2010 or newer model, with Intel’s hardware support for memory management unit (MMU) virtualization; i.e., Extended Page Tables (EPT)
2. OS X 10.10.3 Yosemite or newer
3. At least 4GB of RAM
4. VirtualBox prior to version 4.3.30 must NOT be installed (it is incompatible with Docker for Mac)

安装docker

使用brew安装docker,最新版本的docker为1.12.0-rc2

brew install docker

也可以升级docker

brew update
brew upgrade docker

第一次在mac上使用docker

详见这个步骤

从boot2docker或者docker toolbox工具升级到Docker for Mac

注意:安装之前请先确定是否导入之前的images配置,新装docker for mac之后会把之前的docker image自动同步,这样有可能导致磁盘空间不足,第一步可以先删除不要的docker images。

  1. 卸载virtualbox : 进入应用程序->删除virtualbox
  2. 安装docker for mac并启动,详见这里
  3. 执行docker psdocker info查看启动情况,如果正常输出,则启动成功
  4. 如果有以下情况,可以这样处理

    • 如果表现出卡死没有输出的情况,表明docker未启动成功:可能是未卸载virtualbox;
    • 如果报错如下

      An error occurred trying to connect: Get https://192.168.xx.xx:2376/v1.18/containers/        json: remote error: bad certificate

      解决方案为:

      • 输入指令env | grep DOCKER,如果有如下输入;
      DOCKER_HOST=tcp://192.168.99.100:2376
      DOCKER_MACHINE_NAME=default
      DOCKER_TLS_VERIFY=1
      DOCKER_CERT_PATH=/Users/victoriabialas/.docker/machine/machines/default
      • 执行
      unset DOCKER_TLS_VERIFY
      unset DOCKER_CERT_PATH
      unset DOCKER_MACHINE_NAME
      unset DOCKER_HOST
      • 再执行
      $docker info
      Containers: 15
      Running: 0
      Paused: 0
      Stopped: 15
      Images: 85
      ...

总结

  • 新发布的docker for mac工具简化了启动docker的配置,如果之前使用了boot2docker或者docker toolbox,由于两者使用的虚拟机不同,docker-for-mac工具不兼容之前的虚拟机,所以在更新工具时需要清除之前的配置包括卸载虚拟机和修改环境变量等等。
  • 具体的两者的工具的比较详见这里.

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
四位一体水溶交融,Docker一拖三Tornado6.2 + Nginx + Supervisord非阻塞负载均衡容器式部署实践
容器,又见容器。Docker容器的最主要优点就在于它们是可移植的。一套服务,其所有的依赖关系可以捆绑到一个独立于Linux内核、平台分布或部署模型的主机版本的单个容器中。此容器可以传输到另一台运行Docker的主机上,并且在没有兼容性问题的情况下执行。而传统的微服务架构会将各个服务单独封装为容器,虽然微服务容器化环境能够在给定数量的基础架构内实现更高的工作负载密度,但是,在整个生产环境中创建、监视和销毁的容器需求总量呈指数级增长,从而显著增加了基于容器管理环境的复杂性。
0 0
Win10系统下基于Docker构建Appium容器连接Android模拟器Genymotion完成移动端Python自动化测试
Python自动化,大概也许或者是今年最具热度的话题之一了。七月流火,招聘市场上对于Python自动化的追捧热度仍未消减,那么Python自动化到底能帮我们做些什么呢? 第一,Python自动化可以避免熟练工种的重复工作,对于功能相对完整和成熟的软件,每发布一个新的版本,无论是大版本还是小版本,其中大部分功能和界面都几乎和上一个版本相似或完全相同,但所谓向上兼容,你不能因为新功能的产生而不对老版本功能进行测试工作,而这些老功能又在上一个版本上线时测过,所以这部分功能特别适合于自动化测试,从而可以让测试达到测试每个特征的目的。
0 0
浩若烟海事半功倍|利用Docker容器技术构建自动化分布式web测试集群Selenium Grid
“世界上有那么多城市,城市里有那么多的酒馆,可她,却偏偏走进了我的.....”,这是电影《卡萨布拉卡》中的一句著名独白,投射到现实生活中,与之类似的情况不胜枚举,这世界上有那么多的系统,系统中有那么多的浏览器,在只有一台测试机的前提下,难道我们只能排队一个一个地做兼容性测试吗?有没有效率更高的方法呢?为此我们提出一个更高效的解决方案:使用Docker+Selenium Grid。
0 0
5个除了docker之外的轻量级容器
5个除了docker之外的轻量级容器
0 0
【云原生】Docker容器数据卷
【云原生】Docker容器数据卷
0 0
Jenkins+GitLab自动化部署到Docker容器
Jenkins+GitLab自动化部署到Docker容器
0 0
docker容器内启动mysql服务,报错:New main PID 99 does not belong to service, and PID file is not owned by root.
docker容器内启动mysql服务,报错:New main PID 99 does not belong to service, and PID file is not owned by root.
0 0
docker容器设置镜像加速实战
docker容器设置镜像加速实战
0 0
docker容器设置ssh远程链接实战
docker容器设置ssh远程链接实战
0 0
docker18.09 快速添加harbor仓库地址的方法(不是安装harbor)和修改镜像容器存放位置(初始化安装docker时,不是迁移容器镜像)...
docker18.09 快速添加harbor仓库地址的方法(不是安装harbor)和修改镜像容器存放位置(初始化安装docker时,不是迁移容器镜像)...
0 0
+关注
文章
问答
文章排行榜
最热
最新
相关电子书
更多
我的Docker:Docker插件机制详解
立即下载
我的Docker-Docker插件机制详解
立即下载
What’s New in Docker
立即下载