docker環境での初めてのPHPの設定時に、ハマってしまったので記録します。
解決してくれたのはこちらのサイト。有益な記事を本当にありがとうございます。
Docker Quickstart Terminalで現在のdateを確認、
$ date
2020年 8月 31日 月曜日 07:13:05
『ふむふむ…』
index.phpで出力テスト、
<?php
$date = date('Y/m/d H:i:s');
print($date);
?>
2020/08/30 22:13:05
『ありゃま…』
よくある9時間遅れのUTC 協定世界時。
phpinfo()で確認する、
<?php
phpinfo();
?>
PHPの設定ファイルを変更する必要がありそうだけど…
その場所は…/usr/local/etc/php/php.ini
しかし辿り着けない…。ここでかなり時間がかかった。
設定方法
php.iniは作れるらしい。作る場所はDockerfileと同じディレクトリに置いてみた。書くのは下記のみ。
[Date]
date.timezone = "Asia/Tokyo"
[mbstring]
mbstring.internal_encoding = "UTF-8"
mbstring.language = "Japanese"
今作ったphp.iniをコンテナにマウントする。下記をDockerfileに記載する。
※マウントとは、読み込ませて使える状態にすること。なんとなくそんな感じ。
ADD ./php.ini /usr/local/etc/php/php.ini
再起動…
$ docker-compose stop
からの、
$ docker-compose up -d --build
phpinfo()で確認する、
Default timezoneがAsia/Tokyoに設定されているのが確認できます。
再起動の際に–build忘れずに。
それではまた!!