DockerでWordPress環境を構築!Dockerの基本概要と構築方法を解説

2021.07.26
安藤 大海
DockerでWordPress環境を構築!Dockerの基本概要と構築方法を解説
SHARE ON
  • FaceBook
  • Twitter
  • LINE
  • Note
目次

はじめに

みなさん、こんにちは。
Wakka Inc.のWebテクニカルディレクターの安藤です。

みなさんの会社では、開発やテスト環境にDockerを利用していますか?
Dockerは、MicrosoftやGoogleなども実際に導入しており、ベンチャー企業やエンジニアから注目を集めている仮想環境技術です。また、AWSのECSやEKSなどDockerを扱うサービスも増えてきています。

その理由としてDockerというコンテナの上にWordPressを構築すれば、自分のPCなどにも本番環境と同じ状態を作ることができるので、アップデートの検証が容易になるというメリットが大きいと思います。
(もちろん、Dockerを利用することでWordPressのテスト環境を構築することができます)

エンジニアに注目されているDockerなので、実際に構築の手順を知って試してみたいという方もいるのではないでしょうか。そこで、今回はDockerの基本概要とWordPress環境を構築する手順を解説していきたいと思います。

Dockerとは?

『Docker』とは、コンテナを仮想化し、ソフトウェアの作成・配布・実行ができるプラットフォームサービスです。オープンソースソフトウェアとなっており、ライセンスはApacheが保有しています。コンテナの仮想化と聞くと難しく感じますが、「アプリケーションを動作させられる仮想環境を構築できる」と考えればわかりやすいのではないでしょうか。例えば、仮想環境でMySQLを動かせたり、Nginxを起動させられたりするというわけです。

コンテナとイメージはDockerサーバー上で管理されます。クライアントサイドからコマンド操作することで、コンテナの起動・停止・終了などを行うことが可能です。

“仮想化”というワードを聞くと、VMを想像する方も多いです。果たして、DockerとVMには具体的にどのような違いがあるのでしょうか。

VMとの違いについて

VMとの大きな違いは、シミュレーションする範囲です。VMは、OSを仮想化するソフトウェアになります。そのため、シミュレートする範囲は、“OSの起動〜終了”までです。具体的に表現すれば、WindowsのPCを立ち上げて電源を落とすまでをシミュレートします。

一方、Dockerがシミュレートする範囲は1つのコマンドのみです。例えば、Apacheを起動する際に使われる「service httpd start」というコマンドのみをシミュレートします。そのため、VMとDockerは全くの別物と考えて差し支えないでしょう。

Dockerのメリット

大手企業が注目し、多くの開発現場で積極的に採用される理由は、たくさんのメリットがあるからです。メリットを知ることで、なぜDockerでWordPress環境を作るべきなのかを理解できますので、ぜひチェックしてください。

開発環境の高速化を期待

1つ目のメリットは、スピーディな開発を実現できることです。コンテナはOSの仮想化に比べてものすごく軽量になります。なぜなら、1つのアプリケーションの起動、処理だけを仮想化しているからです。メモリやディスクの使用量を抑えることができるため、素早く動作させられます。また、立ち上がりも速いので、効率的な開発を実現することができるでしょう。

本番環境に適応するのが簡単

2つ目のメリットは、テスト環境を本番環境に適応させられることです。アプリケーションを本番環境に適応する際、特別な手間を一切加える必要がありません。そのため、テスト環境から移行するための工数が少なく非常に便利です。また、手間が少ないため、運用コスト削減にも繋げられるでしょう。

共有化により開発効率がアップ

3つ目のメリットは、システムの共有が容易なことです。Dockerの特徴のひとつであるDocker Hubというサービスをご存知でしょうか。

Docker Hubとは、開発されたシステムの共有化を実現するサービスです。Docker Hubには、世界中の優秀な開発者がアプリケーションを公開しています。もし、構築したい機能が公開されている場合、そこから入手することが可能です。つまり、その部分の工数を削減することができます。これにより、開発効率のアップを実現することができるでしょう。

ハードウェアを気にする必要がない

4つ目は、ハードウェアを考慮する必要がないことです。通常、WordPress環境を構築するためには、サーバーを準備しなければなりません。サーバーはさまざまなハードウェアから構成されており、自社サーバーで運用する場合は、まずハードウェアの調達が必須です。また、VPSなど仮想サーバーを使う際もスペックを確認して契約し、万が一メモリなどが足りないときは、追加しなければなりません。

