Php PDOException SQLSTATE[HY000][2002]没有这样的文件或目录。通过隔离的docker容器运行laravel时

Php PDOException SQLSTATE[HY000][2002]没有这样的文件或目录。通过隔离的docker容器运行laravel时,php,mysql,laravel,docker,isolation,Php,Mysql,Laravel,Docker,Isolation,试图通过docker容器运行laravel。因此,隔离容器包括artisan、mariadb、phpfpm、phpmyadmin、数据和存储容器 这些容器通过链接连接,数据容器存储laravel文件,存储容器用于存储数据库文件;因此,两者都充当其他容器的体积 mariadb容器运行docker hub存储库中提供的库存mariadb容器。 Artisan和phpfpm容器基于dylanlindgren在docker hub存储库中提供的图像 artisan容器通过以下命令链接到db容器: doc

试图通过docker容器运行laravel。因此,隔离容器包括artisan、mariadb、phpfpm、phpmyadmin、数据和存储容器

这些容器通过链接连接,数据容器存储laravel文件,存储容器用于存储数据库文件;因此,两者都充当其他容器的体积

mariadb容器运行docker hub存储库中提供的库存mariadb容器。 Artisan和phpfpm容器基于dylanlindgren在docker hub存储库中提供的图像

artisan容器通过以下命令链接到db容器:

docker run --privileged=true --volumes-from myapp-data  --link myapp-db --rm ayoolaosun/docker-laravel-artisan. 
但是,运行artisan migrate命令时,会弹出以下错误:

"PDOException SQLSTATE[HY000] [2002] No such file or directory". 

我最近了解了容器,并且对devOps非常陌生,所以我不确定如何调整容器来解决这个问题。谢谢,任何小费都行

是您还是其他人创建了此聚合docker设置?如果是这样,您使用的是什么docker图像?关于这一点的更多信息将非常有用。您的错误已经给了您一个提示——您的应用程序正在尝试使用套接字文件连接到MySQL,考虑到它们运行在不同的容器中,这显然是不可能的。只需修复您的数据库配置(Laravel)谢谢,通过使用dockers'inspect'命令获取db容器的IP地址,修复了这个问题。然后将提供的IP地址作为主机应用到Laravel的数据库配置文件中。上面的注释帮助我知道我需要获取DB容器的IP地址,并将其放入Laravel的.env for mysql设置中。是您还是其他人创建了此聚合docker设置?如果是这样,您使用的是什么docker图像?关于这一点的更多信息将非常有用。您的错误已经给了您一个提示——您的应用程序正在尝试使用套接字文件连接到MySQL,考虑到它们运行在不同的容器中,这显然是不可能的。只需修复您的数据库配置(Laravel)谢谢,通过使用dockers'inspect'命令获取db容器的IP地址,修复了这个问题。然后将提供的IP地址作为主机应用到Laravel的数据库配置文件中。上面的注释帮助我知道我需要获取DB容器的IP地址,并将其放入Laravel的.env for mysql设置中。