mac docker 宿主机和容器间网络打通

动因

是这样,笔者最近满怀欣喜入手Docker,看着各种文章命令都是不断点头称道:"嗯嗯,不错不错",在接下来终于准备大干一场的时候碰壁了,主要情况是说在Mac中跑了第一把的时候发现碰到,虚拟机和宿主机居然是不通的,当然也找了一下资料说linux才是天然支持docker滴,底层都有cgroup,clx吧啦吧啦,mac,windows这种其实是底层干了波虚拟机,然后要转发啥的。从我过去多次学习大数据组件入门到放弃的情况来说,网络这种事情要提前解决,不能卡着,否则后面很多破事情。找了一堆资料,自己亲测OK,而且不是很繁琐的方式,我记录下来。

办法

使用 docker-connector, 上链接

原理官网其实也说明了

动作

先是安装

bash 复制代码
brew install wenjunxiao/brew/docker-connector
bash 复制代码
docker network ls --filter driver=bridge --format "{{.ID}}" | xargs docker network inspect --format "route {{range .IPAM.Config}}{{.Subnet}}{{end}}" >> /usr/local/etc/docker-connector.conf
bash 复制代码
sudo brew services start docker-connector

然后是内部容器启动

bash 复制代码
docker run -it -d --restart always --net host --cap-add NET_ADMIN --name connector wenjunxiao/mac-docker-connector

接下来是试一把:

bash 复制代码
curl http://172.17.0.2
bash 复制代码
<!DOCTYPE html>
<html>
<head>
<title>Welcome to nginx!</title>
<style>
html { color-scheme: light dark; }
body { width: 35em; margin: 0 auto;
font-family: Tahoma, Verdana, Arial, sans-serif; }
</style>
</head>
<body>
<h1>Welcome to nginx!</h1>
<p>If you see this page, the nginx web server is successfully installed and
working. Further configuration is required.</p>

<p>For online documentation and support please refer to
<a href="http://nginx.org/">nginx.org</a>.<br/>
Commercial support is available at
<a href="http://nginx.com/">nginx.com</a>.</p>

<p><em>Thank you for using nginx.</em></p>
</body>
</html>
相关推荐
aosky20 小时前
手机远程畅玩OpenAI Codex
macos·智能手机·cocoa
情绪雪20 小时前
IP 协议基本原理
网络·网络协议·tcp/ip
Lucas_coding20 小时前
【语音相关ASR】OpenAI 兼容 Qwen_ASR 接口调用实战:SDK 与 HTTP 方式详解
网络·网络协议·http
周杰伦的稻香20 小时前
tcpdump
网络·测试工具·tcpdump
小快说网安21 小时前
高防 IP 的 “防护上限”:带宽、清洗能力、防御类型如何匹配业务需求
网络·tcp/ip·安全
Learn-Python21 小时前
修改docker容器内文件后让其生效
运维·docker·容器
Meaauf21 小时前
VMware五种网络模式详解与EVE-NG互联指南
运维·服务器·网络
桦021 小时前
[Linux复习]:网络
linux·运维·网络
不会写DN21 小时前
如何设计应用层 ACK 来补充 TCP 的不足?
开发语言·网络·数据库·网络协议·tcp/ip·golang
IT摆渡者21 小时前
JUMPSERVER堡垒机部署
linux·运维·网络·经验分享·笔记