通过php从docker连接到vagrant
我已经在vagrant上启动了一个API服务器,它位于与ip相关的私有网络中通过php从docker连接到vagrant,php,docker,Php,Docker,我已经在vagrant上启动了一个API服务器,它位于与ip相关的私有网络中192.168.50.4。在我的/etc/hosts中,我将此ip与api.project.devhost关联。我可以连接到虚拟机外部的api.project.dev(例如使用浏览器) 另外,我在docker上启动了一个应用程序,它试图连接到api.dev上的api: docker run--rm-v“$PWD”:/worker-w/worker yproximite/php7 cli php-r“echo file\u
192.168.50.4
。在我的/etc/hosts
中,我将此ip与api.project.dev
host关联。我可以连接到虚拟机外部的api.project.dev
(例如使用浏览器)
另外,我在docker上启动了一个应用程序,它试图连接到api.dev
上的api:
docker run--rm-v“$PWD”:/worker-w/worker yproximite/php7 cli php-r“echo file\u get\u contents('http://api.project.dev“;”
但它无法收到响应,我有PHP警告:file\u get\u内容(http://127.0.53.53):无法打开流:第1行的命令行代码中的连接被拒绝
。同时,它可以绕过php,通过ping
:
docker run --rm -v "$PWD":/worker -w /worker yproximite/php7-cli ping api.project.dev
PING api.project.dev (127.0.53.53): 56 data bytes
64 bytes from 127.0.53.53: seq=0 ttl=64 time=0.048 ms
64 bytes from 127.0.53.53: seq=1 ttl=64 time=0.074 ms
64 bytes from 127.0.53.53: seq=2 ttl=64 time=0.085 ms
64 bytes from 127.0.53.53: seq=3 ttl=64 time=0.065 ms
^C
--- api.project.dev ping statistics ---
4 packets transmitted, 4 packets received, 0% packet loss
round-trip min/avg/max = 0.048/0.068/0.085 ms
我如何让php以类似于ping
的方式工作
流浪汉:
1.9.1
VirtualBox:
5.1.14 r112924(Qt5.6.2)
码头工人:
1.13.1,建造092cba3
macOS:
Sierra 10.12.3(16D32)
更新:我可以访问我的主机添加
--add host=api.project.dev:192.168.50.4
:
docker run--add host=api.project.dev:192.168.50.4--rm-v“$PWD”:/worker-w/worker-yproximite/php7 cli php-r“echo file\u get\u contents('http://api.project.dev“;”
是否可以将外部主机从docker的/etc/hosts
添加到/etc/hosts