阅读一些关于 laravel tinker 的好评,一个我想尝试的 phpstorm 插件。我在我的 phpstorm 编辑器上安装了插件,并准备开始修补。正在使用我为 apache2、mysql、workspace 和 phpmyadmin 配置的 Laradock。在我决定尝试 laravel tinker 之前,一切都运行良好。

这是 .env 文件中 mysql 数据库连接的设置。

[Alt](https://res.cloudinary.com/practicaldev/image/fetch/s--gOGTj1-R--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https:// dev-to-uploads.s3.amazonaws.com/uploads/articles/g0640xoqboun3ehlq5pr.png)

Laravel tinker 无法解析主机名 -

Illuminate\Database\QueryException 与消息 'SQLSTATE[HY000] [2002] php_network_getaddresses: getaddrinfo failed: No address associated with hostname

经过长时间的在线阅读和搜索以寻找解决方案,我无法获得所需的帮助。后来有一位资深同事建议使用mysql docker容器的IP地址。我确实尝试过,这次错误更改为

Illuminate\Database\QueryException 与消息 'SQLSTATE[HY000] [2002] 连接超时

至少取得进展。然后我使用以下命令检查了 mysql docker 容器网络:

搬运工检查[容器ID]

有关于容器的一长串信息,但重点是 NetworkSettingsNetworks 属性。

[Alt](https://res.cloudinary.com/practicaldev/image/fetch/s--z6avBQcN--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev- to-uploads.s3.amazonaws.com/uploads/articles/863hdypthu0b9d278ce5.png)

然后我将 IP 地址更改为网关,它同样是一个 IP,但在本地引导流量。瞧,Laravel 修补程序启动并运行......

[Alt](https://res.cloudinary.com/practicaldev/image/fetch/s--kVbhW7VH--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev- to-uploads.s3.amazonaws.com/uploads/articles/uv74fesamdclfa5wp5vp.png)

希望这篇文章能帮助那些可能发现自己处于类似情况的人。欢迎评论和更正,因为我们都在互相学习中学习。

Logo

华为、百度、京东云现已入驻,来创建你的专属开发者社区吧!

更多推荐