DockerでWordPressのローカル開発環境を構築【超簡単】

こんにちは、アマノケンシです。

当ブログはWordPressを利用していますが、サーバーをレンタルする前から自分のパソコン、つまりローカルでWordPress開発環境を構築しています。

さすがに本番環境にあたるレンタルサーバーでいろいろ試すのは、リスクが高いです。WordPressのローカル開発環境を持っていれば、サーバーレンタル前にWordPressやテーマ・プラグインを試すことができ、レンタル後にはこれらのアップデート検証環境としても利用できます。

私はWordPressのローカル開発環境を構築するにあたり、Dockerを利用したのですが、

控えめにいって、めちゃくちゃ楽でした。

そこで今回は、DockerでWordPressのローカル開発環境を構築する方法を書いていきます。

検証環境

今回、DockerでWordPressのローカル環境を構築するのに利用するパソコンのスペックです。

※Windowsの場合、Docker Desktop for Windowsを利用するには、Windows 10 Proが必須ですが、Windows 10 HomeやWindows 7などの場合でも、Docker Toolboxを利用すれば大丈夫です。このまま読み進めてください。

OSWindows 10 Pro 64bit
CPUIntel® Core™ i5-9400F
2.90 GHz × 6コア(物理)
GPUGEFORCE GTX 1660 Ti
メモリ16GB (DDR4 – 2666 8GB × 2)
保存領域512GB SSD + 2TB HDD

Dockerをインストールする

まずはDockerをインストールしましょう。

Dockerのインストーラーを入手する

まずはDocker Hubにアクセスし、赤枠の「Sign up for Docker Hub」をクリックしてください。

