コーディングブログ

Coding Blog

コピペでOK dockerでWordPressの開発環境をdocker-composeで俊足楽々構築

docker

WordPress

今まで別の環境で構築していたWordPressをdockerに移行したい方に最適な記事です。

サンプルコードのID、PASSWORD、ディレクトリを書き換えるだけで即利用可能です。

今回はdockerで、

  • MySQL
  • phpMyAdmin
  • WordPress

を構築してきます!
コマンドに慣れていない方でも、phpMyAdminで操作できると安心ですよね。
前提で必要なdockerとdocker-composeのインストールは各自で行ってみてくださいね。

    登場ディレクトリ

    / 作業ディレクトリ
    ├ /sql/(初期sqlファイルを格納)
     └ 〇〇.sql
    ├ /public_html/(WordPressのファイル群一式を格納)
    │└ /wordpress/, .htaccessなど
    ├ .git など
    └ docker-compose.yml(docker環境構築用)

    sqlファイルの準備

    新規でWordPressをインストールしたい方はこの項目は不要です。

    今まで別環境で構築していた方は、今までのsqlファイルをエクスポートして準備してください。
    phpMyAdminの場合はエクスポートオプションは下記の様にすると良いでしょう。

    特に『CREATE DATABASE / USE コマンドを追加する』にチェックを入れていないとデータベースを新規作成できないのでよく確認しましょう。

    phpMyAdminエクスポートオプション

    完全版 docker-compose.yml

    まずはdocker-compose.ymlファイルを作成します。
    そして、docker環境構築はこれが全てです。

    dockerの知識があまり無くても読める様にしっかりコメント付けました。

    【パスワード】に同一のパスワードを指定してください。
    【初期DB名】に使用するDB名を指定してください。

    db-containerのvolumesの./sql:/docker-entrypoint-initdb.d

    ローカルのパス:dockerコンテナ内のパスです。
    ローカルのsqlディレクトリにデータベースのsqlファイルを格納しておくと、コンテナ作成時に初期DBとしてインポートしてくれます。

    wp-config.phpも確認

    データベース名やパスワードなどは、コンテナ起動時にdocker-compose.ymlに記述した通りに自動で書き換わるので、特別修正する必要はありません。

    今回のローカル環境のURLは『http://localhost』になるので、下記URL設定をしておくと良いでしょう。

    コンテナを起動

    作業ディレクトリに移動してdocker-compose up -dを叩きます。
    そのディレクトリのdocker-compose.ymlが自動で呼び出されます。

    docker-compose up -d

    これでコンテナが立ち上がりましたね。

    表示確認

    コンテナが立ち上がったら下記URLでアクセスしてみましょう。

    • WordPressサイト
      http://localhost
    • phpMyAdmin
      http://localhost:8080/

    作業をしたらgitにコミットして、これでチームで同じ環境を構築するのが簡単になりましたね。

    複数サイトを立ち上げてURLを分けたい場合はVIRTUAL_HOSTの設定が必要です。
    近いうちにそちらも紹介したいと思います。

    停止や削除、再起動をする

    まずはcdで作業ディレクトリに移動してください。
    停止も削除も再起動も、今回定義した全てのコンテナ一括で操作できます。

    停止

    削除

    再起動