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)
上一篇 2021年5月12日 上午10:00
下一篇 2021年5月12日 上午11:00


相关推荐

  • 第四章:java 多线程volatile关键字 atomic类学习 java 原子性讲解,变量可见与不可见说明

    第四章:java 多线程volatile关键字 atomic类学习 java 原子性讲解,变量可见与不可见说明第四章:java 多线程volatile关键字 atomic类学习 java 原子性讲解,变量可见与不可见说明

    2022年4月23日
    44
  • 向量叉乘的右手螺旋定则

    向量叉乘的右手螺旋定则转自 https www cnblogs com FWFC p 9026082 htmlaXb 右手大拇指指向 a 正向 食指指向 b 正向 让中指与大拇指食指所在平面垂直 中指所指方向就是 aXb 的方向

    2026年3月20日
    2
  • 硬核!用Mac Mini翻新了一台12年前的电脑

    硬核!用Mac Mini翻新了一台12年前的电脑本文转载自差评君有这么一位差友,不知道从哪儿加到了托尼的微信,都还没打招呼呢,上来就向我展现了他最近的硬核杰作。他将M1款的MacMini塞进了09年款27寸iMac,并把详细过程一股脑发给了我。尽管不清楚这样做有什么意义,但确实是做的很硬核,手法也相当专业,简单来说,他愣是把一台新电脑,塞进了一台老电脑。。。整理了一下他发过来的内容,大致弄清了这事儿的前因后果。把M1款的Macmini,塞进了09年iMac的想法,是他在看到了油管上有一位叫L…

    2022年5月30日
    90
  • java中级考试 考点_java中级面试题的考点「建议收藏」

    java中级考试 考点_java中级面试题的考点「建议收藏」在我们对java有一定的基础学习后,能力再往上升一些就是中级。对于初级和中级来说,后者除了对于基础java内容把握能力强外,在一些知识点的比较分析和原理解剖上有所理解能力。本篇就java中级面试题进行了整理,挑出了一些典型的高频试题,都来看看具体内容吧。1.比较接口和抽象类的语法区别(1)抽象类可以有构造方法,接口中不能有构造方法。(2)抽象类中可以有普通成员变量,接口中没有普通成员变量!!!(注…

    2022年10月10日
    5
  • Windows11设置共享打印机

    Windows11设置共享打印机1 需要一台可以打印机 改打印机可以使用线缆或者其他通讯方式连接到一台需要共享的设备 2 需要一台安装 win11 的设备 通过上面的方式连接到打印机 并能正常的进行打印测试具备 1 和 2 的基础条件后 我们就可以愉快的设置共享打印机拉麻烦按照下面的步骤进行打印机的设置 1 打开 win11 的打印机机和扫描设置 2 选择要共享的打印机 打开打印机属性 进行打印机共享 3 从控制面板打开 控制面板 所有控制面板项 网络和共享中心 高级共享设置 4 查看公共共享打印机的 ip 地址 使用命令 5 如果网卡是无线

    2026年3月18日
    1
  • mysql 往表中某个字段的字符串后追加字符串[通俗易懂]

    mysql 往表中某个字段的字符串后追加字符串

    2022年2月20日
    46

发表回复

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

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