サービス・コンテナ一覧
この環境におけるサービスとコンテナの概要をまとめています。
通常の開発では、以下のサービスが起動し、連携するようになっています。ブラウザは各自のホスト側で起動している任意のものが使えます。
サービス web
web
サービスはWebアプリケーションを作成し、また確認する目的で動かしています。
PHPランタイム
Webサーバー(Apache httpd) ※ Ubuntuベースのみ
Ubuntuベースのイメージでは、Apache httpdの機能拡張でPHPが組み込まれています。
AlpineベースではPHPの内蔵サーバーで代用しています(php -S
)。
publicディレクトリ以下がWebサーバーベースで公開される部分となっており、それ以外の場所は(PHPのrequire
を使わない限り)Webサーバーからはアクセスできません。
サービス用のコンテナイメージは、以下のリポジトリにてメンテナンス・改良が行われています。
サービス db
db
サービスはデータベース部分を担当しています。
公式のMySQLのイメージをそのままとなっています。
ただしヘルスチェック用のスクリプトを追加しています。
データベースの基本部分はMySQLの公式イメージそのままで、一定時間ごとに稼働中かをチェックするヘルスチェックスケジューラーを立てられるようにスクリプトを入れています。
ヘルスチェック自体は、docker compose
におけるhealthcheckキーで記述しないと動きませんので注意してください。
このイメージに対するサービスでは、ストレージ部分は、立ち上げ方によって使用される場所が異なります。
通常モード(
compose.yml
)Dockerボリュームによるストレージです。
テストモード(
compose.yml
+compose_test.yml
)tmpfsを用いたボリュームです。
コンテナが消滅すると自動的に消えてくれます。
サービス phpmyadmin
通常モード(compose.yml
)でのみ起動するサービスであり、作成しているデータベースのGUI管理目的で使えます。
テストモードでは不要なため、起動いたしません。