Docker Hub トップ画面の画像
Docker Hub トップ画面(https://hub.docker.com/

下図のように登録画面に遷移するので、必要事項を記入のうえ、登録してください。

Docker Hub登録画面の画像
Docker Hub 登録画面(https://hub.docker.com/signup

登録時に入力したメールアドレスあてに、Docker Hubからメールが届くので、メール文中の「Confirm Your Email With Docker」をクリック後、登録したDocker IDとパスワードでDocker Hubにログインしてください。

ログイン後、トップ画面の「Get started with Docker Desktop」をクリックします。

Docker Hubログイン後のトップ画面の画像
Docker Hubログイン後のトップ画面 (https://hub.docker.com/

Dockerインストーラーダウンロード画面に遷移するので、「Download Docker Desktop for Windows」をクリック。

※Macの方は下の「Docker Desktop for Mac」をクリックしてください。

Dockerインストーラーダウンロード画面
Dockerインストーラーダウンロード画面

ダウンロードしたDocker Desktopのインストーラーを実行する

ダウンロードしたDocker Desktopのインストーラーを実行します。

※Docker Desktop for Windowsの要求スペックに満たない場合(Windows 10 Home、Windows 7など)、インストーラー実行時にDocker Toolboxをダウンロードするように促されます。
インストーラー内にDocker Toolboxインストーラーのダウンロードリンクが表示されるので、Docker Toolboxインストーラーをダウンロード後、そちらを実行してください。
基本的な動作や操作方法は変わらないはずです。

インストーラーのConfigurationでは、「デスクトップにショートカットを作成」し、「Linuxコンテナの代わりにWindowsコンテナを利用しない」ようにしています。

Docker Desktop インストーラーの画像
Docker Desktop インストーラー

インストールが終わったら、再起動を促されるため、そのまま再起動(Okを押下)。

Docker Desktop インストール後の再起動の画像
Docker Desktop インストール後の再起動

再起動後、タスクバーにDocker Desktopが表示されるようになります。

Docker Desktopがタスクバーに表示される画像
Docker Desktopがタスクバーに表示される

しばらくするとログイン画面が立ち上がるので、Docker Hubに登録した情報でログインしましょう。ログイン情報はここで入れておけば、起動のたびに毎回入れる必要はありません。

Docker Desktop初回起動時のログイン画面の画像
Docker Desktop初回起動時のログイン画面

タスクバーのDocker Desktopにマウスカーソルを合わせたとき、「Docker Desktop is running」と表示されればOKです。

ここまででDockerのインストールが終わりました。次はインストールしたDockerで、WordPressのローカル開発環境を構築していきます。

DockerでWordPressローカル開発環境を構築

事前確認

Dockerは画面(GUI)で操作するのではなく、コンソール(CLI)からアクセスします。

ここではWindowsを例にしてご紹介するので、まず「PowerShell(Windows標準のコマンドラインおよびスクリプト言語)」を立ち上げます。

PowerShellで以下のコマンドを実行して、CONTAINER IDやIMAGEなどの情報が表示されているのを確認してください。

# 起動中のコンテナを確認
docker ps
「docker ps」コマンド実行イメージの画像
「docker ps」コマンド実行イメージ

MySQLとWordPressのイメージファイル取得

WordPressを動かすためには、「MySQL」「WordPress」のイメージが必要なので、Docker Hubから取得します。

以下のコマンドを順番に実行してください。

# MySQLイメージ取得
docker pull mysql:5.7.26
# WordPress
docker pull wordpress

「wordpress」のようにイメージファイル名のみ指定した場合、Docker Hub内の最新バージョンが取得され、「mysql:5.7.26」のように「:」の後ろにバージョンを指定することもできます。

WordPressは最新で構いませんが、MySQLを最新(現在は8)にすると、私の環境ではWordPressが起動しなくなるため、5.7.26での指定をおすすめします。

ログが出力され、こんな画面になるはずです。

DockerでMySQLとWordPressのイメージを取得の画像
DockerでMySQLとWordPressのイメージを取得

念のため、下記のコマンド実行して取得したイメージを確認しておきましょう。

# 取得したイメージを確認
docker images

REPOSITORYとTAGが下図のようになっているか確認してください。

Dockerで取得したイメージを確認の画像
Dockerで取得したイメージを確認

コンテナの作成と起動

イメージの準備ができたので、実際にWordPressを動かします。下記のコマンドを実行してください。

# MySQLのコンテナ作成
docker run --name test-mysql-5726 -e MYSQL_ROOT_PASSWORD=test-mysql -d mysql:5.7.26
# WordPressのコンテナ作成
docker run --name test-wordpress-latest --link test-mysql-5726:mysql -d -p 8080:80 wordpress

「docker run」はコンテナを作成するコマンドです。

–nameでコンテナに任意の名称をつけられます。今回はTAGがわかるように「test-mysql-5726」「test-wordpress-latest」でつけていますが、お好きにつけてください。

なお、ポートは8080:80に設定しています。

コマンド実行後は、「docker ps」コマンドでMySQLとWordPressのコンテナが起動しているか確認しましょう。

下図のようになれば大丈夫です。
※IMAGESが「wordpress」のものと、「mysql:5.7.26」のものがあればOK

Dockerで作成したMySQLとWordPressのコンテナが起動しているか確認の画像
Dockerで作成したMySQLとWordPressのコンテナが起動しているか確認

WordPressの設定

さきほどまでの手順でWordPressが導入できたので、設定をしていきます。

ポートを8080:80に設定したので、下記のURLにアクセスします。
※リンクにしていないのでコピペしてください。

http://localhost:8080/

下図のようにWordPressの初期設定画面が表示されるので、設定していきましょう。

WordPress初期設定画面の画像
WordPress初期設定画面

今回の主題は、DockerでWordPressのローカル開発環境を立ち上げるとことで、WordPressの設定ではないので、WordPressの設定についての解説はここまでにします。お疲れさまでした

コンテナを起動・停止する方法

PCをシャットダウンし、再起動した場合、作成したコンテナを手動で起動する必要があります。下記のコマンドを実行しましょう。

※「docker run」はコンテナを作成するコマンドで、起動するコマンドではないので、注意してください。

# コンテナの起動
docker start test-mysql-5726 test-wordpress-latest

逆に停止する場合には、下記のコマンドを実行します。

# コンテナの停止
docker stop test-mysql-5726 test-wordpress-latest

コンテナ起動時、「wordpress」のコンテナで下記のエラーが出る場合、Docker Desktopを再起動後、再度実行しましょう。

「wordpress」のコンテナで起動時にでることがあるエラーの画像
「wordpress」のコンテナで起動時にでることがあるエラー

DockerでWordPressの開発環境を簡単に構築できました

Dockerを使ってご覧のとおり、簡単にWordPressのローカル開発環境を構築できました。

WordPressのローカル開発環境をもっていると、サーバーレンタル前にWordPressを試してみたり、サーバーをレンタルしてからは、WordPressのテーマ・プラグインの導入・更新時の検証環境として利用できます。

実際に私はサーバーレンタル前に、Dockerで構築したWordPressのローカル開発環境でセットアップをし、練習した状態で本番移行できました。サーバーをレンタルしている現在は、WordPressのカスタイマイズ前に本番データをすべてコピーし、ローカル開発環境でテストするようにしています。

とても便利なのでみなさんもぜひ使ってみてください!

最後まで読んでくださりありがとうございます。よろしければほかの記事もご覧ください。