LoginSignup
1
5

More than 5 years have passed since last update.

phpとmysqlで開発する時に使うdocker-composeについて考えた

Posted at

必要だったもの

  • php 5.3の環境
  • mysql 5.5の環境
  • 複数のphpサイトを扱える
  • 複数のphpサイトでmysqlを共有できる

考えるに至る動機

  • 手元の環境はphp7にしておきたかった。
  • 開発用のDB管理を楽にしたい。

今回覚えたこと

  • docker-composeはとても便利だ。
  • Virtual Machineのディスクやパーティション管理はやっぱり面倒だったんだな。

使っているもの

https://hub.docker.com/_/amazonlinux/

採用理由はphp 5.3をサポートしている環境で使ったことがあったから。
公式のdocker hubにはphp 5.6からしかなかった。

https://hub.docker.com/_/mysql/

MYSQL_DATABASE環境変数に複数指定する方法がわからなかったので、
Docker MySQL公式イメージを使用してDBに初期データを流し込む
http://qiita.com/furu8ma/items/75e5b1df29fef04ec7f1
を使わせてもらってます。
もしかしたらmysql公式dockerの思想では1コンテナ1データベースなのかもしれない。

サンプルプロジェクト

動作に必要なもの

docker version 17

使い方

コンテナ実行

  1. サンプルプロジェクトをチェックアウト
  2. foobar-serverフォルダに移動
  3. docker-compose up -d を実行してイメージ作成コンテナ起動を行う
  4. docker-compose logs を実行してログを確認

mysqlのデータ領域をホスト側のmysqlフォルダに作るのでコンテナを消してもDBの内容は消えない。

動作確認

http://localhost:9080/mysql_sample.php
http://localhost:9081/phpinfo.php
が見れていればOK

1
5
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
5