docker的mysql连接通过PHP
我在docker-compose.yml中有以下设置
mysql: image: mysql:latest ports: - "3306" volumes: - /var/lib/mysql environment: MYSQL_ROOT_PASSWORD: secret MYSQL_DATABASE: project MYSQL_USER: project MYSQL_PASSWORD: project
在我的index.php中,我想连接到我的数据库容器,但是,我不知道键入什么host = localhost,
下面的代码不起作用
<?php $db = new PDO('mysql:host=localhost;dbname=project;charset=utf8mb4', 'project', 'secret');
它说
Fatal error: Uncaught PDOException: could not find driver in /code/index.php:2 Stack trace: #0 /code/index.php(2): PDO->__construct('mysql:host=loca...', 'project', 'secret') #1 {main} thrown in /code/index.php on line 2
谢谢
您的错误消息表明Mysql驱动程序不可用。
在Ubuntu / Debian中,您检查包装:
dpkg --get-selections | grep php5-mysql
如果没有,请安装php5-mysql软件包。
在Ubuntu / Debian中,您可以使用:
sudo apt-get install php5-mysql
添加该模块之后,请确保将mysql端口映射到主机中的任何端口
mysql: image: mysql:latest ports: - "3306:3306" ...
之后,你可以使用mysql:host=localhost:3306