请问大佬, MacOS 下如何设置 docker 使用本地代理? - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
请不要在回答技术问题时复制粘贴 AI 生成的内容
lucasj
V2EX    程序员

请问大佬, MacOS 下如何设置 docker 使用本地代理?

  •  
  •   lucasj 2024-07-11 13:29:52 +08:00 4616 次点击
    这是一个创建于 471 天前的主题,其中的信息可能已经有所发展或是发生改变。

    尝试了很多方法,依然无法拉取镜像

    $ docker pull busybox Using default tag: latest latest: Pulling from library/busybox 213a27df5921: Retrying in 1 second error pulling image configuration: download failed after attempts=6: net/http: TLS handshake timeout 

    方法一:设置终端代理

    export https_proxy=http://127.0.0.1:7890 http_proxy=http://127.0.0.1:7890 all_proxy=socks5://127.0.0.1:7890 

    方法二:设置 daemon.json

    按照官方文档 Configure the daemon to use a proxy 修改 ~/.docker/daemon.json

    以上方法都不生效。

    22 条回复    2024-07-23 21:28:38 +08:00
    user100saysth
        1
    user100saysth  
       2024-07-11 13:33:41 +08:00   1
    前几天弄过 centos7 的,供参考
    docker 配置代理------
    sudo mkdir -p /etc/systemd/system/docker.service.d
    984 sudo touch /etc/systemd/system/docker.service.d/proxy.conf
    985 vi /etc/systemd/system/docker.service.d/proxy.conf
    ```
    [Service]
    EnvirOnment="HTTP_PROXY=http://localhost:7890/"
    EnvirOnment="HTTPS_PROXY=http://localhost:7890/"
    EnvirOnment="NO_PROXY=localhost,127.0.0.1,.example.com"
    ```

    sudo systemctl daemon-reload
    sudo systemctl restart docker
    vhui
        2
    vhui  
       2024-07-11 13:37:05 +08:00
    xR13zp0h67njQr2S
        3
    xR13zp0h67njQr2S  
       2024-07-11 13:37:38 +08:00
    docker desktop -》 setting -》 resources -》 proxies
    xR13zp0h67njQr2S
        4
    xR13zp0h67njQr2S  
       2024-07-11 13:40:39 +08:00
    zhuisui
        5
    zhuisui  
       2024-07-11 13:43:09 +08:00
    修改 daemon.json 法肯定是有用的
    xubeiyan
        6
    xubeiyan  
       2024-07-11 14:01:38 +08:00
    用`docker info` 看看是否设置中有
    ```
    HTTP Proxy: socks5://127.0.0.1:7890
    HTTPS Proxy: socks5://127.0.0.1:7890
    ```
    类似的项目,还有就是改了配置需要使用`systemctl restart docker`重新载入 docker
    fugu37
        7
    fugu37  
       2024-07-11 14:27:19 +08:00   1
    因为 docker 只支持 linux ,macos 和 windows 都要用虚拟机兼容,配置方法自然和正常的 docker 不一样
    Volekingsg
        8
    Volekingsg  
       2024-07-11 15:07:42 +08:00   2
    macOS 下面一个比较简单的方式,开个增强模式(即虚拟网关),Surge 和 Clash 一般都支持
    wnpllrzodiac
        9
    wnpllrzodiac  
       2024-07-11 15:47:33 +08:00
    cf 大法岂不美哉
    wu67
        10
    wu67  
       2024-07-11 15:52:24 +08:00
    最近的版本好像有 bug. 我之前一直是在 docker 设置里面设置 127+端口的. 今天更新发现这个设置失效了.
    然后把 docker 设置面板里面代理关掉, 让他自己走系统代理就好了
    beginor
        11
    beginor  
       2024-07-11 16:42:28 +08:00 via Android
    Docker 在 Mac 上是虚拟机, 所以 Mac 上使用 127.0.0.1 作为代理地址是肯定不行的, 必须设置成 Mac 本机的内网 IP 地址才能使用。

    或者使用 Proxifier 来设置代理规则也行。
    ymcyyf
        12
    ymcyyf  
       2024-07-11 17:36:17 +08:00
    Yuesh1
        13
    Yuesh1  
       2024-07-11 17:43:42 +08:00   4
    把 127.0.0.1 改成 host.docker.internal


    127.0.0.1 访问的是 mac 的 docker 起的一个虚拟机
    Yuesh1
        14
    Yuesh1  
       2024-07-11 17:46:36 +08:00
    @Yuesh1 我的意思是在 ~/.docker/daemon.json 里配置的
    tr1v1z
        15
    tr1v1z  
       2024-07-11 19:37:56 +08:00 via Android
    https://docs.orbstack.dev/settings#proxy

    你用的 orbstack 吗?
    另外为啥不用 tun 模式
    zsh2517
        16
    zsh2517  
       2024-07-11 19:49:29 +08:00
    @78786381 #3 补一张图

    ![]( https://imgur.com/SM5bmcT)
    leokun
        17
    leokun  
       2024-07-11 20:54:40 +08:00   1
    tun 模式可以
    luodan
        18
    luodan  
       2024-07-12 05:30:06 +08:00   1
    楼上说的增强模式应该是最方便的。随时开启,随时关闭。
    skuuhui
        19
    skuuhui  
       2024-07-12 08:49:48 +08:00
    “按照官方文档 Configure the daemon to use a proxy 修改 ~/.docker/daemon.json”我是生效的,如果不行,那就是镜像源有问题。
    哦,你拉取的时候得 docker pull <源域名>/busybox
    zbatman
        20
    zbatman  
       2024-07-12 08:52:54 +08:00 via Android
    只是拉镜像的话,用 cf workers 或者用 cf 套 nginx 自己搭建一个就行吧,cf 在国内应该还是可以访问的
    svyrblg
        21
    svyrblg  
       2024-07-23 21:28:08 +08:00
    1 、通过界面设置
    docker desktop -》 setting -》 resources -》 proxies
    2 、通过配置文件设置
    "proxies": {
    "default": {
    "httpProxy": "http://127.0.0.1:20171",
    "httpsProxy": "http://127.0.0.1:20171"
    }
    },
    注意:只能使用 http 协议,socks5 不能使用。
    svyrblg
        22
    svyrblg  
       2024-07-23 21:28:38 +08:00
    已经经过测试
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     2671 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 24ms UTC 07:13 PVG 15:13 LAX 00:13 JFK 03:13
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86