コンテンツへスキップ
まとめ
- Laravel のコードを Docker コンテナにコピーする。
- Docker のログへ Laravel のログを出力するようにする。
- Docker コンテナ起動時の環境変数設定で、 Laravel の設定を行えるようにする。
- 依存パッケージのリストのコピーとインストール部分をそれぞれ独立させることで、キャッシュされた Docker レイヤーを使えるようにする。
- ビルドして生成したもののみをコンテナに含めるようにする。
- タイムゾーン、 PHP 、 Apache 等の Laravel 以外の設定を行う。
今回やること
- npm install で追加する依存パッケージを、 Docker ビルド時のキャッシュにする
- npm run production で生成したファイルをコンテナに含める。
注意点
- libpq-dev を事前にインストールし、それから
docker-php-ext-install pdo_pgsql
を行うこと。
まとめ
- URLを使用したデータベース設定 データベース:利用開始 6.0 Laravel
- DB_CONNECTION は指定した方が無難。指定しなくとも SQLite へ接続できたが、 DB_CONNECTION はデフォルト (特に設定ファイルを編集していない場合は mysql となる) となる。
- SQLite の場合のデータベース URL のスキーマ:
driver:///database?options
。具体的な例: sqlite:////absolute/path/to/database.sqlite?foreign_key_constraints=true
まとめ
- COPY で
--chown
フラグをつけることで、コンテナ内にコピーされたファイル・ディレクトリのオーナーを指定できる。
- メリットとして、Docker ビルド時の レイヤーを 1 つ減らせる。また、
RUN chwon
した時に時間が掛かっていたが、 --chown
フラグ付きの COPY の方が時間がかからなかった。
はじめに
今回行うこと
- php.ini の date.timezone 等の設定