30
33

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

開発環境をDockerにしたら、PDOでcould not find driverが出た

Posted at

##環境
PHP7.2
MySQL5.7

##問題
LAMP環境からDocker環境に移行した。
その際、PDOによるDB接続を実行した際に、以下のエラーが吐かれた。
ちなみにMySQL。

could not find driver

ドライバが見つからない、とのこと。
これまでのローカル環境ではインストールされていたが、現在のDockernのコンテナ内の環境にはインストールされていないということなんだろう。

コンテナに入った状態で、以下のコマンドで調べてみる。

$ php -m | grep pdo

すると、

pdo_sqlite

sqliteのドライバしか入っていない事がわかった。
から、phpのDockerfileにRUN docker-php-ext-install pdo_mysqlと追記

Dockerfile
FROM php:7.2-apache
RUN apt-get update
RUN apt-get install -y vim
RUN docker-php-ext-install pdo_mysql

このDockerfileからビルドし直して、コンテナを再起動すると解決しました。

参考記事
PDOで could not find driver が出たとき

30
33
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
30
33

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?