docker访问宿主网络
今天用docker跑一个FastAPI程序,测试期间这个程序需要访问我本机的MySQL,但是发现访问不到,docker容器内的ip是172.17.0.1,MySQL的地址不论写localhost还是127.0.0.1或者172.17.0.1都访问不到。
其实docker容器运行的时候有host
、bridge
、none
三种网络可供配置。默认是bridge
,即桥接网络,以桥接模式连接到宿主机;host
是宿主网络,即与宿主机共用网络;none
则表示无网络,容器将无法联网。
from
https://www.cnblogs.com/mafeng/p/11781003.html
因此只要设置为host网络即可,比如
docker run -it --name api_test --network host e4339467458d