Welcome toVigges Developer Community-Open, Learning,Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
1.2k views
in Technique[技术] by (71.8m points)

mac 宿主机nginx 连接不上docker php-fpm

image.png

image.png

mac 宿主机的nginx,转发请求到php,一直出现超时的情况

运行docker的命令:`
docker run --name myphp-fpm2 -v /work/dns/test_docker/:/var/www/html/ -d --privileged=true php:5.6-fpm


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Answer

0 votes
by (71.8m points)

根据上面问题的评论对问题的补充, 做出这个判断, 你可以先排查下:

mac 的 docker 实际上是运行在一个 Linux 虚拟机中的, 你直接访问那个 IP 是不可访问的, 鉴于你的 nginx 在宿主上, 所以直接访问 172 也就不通了. 你要做的是把 9000 端口 port mapping 一下, 这样那个虚拟机会把这个端口真正暴露到宿主机的端口上, 如此就可以访问了 (理论上届时也使用 127.0.0.1 即可)

作为测试, 你可以尝试在 docker 中临时运行一个 php -S 0.0.0.0:8080 开启一个 web 服务然后用宿主的浏览器访问试试, 应该是无法直接访问到的.


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome to Vigges Developer Community for programmer and developer-Open, Learning and Share
...