Dockerのphp:XX-apacheでpdo_mysqlを使用したい時は
よくあるPHPのLAMP環境をDockerで再現しようとした時
- Dockerfile
FROM php:7.2-apache
WORKDIR /var/www/html/
RUN echo "<?php" > index.php && echo "phpinfo();" >> index.php
でDocker起動
docker build -t phptest .
docker run -it -d --name phptest2021 -p 80:80 phptest:latest
ああ、sqliteしかないのか・・
MySQLやMariaDBを使用したいので、
https://www.php.net/manual/ja/ref.pdo-mysql.php
これが使いたいんですよね・・
そんな時は
docker-php-ext-install
を使う。
- Dockerfile 書き直す。
FROM php:7.2-apache
RUN docker-php-ext-install pdo_mysql && docker-php-ext-enable pdo_mysql
WORKDIR /var/www/html/
RUN echo "<?php" > index.php && echo "phpinfo();" >> index.php
でもう一度Docker起動
docker build -t phptest .
docker run -it -d --name phptest2021 -p 80:80 phptest:latest
PDOが使用で切ることを確認。
- おまけ
docker-php-ext-install
このコマンドを知らなかったときは
https://pentan.info/php/pdo_mysql_install.html
直接上記をやろうとして時間を浪費しました。
他にも
docker-php-ext-install mysqli mbstring gd iconv
色々インストールできます。
Author And Source
この問題について(Dockerのphp:XX-apacheでpdo_mysqlを使用したい時は), 我々は、より多くの情報をここで見つけました https://qiita.com/katsura_tarou_a/items/9a6283b9795bbeaa4e79著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .