カテゴリー
Linux

Docker イメージ php:7.4.5-apache で Apache の他に cron も動かす方法

はじめに

oki2a24/sample_dockerized_laravel6: Laravel6 を Docker 化するサンプルです。 にて Laravel を Docker コンテナ化しました。

Apache 入りの PHP コンテナで Laravel を動かしています。この Laravel で タスクスケジュール 6.x Laravel も行いたいと思いました。

cron を動かせば簡単です。

しかし、 コンテナではすでに Apache のプロセスが動いており、ここに cron を足せません。

これを、なんとかしたのが本投稿となります。

カテゴリー
Linux

Laravel 6 と 7 の差分を見る

GitHub にホストした版の差分

確認の仕方

  1. Laravel 6 をインストールする。
  2. Laravel 6 を git 管理する。
  3. .git/ 以外全部削除する。
  4. Larvel 7 をインストールする。
  5. 差分を確認する。
カテゴリー
Linux

Laravel 6 で今データベース接続がどうなっているか簡単に確認する方法

まとめ

php artisan tinker
DB::connection()->getConfig();
DB::connection()->getPdo();

接続名も例えば DB::connection('foo')->getConfig(); のようにして指定可能です。

カテゴリー
Linux

Laracel 6 で、 `.env` ファイルの名前を変えて運用する方法 2 (補足)

まとめ

  • 前回 、 "Composer コンテナに環境変数を設定するほうが筋が良いかもしれない" とコメントしたが、実際にできたのでメモ
  • composer.jsonphp artisan コマンドに、 --env=laravel といったオプションが不要になる。
  • 開発時は運用時は、 --env=laravel オプションを付けなくとも (.env.laravel を読み込むように環境変数 APP_ENV に laravel を付けることで) php artisan コマンドを使えるようにするので、こちらの方が統一されており、望ましいと言える。
  • feat: Laravel の使用する .env ファイル名を変更する by oki2a24 · Pull Request #7 · oki2a24/sample_dockerized_laravel6
カテゴリー
Linux

Laracel 6 で、 `.env` ファイルの名前を変えて運用する方法

まとめ

  • composer.json を修正する。
    • "@php -r \"file_exists('.env') || copy('.env.example', '.env');\"" を修正する。例えば、 "@php -r \"file_exists('.env.laravel') || copy('.env.laravel.example', '.env.laravel');\"" とする。
    • @php artisan package:discover --ansi を修正する。例えば、 @php artisan package:discover --ansi --env=laravel とする。
    • 同様に @php artisan key:generate --ansi を修正する。例えば、 @php artisan key:generate --ansi --env=laravel とする。
  • サーバレベル、システムレベルやコンテナレベルで定義されている外部の環境変数によって使用する .env ファイル名を制御する。例えば、 APP_ENV=laravel とする。
カテゴリー
Linux

Laravel 6 を Docker 化するときのポイントまとめ

まとめ

カテゴリー
Linux

Laravel 6 を Docker 化する。その 7 。 Node.js のビルド生成物のみを Docker コンテナに含める

今回やること

  • npm install で追加する依存パッケージを、 Docker ビルド時のキャッシュにする
  • npm run production で生成したファイルをコンテナに含める。
カテゴリー
Linux

Laravel 6 を Docker 化する。その 6 。データベース URL で Docker 起動時の環境変数で Laravel の使用するデータベースを指定

今回やること

  • DB 設定
    • データベース URL で接続するデータベースを指定できるようにする。環境変数で指定できるようにする。
    • データベース URL の指定がない場合は、コンテナ内の SQLite を使用するようにする。
  • Laravel 6 を Docker 化する。その5 – oki2a24 の続きです。
カテゴリー
Linux

php:7.3-apache Docker コンテナへ pdo_pgsql をインストールするときの注意点

注意点

  • libpq-dev を事前にインストールし、それから docker-php-ext-install pdo_pgsql を行うこと。
カテゴリー
Linux

Laravel 6 を Docker 化する。その 5 。 mod_rewrites の設定

今回やること