Помогите пофиксить плз)
Не выходит подключиться к БД из php (использую docker-compose) выдает ошибку:
Fatal error: Uncaught PDOException: could not find driver in /app/public/index.php:44 Stack trace: #0 /app/public/index.php(44): PDO->__construct('mysql:dbname=de...', 'root', Object(SensitiveParameterValue), Array) #1 {main} thrown in /app/public/index.php on line 44
Из phpstorm к БД поключиться получилось.
index.php пробовал такие вариант
$pdo = new PDO('mysql:dbname=dev;host=mysql', 'root ', 'password', [PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION]);
//$pdo = new PDO('mysql:dbname=udata;host=localhost:3306', 'root', 'password', [PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION]);
//$pdo = new PDO('mysql:dbname=dev;host=127.0.0.1:3306', 'root', 'password', [PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION]);
docker-compose.yml
version: '3'
services:
web:
image: nginx:alpine
ports:
- "80:80"
volumes:
- ./config/nginx.conf:/etc/nginx/conf.d/nginx.conf
- .:/app
php:
image: php:fpm
volumes:
- .:/app
mysql:
image: mysql:latest
environment:
MYSQL_USER: 'user'
MYSQL_ROOT_PASSWORD: 'password'
MYSQL_PASSWORD: 'password'
MYSQL_DATABASE: 'dev'
MYSQL_ALLOW_EMPTY_PASSWORD: 1
volumes:
- ./DB:/var/lib/mysql
ports:
- "3306:3306"
nginx.conf хз зачем он вам)
server {
listen 80 default_server;
root /app/public;
index index.php index.html index.htm;
location ~ \.php$ {
fastcgi_pass php:9000;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
}