1. Qiita
  2. 投稿
  3. PHP

3コマンドでLAMP+phpmyadminの爆速構築

  • 3
    いいね
  • 0
    コメント

Docker2 Advent Calendar 2016の16日目にして初投稿記事です。
よろしくお願いします。。。

ローカルでサクッとphpmyadmin込のLAMP環境欲しいって時ありませんか、僕はあります。
あまりスマートじゃないかもしれませんが以下の前提条件をクリアすれば
3つのコマンドだけで環境ができます。

【前提条件】

docker-composeとdockerが使えることが前提の手順になります。
各コマンドがconsoleから使えない方はDocker for macもしくはDocker for Windowsをインストールすれば問題ありません。
■公式が提供しているインストール方法はこちら

【手順】

1.リポジトリをcloneする
$ git clone https://github.com/sunecosuri/lamp-docker.git

2.ディレクトリを移動する
$ cd lamp-docker

3.PHPのバージョン設定
以下のURLに記載されているタグを基に使用したいphpのバージョンを指定する。
(リポジトリのソースの初期設定は7.1.0)

docker-hubで提供しているコンテナ一覧
※公式のリポジトリ以外で提供しているコンテナ以外は検証できていないため動作の保障ができかねます。

例)7.1.0→5.6に変更したい場合
「FROM php:7.1.0-apache」→「FROM php:5-apache」

4.phpの設定
/php/php.iniを適宜編集する。
今回はこのまま実行するので割愛します。

5.mysqlの設定
/mysql/my.cnfを適宜編集する。
今回はこのまま実行するので割愛します。

6.ポートフォワーディングの設定
docker-compose.override.ymlを編集する
ホスト:コンテナとなっているので適宜編集する。

   mysql:
     ports:
       - "3300:3306"
   php:
     ports:
       - "80:80"
   phpmyadmin:
     ports:
       - "8080:80"

7.ビルドして立ち上げる
$ docker-compose up -d

8.Webサーバの接続確認
『http://{ホストのIPアドレス}』にアクセスして
phpinfoが表示されれば問題ありません。
無題.png

9.phpmyadminの接続確認
『http://{ホストのIPアドレス}:8080』にアクセスして
phpmyadminが表示されれば問題ありません。
無題1.png

補足

コンテナを停止させたいとき
$ docker-compose stop

まとめ

以下の3つのコマンドで環境が作れます。
1.$ git clone https://github.com/sunecosuri/lamp-docker.git
2.$ cd lamp-docker
3.$ docker-compose up -d

二番煎じ感が否めませんが
clone先のhtmlがドキュメントルートになるのでサクッと使いたいときに便利な気がします。

終了したいときは以下のコマンドで終了できます。
$ cd lamp-docker
$ docker-compose stop

上記のDocker環境はGitHubにも公開しております。
https://github.com/sunecosuri/lamp-docker

今後はバージョン切り替えも込みでXAMPPとかMAMPよりカジュアルに使えるようにしていきたいです。ありがとうございました。