DockerとLaradockでPHPフレームワークとCMSの開発環境(nginx・php-fpm・mysql※LAMPも選択可)を構築する

DockerとLaradockでPHPフレームワークとCMSの開発環境を構築します。Dockerでの開発環境構築を勉強するために参考情報を調べていたらLaradockという便利そうなものを見つけました。

Composerが入ってるだけだから別のフレームワークでも使える

PHPカンファレンス関西2017に行ってきました | プログラミングメカブログ 

と言う記事も見かけたので、以下のPHPフレームワークとCMSの開発環境をDockerとLaradockを利用して用意してみました。

 

今後の検討課題

今後やってみたいこととして以下6点あるのですが、まだ知識・経験不足なので少し先になりそうです。4以降はlaradock.ioがやってくれるのではないかと期待しています。

  1. AWS上に開発したDockerコンテナを自動デプロイできるようにする
  2. docker-syncを利用する
  3. 不必要なコンテナを精査する
  4. PHP7.2.xを使えるようにする
  5. docker-compose.ymlをversion ‘3’ でリライトする
  6. コンテナを軽量化する

 

構築開発環境

PHPフレームワーク

CMS

実行開発環境

事前に用意しておく必要があるもの

目的

  • 以下の想定基本構成で開発環境を構築して各PHPフレームワークとCMSのスタートページを表示させる(※LAMPも選択可能)。
    • 基本構成
      • nginx
      • php-fpm
      • mysql
      • phpmyadmin
    • PHPフレームワーク
      • Laravel
      • CakePHP
    • CMS
      • WordPress
      • Drupal
      • baserCMS

Laradockのダウンロード

インストールの度に基本設定をしたりするのが手間でしたので、基本構成コンテナ群の生成起動まで完了したファイルを俺のGithubにアップしましたのでこちらもご利用ください。

プロジェクトディレクトリ作成と移動

Laradockを使用するプロジェクトディレクトリを作成するため、以下のコマンドを実行し作成したディレクトリに移動します。

Laradockのダウンロードとディレクトリ移動

プロジェクトディレクトリでLaradockをGithubからダウンロードするため、以下のコマンドを実行し、作成されたディレクトリに移動します。

【.env】ファイルの作成

【env-example】ファイルをコピーしてコンテナ群の環境変数を設定する【.env】ファイルを作成するため、以下のコマンドを実行します。

 

Laradockの基本設定

Application Pathの指定

laradockディレクトリ【.env】ファイルのApplication Pathで各PHPフレームワークやCMSを展開するディレクトリを指定します。

データの永続化場所の確認

DBなどのデータの永続化場所はlaradockディレクトリ【.env】ファイルのData Pathで指定されていますので、【DATA_SAVE_PATH=~/.laradock/data/プロジェクトディレクトリ名】にするなど必要に応じて変更してください。

なお、laradockディレクトリ【docker-compose.yml】の【volumes】で永続化場所が指定されています。例:MySQL Containerの初期値の場合

コンテナ(Docker)のボリュームをホスト(Mac)にマウント

laradockディレクトリ【docker-compose.yml】ファイルのApplications Code Containerに【volumes】を追記して、コンテナ(Docker)のボリュームをホスト(Mac)にマウントして共有します。

 

基本構成コンテナ群の生成起動

基本構成コンテナ群の生成起動

.env】と【docker-compose.yml】の設定を元に基本構成コンテナ群を生成起動するため、以下のコマンドを実行します。オプションの【-d】はバックグラウンドで実行するという意味です。開発に必要なコンテナ(nginxやapache2など)を指定して起動します。動作に必要な関連コンテナが連動起動する形になっているようです。

コンテナの稼動確認

生成起動されたコンテナの状態を確認するため、以下のコマンドを実行します。【laradock_nginx_1】と【laradock_mysql_1 】と関連するコンテナが【Up】されているのが確認できました。

【laradock_workspace_1】コンテナに接続

生成起動された【laradock_workspace_1】コンテナの中に入ってPHPフレームワークやCMSをインストールするため、以下のコマンドを実行します。【root@98cc6b1b406d:/var/www#】のような表示がされたら接続は成功です。

 

PHPフレームワークやCMSをインストール

Laradockの準備ができたのでworkspaceコンテナにPHPフレームワークやCMSをインストールしていきます。

PHPフレームワークをインストール

CMSをインストール

 

phpmyadminについて

コンテナを起動するとhttp://localhost:8080でアクセスすることができます。【.env】ファイルのPHP MY ADMINの設定を確認してください。例:PHP MY ADMINの初期値の場合

 

 

コメントを残す

Scroll to top