一方、Dockerはハードウェアを気にする必要がありません。コンテナを起動してアプリケーション開発からはじめることができるのです。ハードウェアを無視してアプリケーション開発を優先させられることは大きなメリットになるでしょう。

Dockerのデメリットとは?

Dockerのデメリットは下記の通りです。

OSごとの検証はできない

軽量化が図られているため、OSごとの検証を行うことはできません。例えば、MacOS上でWindowsコンテナを動作させることは難しいです。逆に、WindowsOS上でMacOSコンテナを動かすこともできません。そのため、OS違いの検証に関しては、別途作業が必要になります。

Windows Serverに非対応

Windows Serverに関しては非対応になります。動作させるためには、別途でDocker Toolboxをインストールしなければなりません。また、Docker ToolboxはVirtual Box上にDockerを起動させるという仕組みです。Dockerは軽量が魅力のソフトウェアになりますが、VMを一度立ち上げてからしか使用できないため、動作が重くなります。そのため、Windows Serverを検討している場合、Windows Proを使うなどの対策が必要です。

DockerでWordPress環境を構築する手順

それでは、早速DockerでWordPress環境を構築する手順を解説します。今回、使用する環境は、MacOS Catalina バージョン10.15.5です。

1.下記URLにアクセスします。

https://hub.docker.com/editions/community/docker-ce-desktop-mac

2.右側にある“Mac with Intel chip”をダブルクリックしてください。

3.ダウンロード完了後、Docker.dmgファイルをダブルクリックするとインストールが開始されます。

4.インストール完了後、アプリケーションフォルダーにドラッグ・アンド・ドロップしてください。

5.アプリケーションフォルダーからダブルクリックして起動します。その後に、下記のようなアプリケーションウィンドウが表示されたら起動完了です。実際に画面では、右側にコマンドが表示されています。今回は個人情報の観点から省略しました。

6.コマンドラインを立ち上げて下記のコマンドを入力してください。

$docker ps

7.画像のような結果が返れば起動されていることを確認できます。

8.次にDocker上でWordPress環境を構築していきましょう。WordPress環境を構築するためには、MySQLとWordPressをダウンロードします。MySQLやWordPressはdocker pullで簡単にインストール可能です。具体的なコマンドは、下記になります。今回は、バージョンを指定していません。そのため、最新バージョンがダウンロードされます。

$ docker pull mysql

9.WordPressをダウンロードするためには、下記のコマンドを入力してください。

$ docker pull wordpress

10.完了後、早速テスト環境を起動します。下記のコマンドをそれぞれ入力し、MySQLとWordPressを起動させてください。

$ docker run --name t-mysql -e MYSQL_ROOT_PASSWORD=t-pw -d mysql

$ docker run --name t-wordpress --link t-mysql:mysql -d -p 8080:80 wordpress

11.起動が成功したら、ブラウザに下記のURLを入力し、Enterを押します。

http://localhost:8080/

12.画像のように、WordPressのセットアップメニューが表示されれば、環境構築完了です。

Dockerで高速なWordPress環境を構築しよう

今回は、Dockerの基本概要とWordPress環境を構築する手順について解説しました。Dockerは、高速な開発環境や共有化システムが最大の魅力で、開発効率を高めるため、数多くのベンチャー企業で導入が進められています。そのため、エンジニアとして開発に携わっていく以上、覚えておいて損はない知識になるでしょう。

本メディアは、多忙な日々を送りながら自分で調べて作業を進めているCTOやVPoEなどのエンジニアに有益な情報を届けています。WordPressに関するさまざまな情報を収集できるので、開発の途中で躓いてしまったときは、ぜひ参考にしてください。また、弊社ではサイト運営に関する開発のリソース不足を解決していただけるよう、『オフショア・ラボ型開発』や『海外開発子会社設立』のサポートを行っています。興味のある方は下記のお問い合わせフォームからぜひご相談ください。

この記事を書いた人
安藤 大海

学生時代にWebサイトを自作したことがきっかけでWebの世界に。制作会社でデザイン、WordPressテーマ開発の実務を経て、テクニカル・ディレクターとして大規模サイト構築のディレクションを経験。2021年からWakka Inc.の日本拠点でWebディレクターとして参画。最近はブロックエディタになったWordPressをもう一度、勉強しています。

  • ホーム
  • ブログ
  • DockerでWordPress環境を構築!Dockerの基本概要と構築方法を解説