OrbStack 的 domain names 原理是什么啊? - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
请不要在回答技术问题时复制粘贴 AI 生成的内容
loganovo
V2EX    程序员

OrbStack 的 domain names 原理是什么啊?

  •  
  •   loganovo 2023-09-04 04:46:17 +08:00 3463 次点击
    这是一个创建于 838 天前的主题,其中的信息可能已经有所发展或是发生改变。

    今天在 mac 上刚装的 OrbStack ,有一点想不通,启动 OrbStack 后就运行了这个命令启动容器,

    docker run -d -p 8080:80 docker/getting-started 

    然后就能通过浏览器访问 http://orb.local/,直接看到下面的页面

    然后直接浏览器访问容器的 domain-name ,也就是上图红框里的地址,就能直接访问容器服务页面,连 8080 端口号都不用加。
    容器之间可以通过容器名互通我是知道的,但是我的宿主机是怎么直接通过"容器名"访问到容器的呢,我看了我本机的 hosts 文件都没有变化啊。
    这是什么原理呀,有没有大佬知道这个容器名和 ip:port 的映射是在哪里看?

    8 条回复    2023-09-04 09:35:16 +08:00
    phpfpm
        1
    phpfpm  
       2023-09-04 05:26:59 +08:00 via Android
    我猜做了反代?
    airyland
        2
    airyland  
       2023-09-04 05:29:52 +08:00
    Docker 本身就支持 add host, 看起来底层是 Linux namespace, 不需要显式配置在 /etc/hosts 中。
    ysc3839
        3
    ysc3839  
       2023-09-04 05:52:00 +08:00 via Android   1
    个人猜测是 mDNS
    loganovo
        4
    loganovo  
    OP
       2023-09-04 06:23:54 +08:00 via Android
    @airyland add host 不是修改的是 docker 容器的 hosts 吗,我这个更像是修改了我宿主机的 hosts
    loganovo
        5
    loganovo  
    OP
       2023-09-04 06:38:03 +08:00 via Android
    @phpfpm 但无法解释容器名是怎么在物理机上解析成 ip 的,我在物理机 ping 容器名,直接就能得到 docker 网桥下的容器 ip
    loganovo
        6
    loganovo  
    OP
       2023-09-4 06:45:50 +08:00 via Android
    @ysc3839 搜了一下,还真的像是 mdns ,我访问的地址就是以 .local 结尾的
    sky96111
        7
    sky96111  
       2023-09-04 09:06:55 +08:00
    @loganovo 就是 mDNS ,你删除掉 host 的 nss-mdns 包和 avahi 或关闭 systemd-resolved 的 Multicast DNS 再试试,应该就不能解析了。这几个包提供了 Linux 上的 mDNS
    keling
        8
    keling  
       2023-09-04 09:35:16 +08:00
    .local 就是用的 mDNS 。
    只不过我有另外一个问题,为什么宿主机上可以直接通过 127.0.0.1 访问容器里的服务,是不是自动做了端口映射
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     2488 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 26ms UTC 10:28 PVG 18:28 LAX 02:28 JFK 05:28
    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