不配置 DNS 前 php.ini 配置成这样是没问题的
出现问题 1.php 容器访问数据库很慢 =>需要配置 DNS
2.配置 DNS 后,223.5.5.5 替代了 host.docker.internal,所以 xdebug 捕捉不到 =》 1.填入 DNS,无效果 2.通过 print_r($_SERVER['REMOTE_ADDR']); 获取 IP 填入,无效果
3.通过 docker inspect 容器 获取 IPAddress 填入,无效果
问: 要怎么解决?
1
GM 2020-12-16 14:51:19 +08:00
remote_host 指的是你运行 IDE 的那台机子的 IP,为啥填 223.5.5.5 呢?
|
3
linoder 2020-12-16 19:10:18 +08:00
proxy 才需要公网啊 …… 你一个 upstream 设置外网 dns 干啥捏 另外 dns 可以设置多个
|
4
datoubb OP @linoder 我现在是需要连接到云数据库,如果不设置 DNS,从容器内部去连接数据库得花 5 秒。加上 dns 之后马上就连上了
|
6
ihipop 2020-12-16 19:55:28 +08:00 via Android
从你信息看,请填写 172.21.0.1
另外了解如下关键词 addhost host-gateway |
7
dilu 2020-12-16 21:55:56 +08:00 via Android
如果是你本地开发环境的话,建议你在写死数据库的 host 这样就不用走 dns 了。docker-compose 支持的。
|
10
dilu 2020-12-17 12:52:42 +08:00 via Android
@datoubb 你在容器内直接写 host,不走 dns 不就行了。如果慢的话,strace 看一下系统调用,看看慢在哪里,再针对问题去解决。
|