我使用laradock的几天。我有它的工作,但自今天运行 "php artisan migrate "错误代码时遇到一个问题。
"Illuminate\Database\QueryException SQLSTATE[HY000] [2002]
php_network_getaddresses: getaddrinfo failed:
Name or service not known
(SQL: SHOW FULL TABLES WHERE table_type = 'BASE TABLE')"
我的容器都在运行,我可以访问我的工作空间和我的mysql容器,并看到我的mysql容器中的(以前创建的)表.我的.env文件显示。
DB_CONNECTION=mysql
DB_HOST=mysql
DB_PORT=3306
DB_DATABASE=default
DB_USERNAME=root
DB_PASSWORD=root
最值得注意的是我的DB_HOST名称是mysql,这似乎是我找到的关于这个主题的大多数帖子中的问题。
我的docker容器显示。
$ docker-compose ps
Name Command State Ports
-------------------------------------------------------------------------------
f3acb119d329_laradock docker-entrypoint.sh Up 0.0.0.0:3307->3306/t
_mysql_1 mysqld cp, 33060/tcp
laradock_docker-in- dockerd-entrypoint.sh Up 2375/tcp, 2376/tcp
docker_1
laradock_nginx_1 /bin/bash Up 0.0.0.0:443->443/tcp
/opt/startup.sh , 0.0.0.0:8881->80/t
cp,
0.0.0.0:81->81/tcp
laradock_php-fpm_1 docker-php-entrypoint Up 9000/tcp
php-fpm
laradock_phpmyadmin_1 /docker-entrypoint.sh Exit 128
apac ...
laradock_redis_1 docker-entrypoint.sh Up 0.0.0.0:6379->6379/t
redis ... cp
laradock_workspace_1 /sbin/my_init Up 0.0.0.0:2222->22/tcp
, 0.0.0.0:3000->3000
/tcp, 0.0.0.0:3001->
3001/tcp, 0.0.0.0:80
01->8000/tcp, 0.0.0.
0:8080->8080/tcp
如果有人能帮我解决这个问题,那就太好了,因为我一整天都在尝试修复它,但都没有成功。如果需要更多信息,请告诉我缺少什么来解决这个问题。
Connection failed: SQLSTATE[HY000] [2002] Connection refused
.
请使用docker内部IP作为主机并尝试连接MySQL。
请使用Docker内部IP作为主机并尝试连接MySQL。 docker inspect
命令来获取IP信息。