macos 怎么设置 docker 上的容器使用宿主机上的 http 代理?

2020-11-18 15:29:00 +08:00
 b0644170fc

我看官方手册说使用 -e,我的启动命令片段如下

-e HTTP_PROXY=http://host.docker.internal:6152

不管是host.docker.internal,还是 127.0.0.1 都不起作用

3160 次点击
所在节点    macOS
9 条回复
Tink
2020-11-18 15:33:50 +08:00
mac 不知道,但是 linux 你可以 ifconfig 查看网卡,找到 docker0 那个 IP,它跟你的容器是在一个网段的
gqbre
2020-11-18 15:40:44 +08:00
试试楼上的方法,不然就盲试 172.17.0.1 ?
mrjnamei
2020-11-18 17:45:36 +08:00
preference > proxies 设置,
设置完了重启
b0644170fc
2020-11-18 18:31:52 +08:00
@mrjnamei 这个只能作用与拉取 /上传镜像才有用吧。对于运行中的容器不起作用
loushizan
2020-11-18 18:40:08 +08:00
docker run --net=host 使用主机的网络
Kobayashi
2020-11-18 20:42:31 +08:00
环境变量 HTTP_PROXY 没用的,macOS 上 docker 实现和 Linux 下不一样:宿主不在容器所在的网络里,也就是说他们不互通。在 Linux 下 docker 没有这种问题。建议使用带 Tap/TUN 的增强代理模式,如 clashx pro, proxifier, surge,这样直接在宿主机上代理了 com.docker.vpnkit 进程。
foMM
2020-11-18 21:31:12 +08:00
从 docker 访问主机,host 是 docker.for.mac.localhost
b0644170fc
2020-11-19 10:44:17 +08:00
@loushizan 这个也没用吧。官网上有明确说明 主机网络不适用于 macos 和 windows.

https://docs.docker.com/network/host/
Kobayashi
2020-11-19 11:54:42 +08:00
@b0644170fc host 不大确定,我上边说的是 bridge 的情况。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/726722

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX