我对此一无所知。
我在Docker容器中有一个Lumen和MySQL设置。 大部分事情都很顺利。 我可以运行容器并通过浏览器访问Lumen。 我可以通过Sequel Pro访问MySQL,没问题。 而且我可以运行php artisan migrate ,并且效果很好。
但是,如果我尝试通过浏览器中的Lumen进行任何操作,它将无法连接到数据库,并且会显示“连接被拒绝”错误。
我正在使用Lumen 5.7.7,.env文件如下所示:
DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=test
DB_USERNAME=root
DB_PASSWORD=root
docker-compose.yml看起来像这样:
version: '3'
services:
api:
build:
context: .
dockerfile: .docker/Dockerfile
image: laravel-docker
ports:
- 8080:80
depends_on:
- mysqldb
volumes:
- .:/srv/app
# container_name:
mysqldb:
image: mysql:5.7
container_name: mysqldb
command: mysqld --user=root --verbose
volumes:
- ./schemadump.sql:/docker-entrypoint-initdb.d/schemadump.sql
ports:
- 3306:3306
environment:
MYSQL_DATABASE: test
MYSQL_USER: test
MYSQL_PASSWORD: test
MYSQL_ROOT_PASSWORD: root
MYSQL_ALLOW_EMPTY_PASSWORD: "yes"
编辑:在站点和命令行上运行了phpinfo(),并意识到它们甚至不是相同的版本,更不用说相同的详细信息了。 这可能是问题所在吗? 看更多...