Docker for mac 使用说明

Docker for mac 使用说明

从2015年开始接触到docker到现在,使用了不少docker管理工具,从最早的boot2docker 到docker toolbox再到现在的docker for mac,发现docker是越来越难用了(后面说)……

我记得第一次使用docker时同时装了boot2docker, docker toolbox两个工具。由于使用习惯问题,更多使用的是boot2docker,直接在后台用命令起动。

记得那时要用docker得办三件事儿:

一是起动boot2docker

$ boot2docker start

二是对初始化

$ boot2docker shellinit

第三步才是运行docker

$ docker run -d -P --name web nginx

做第三步前还得设置环境变量……麻烦,但照提示来,运行没有问题!!

docker toolbox用的少,已经不记得那时长什么样子了,但印象中它们都依赖VirtualBox。

Docker for Mac does not use VirtualBox, but rather HyperKit, a lightweight macOS virtualization solution built on top of Hypervisor.framework in macOS 10.10 Yosemite and higher.

docker for mac 已经大大减化了配置流程,底层也去掉了对VirtualBox的依赖,换成了HyperKit。docker for mac以标准的mac app形式存在,内部还是包含:docker,docker-compose,docker-machine这三个东西,但VM使用已经不在依赖docker-machine了,直接由docker-for-mac(在mac电脑里对应的是docker.app,使用前起动即可)接管守护,对比boot2docker省掉了第一步起动和第二步的初始化。有兴趣可以自行参考官方说明 Docker for Mac vs. Docker Toolbox

docker toolbox 在docker官网product里面是推荐的,主要是考虑到macOS 10.10之前的用户,因为系统没有集成Hypervisor.framework, 如果macOS大于10.10,官方推荐docker for mac,all in ONE,很方便。

最近使用docker最困扰的是无法pull image,在网上找了很多方法,最后还是选择结合shadowsocks翻墙pull,具体方法如下:

1 .安装polipo

brew install polipo

2.通过polipo生成shadowsocks的http代理(重点)

shadowsocks开全局,以为可以pull docker了,但跟本不是那么回事儿……经查shadowsocks是socks5的协议,只有支持这个协议的软件才能使用它的代理功能,比如dropbox就可以设置socks5……docker走的是http和https协议,所以要想办法把socks5转成http,这时就要用到polipo工具了

polipo socksParentProxy=127.0.0.1:1080 proxyAddress="192.168.0.102"

其中127.0.0.1:1080是socks5的端口,192.168.0.102是mac的地址。显示下面的日志就算代理起动成功。

Established listening socket on port 8123.

这个窗口不要关闭!

可以用http://192.168.0.102:8123https://192.168.0.102:8123来代理上网了。

测试一下:

➜  ~ curl ip.gs
当前 IP:140.207.223.158 来自:中国上海上海 联通
➜  ~ export http_proxy=http://localhost:8123
➜  ~ curl ip.gs
当前 IP:45.76.65.36 来自:美国新泽西州皮斯卡特维 choopa.com
➜  ~ unset http_proxy
➜  ~ curl ip.gs
当前 IP:140.207.223.158 来自:中国上海上海 联通

3.配置docker for mac

点docker起动后的图标,在“preferences”里面选proxies,如下图配置即可
screenshot.png

现在可以愉快的docker pull 了

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/100427.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 网页内容变化监控提醒

    网页内容变化监控提醒有很多的人都需要查看网站的变化并且提醒,比如说股票的股市,商品的价格等等。这次案例以实时监控天气温度来简要的说明监控方法,监控的时广州的实时气温,网站会不断的更新当前的气温。首先打开软件网页自动操作通用工具PageOperator,在任务菜单中新建一个刷新操作。点击添加按钮,并把网址输入到对应的地方。点击自动获取,获取网站的编码方案,点击添加,…

    2022年7月17日
    45
  • word2007在试图打开文件时遇到错误解决方法「建议收藏」

    word2007在试图打开文件时遇到错误解决方法「建议收藏」当您尝试在MicrosoftOfficeWord2007中打开.docx文件时,该文件打不开。此外,您还会收到以下错误消息:Word在试图打开文件时遇到错误。请尝试下列方法:*检查文档或驱动器的文件权限。*确保有足够的内存和磁盘空间。*用文本恢复转换器打开文件。原因发生此问题的原因是由于恢复文档被保存为扩展名为.docx的自动保存文档(*.asd)文件。…

    2022年5月30日
    487
  • 算术运算符——整数运算

    算术运算符——整数运算

    2022年3月12日
    35
  • 通关必读—linux面试题(带答案)

    通关必读—linux面试题(带答案)答案linux考试题1.在登录Linux时,一个具有唯一进程ID号的shell将被调用,这个ID是什么(b)A.NIDB.PIDC.UIDC.CID答:w命令查看用户tty终端信息ps-ef|greppts/02.下面那个用户存放用户密码信息(b)A./bootB./etcC./varD./dev3.用于自动补全功能时,输入命令或文件的前1个或后几个字母按什么键(b…

    2022年6月5日
    275
  • RewriteCond RewriteRule

    RewriteCond RewriteRule##RulesforTRandEScountrysitesRewriteCond%{REQUEST_URI}^/(tr|es)$[NC]RewriteRule^(.*)https://xx.com[L,R=301]####Rulesfortheoldalias/sam/*RewriteRule^pp/(.*)/xx-p/$1…

    2022年5月27日
    27
  • yii2 rbac权限管理学习笔记

    yii2 rbac权限管理学习笔记

    2021年9月15日
    60

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号