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を利用すれば大丈夫です。このまま読み進めてください。
OS | Windows 10 Pro 64bit |
---|---|
CPU | Intel® Core™ i5-9400F 2.90 GHz × 6コア(物理) |
GPU | GEFORCE GTX 1660 Ti |
メモリ | 16GB (DDR4 – 2666 8GB × 2) |
保存領域 | 512GB SSD + 2TB HDD |
Dockerをインストールする
まずはDockerをインストールしましょう。
Dockerのインストーラーを入手する
まずはDocker Hubにアクセスし、赤枠の「Sign up for Docker Hub」をクリックしてください。
![Docker Hub トップ画面の画像](https://oto-it-writer.com/wp-content/uploads/2019/06/docker-hub-top-e1560356771214-1024x994.png)
下図のように登録画面に遷移するので、必要事項を記入のうえ、登録してください。
![Docker Hub登録画面の画像](https://oto-it-writer.com/wp-content/uploads/2019/06/docker-hub-sign-up.png)
登録時に入力したメールアドレスあてに、Docker Hubからメールが届くので、メール文中の「Confirm Your Email With Docker」をクリック後、登録したDocker IDとパスワードでDocker Hubにログインしてください。
ログイン後、トップ画面の「Get started with Docker Desktop」をクリックします。
![Docker Hubログイン後のトップ画面の画像](https://oto-it-writer.com/wp-content/uploads/2019/06/docker-hub-login-1024x871.jpg)
Dockerインストーラーダウンロード画面に遷移するので、「Download Docker Desktop for Windows」をクリック。
※Macの方は下の「Docker Desktop for Mac」をクリックしてください。
ダウンロードしたDocker Desktopのインストーラーを実行する
ダウンロードしたDocker Desktopのインストーラーを実行します。
※Docker Desktop for Windowsの要求スペックに満たない場合(Windows 10 Home、Windows 7など)、インストーラー実行時にDocker Toolboxをダウンロードするように促されます。
インストーラー内にDocker Toolboxインストーラーのダウンロードリンクが表示されるので、Docker Toolboxインストーラーをダウンロード後、そちらを実行してください。
基本的な動作や操作方法は変わらないはずです。
インストーラーのConfigurationでは、「デスクトップにショートカットを作成」し、「Linuxコンテナの代わりにWindowsコンテナを利用しない」ようにしています。
インストールが終わったら、再起動を促されるため、そのまま再起動(Okを押下)。
![Docker Desktop インストール後の再起動の画像](https://oto-it-writer.com/wp-content/uploads/2019/06/docker-installer-announce-restart.png)
再起動後、タスクバーにDocker Desktopが表示されるようになります。
しばらくするとログイン画面が立ち上がるので、Docker Hubに登録した情報でログインしましょう。ログイン情報はここで入れておけば、起動のたびに毎回入れる必要はありません。
タスクバーのDocker Desktopにマウスカーソルを合わせたとき、「Docker Desktop is running」と表示されればOKです。
ここまででDockerのインストールが終わりました。次はインストールしたDockerで、WordPressのローカル開発環境を構築していきます。
DockerでWordPressローカル開発環境を構築
事前確認
Dockerは画面(GUI)で操作するのではなく、コンソール(CLI)からアクセスします。
ここではWindowsを例にしてご紹介するので、まず「PowerShell(Windows標準のコマンドラインおよびスクリプト言語)」を立ち上げます。
PowerShellで以下のコマンドを実行して、CONTAINER IDやIMAGEなどの情報が表示されているのを確認してください。
# 起動中のコンテナを確認
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のイメージを取得の画像](https://oto-it-writer.com/wp-content/uploads/2019/06/docker-pull-mysql-wordpress-images.png)
念のため、下記のコマンド実行して取得したイメージを確認しておきましょう。
# 取得したイメージを確認
docker images
REPOSITORYとTAGが下図のようになっているか確認してください。
コンテナの作成と起動
イメージの準備ができたので、実際に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のコンテナが起動しているか確認の画像](https://oto-it-writer.com/wp-content/uploads/2019/06/docker-ps-mysql-wordpress-container.png)
WordPressの設定
さきほどまでの手順でWordPressが導入できたので、設定をしていきます。
ポートを8080:80に設定したので、下記のURLにアクセスします。
※リンクにしていないのでコピペしてください。
http://localhost:8080/
下図のように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を再起動後、再度実行しましょう。
DockerでWordPressの開発環境を簡単に構築できました
Dockerを使ってご覧のとおり、簡単にWordPressのローカル開発環境を構築できました。
WordPressのローカル開発環境をもっていると、サーバーレンタル前にWordPressを試してみたり、サーバーをレンタルしてからは、WordPressのテーマ・プラグインの導入・更新時の検証環境として利用できます。
実際に私はサーバーレンタル前に、Dockerで構築したWordPressのローカル開発環境でセットアップをし、練習した状態で本番移行できました。サーバーをレンタルしている現在は、WordPressのカスタイマイズ前に本番データをすべてコピーし、ローカル開発環境でテストするようにしています。
とても便利なのでみなさんもぜひ使ってみてください!
最後まで読んでくださりありがとうございます。よろしければほかの記事もご覧ください。