注意点
- libpq-dev を事前にインストールし、それから
docker-php-ext-install pdo_pgsql
を行うこと。
ことの発端
Laravel でマイグレーションの状態を調べようとしましたら、次のエラーとなりました。
$ php artisan migrate:status
... 略 ...
In Connector.php line 70:
could not find driver
... 略 ...
調べてみますと、次のページに行き当たりました。
踏み込んで調べてみますと、確かに pdo_pgsql がありませんでした。そこで、 php:7.3-apache の Docker コンテナですので、次のコマンドでインストールを試みるも、失敗してしまいました。
$ docker-php-ext-install pdo_pgsql
... 略 ...
configure: error: Cannot find libpq-fe.h. Please specify correct PostgreSQL installation path
$
これは、次のページで解決できました。
最終的に次のコマンドで pdo_pgsql をインストールすることができました。
# php:7.3-apache への pdo_pgsql のインストール
apt-get update && apt-get -y install libpq-dev
docker-php-ext-install pdo_pgsql
# 確認
php -m | grep pdo
おわりに
今まで、 Laravel では MySQL ばかり使用していました。ふと思い立って PostgreSQL を使用してみようとしたところ、エラーとなってしまいました><。
これを解決しましたので、ノートいたしました。
以上です。