WordPressをDockerにインストールして開発を高速化する方法
ジョン・ターナー
ジョン・ターナー
Dockerは開発者の働き方に革命を起こしている。
WordPressサイト全体をコンパクトでポータブルなコンテナにパッケージ化します。これにより、互換性の問題を気にせず、異なる環境間でサイトを簡単に移動できます。
このチュートリアルでは、Dockerを使用してWordPressをインストールし設定する方法を説明します。
各ステップをわかりやすく解説しますので、コンテナの世界が初めての方でも問題なく進められます。WordPress開発の新たな可能性を体験する準備をしましょう!
以下はその要点である:
- Dockerは、WordPressとすべての依存関係を移植可能なコンテナにパッケージ化し、互換性の問題を排除します。
- 従来のLAMPスタックのインストールと比較して、セットアップにかかる時間は数時間ではなく、わずか数分です。
- Mac、Windows、LinuxマシンにDocker Desktopがインストールされている必要があります。
- Docker Composeはすべてを管理し、単一の設定ファイルでWordPressとMySQLの両方のコンテナを処理します。
- いくつかの簡単なコマンドを実行するだけで、開発サイトは http://localhost:8080 でローカルに実行される。
- Dockerコンテナは仮想マシンよりも軽量で、複数のテスト環境を同時に実行できます。
目次
Dockerとは?
Dockerはオープンソースのコンテナ化プラットフォームで、アプリケーション用に分離された環境を作成できます。これらの環境(コンテナと呼ばれる)は一貫性と移植性があり、WordPressサイトがどこにデプロイされてもスムーズに動作することを保証します。

異なる国(ウェブサーバや環境)に商品(あなたのコード)を輸送する必要のある船団(あなたのアプリケーション)を持っていると想像してみてください。それぞれの国には独自の規則や規制があり、輸送は物流上の悪夢となります。
Dockerは、貨物船で見かける標準的な輸送コンテナのような働きをする。Dockerはアプリケーションとそのすべての依存関係を、自己完結型のユニットにパッケージします。
このコンテナは、Dockerをサポートするシステムであれば、OSに関係なく簡単に出荷・実行できる。
なぜDockerでWordPressを使うのか?
Dockerは、WordPressのローカル開発を大幅にスムーズかつ効率的にします。
通常は、LAMPスタック(Linux、Apache、MySQL、PHP)をインストールしなければならない。全く別のものをインストールしない限り、このウェブ開発環境から抜け出せなくなる。
Dockerを使えば、サイトを別のオペレーティングシステムに移行しても同じように動作します。Dockerコンテナはポータブルなので、互換性の問題を心配する必要はありません。
新しい開発サイト用に新しいコンテナを素早く作成できます。Dockerはプロセスを合理化し、WordPressサイトを数分で立ち上げて実行できるようにします。
Dockerコンテナは、従来の仮想マシンに比べて使用するリソースが少ない。コンピュータの速度を落とすことなく、複数のテスト環境を構築することができます。
しかし、コマンドラインを使用してコマンドを読み、実行することには慣れておく必要がある。
DockerにWordPressをインストールする方法
Dockerを実際に体験してみませんか?ここでは、Docker上でのWordPressのインストールプロセスを紹介します:
- ステップ1:Dockerをインストールする:お使いのオペレーティング・システム用のDocker Desktopをダウンロードし、正しく動作していることを確認する。
- ステップ2: Docker Composeでコンテナを作成する: WordPressとMySQLの両方のコンテナを設定するdocker-compose.ymlファイルをセットアップする。
- ステップ3:WordPressサイトの作成を完了します:localhost:8080で新しいサイトにアクセスし、標準のWordPressセットアップウィザードを完了します。
ステップ1:Dockerのインストール
コンテナの世界に飛び込む前に、システムにDockerをインストールする必要がある。Docker Engineをインストールすることになるが、これはDockerコンテナのビルドと実行に使用される。
良いニュースは、Dockerはすべての主要なオペレーティング・システムで利用可能だということだ。macOS、Windows、Linuxでのセットアップ方法を紹介しよう。
macOSにDockerをインストールする
Macをお使いの場合は、以下の条件を満たしていることをご確認ください:
- 4GBのRAM
- 更新されたmacOSバージョン
- Rosetta 2(Appleシリコン搭載Mac向け)
次に、Docker Desktop for Macをダウンロードする。お使いのコンピュータによってバージョンが異なるので、正しいものを使ってください。
ダウンロードしたDocker.dmgファイルをダブルクリックします。Dockerアイコンをアプリケーションフォルダにドラッグ&ドロップします。

アプリケーションフォルダからDocker Desktopを開きます。プロンプトに従ってインストールを承認する。メニューバーにDockerアイコンが表示されたら、Docker Desktopが起動していることがわかります。
WindowsにDockerをインストールする
Windowsユーザーの方は、お使いのコンピューターが以下の条件を満たしていることをご確認ください:
- 64ビット・プロセッサー
- 4GBのRAM
- BIOS/UEFIでハードウェア仮想化を有効にしました
その後、Docker Desktop for Windowsの公式ダウンロードページにアクセスしてください。お使いのコンピュータに合ったバージョンをダウンロードしてください。
ダウンロードした.exeファイルを開き、画面の指示に従ってください。Docker Desktopが自動的にC:¥Program Files¥Docker¥Dockerにインストールされます。
WSL 2かHyper-Vを使うことになる。選択したバックエンドに応じて、適切な方を選択してください。お使いのコンピュータがどちらか一方しかサポートしていない場合は、利用可能なオプションは1つだけです。
インストール後、Dockerを終了し、コンピュータを再起動する必要があります。その後、システムトレイにDockerアイコンが表示されます。
LinuxにDockerをインストールする
DockerはすべてのLinuxにインストールできる。ターミナルを開き、以下のコマンドを実行するだけだ:
curl -L get.docker.com | bash
正しくインストールされたことを確認するには、次のコマンドを実行する:
sudo docker run hello-world
成功のメッセージが表示されます。
ステップ2: Docker Composeでコンテナを作成する
Docker Composeを使えば、複数のコンテナ・アプリケーションを管理できる。今回のケースでは、WordPress用の新しいコンテナをセットアップするために使用します。
まず、お使いのオペレーティングシステムのコマンドラインを開きます。このコマンドを使ってDocker Composeを実行し、動作していることを確認する:
docker compose version
このコマンドを入力して、wordpress-local という名前の新しいディレクトリを作成します:
mkdir wordpress-local && cd wordpress-local
次に、お気に入りのテキストエディタを開きます。新しいファイルを作成し、.env という名前を付けます。次のコードを追加してください:
# MySQL
MYSQL_ROOT_PASSWORD=change_root_password
MYSQL_DATABASE=wordpress
MYSQL_USER=wp_user
MYSQL_PASSWORD=change_wp_password
# Ports
WORDPRESS_PORT=8080
PHPMYADMIN_PORT=8081
プレースホルダーのパスワードを、ご自身の安全な値に置き換えてください。.envファイルを使用することで、機密情報をcomposeファイルから分離でき、後でポートや認証情報を変更しやすくなります。
次に、docker-compose.ymlファイルを作成します。新しいプロジェクトディレクトリに保存してください。
このコードをYAMLファイルに貼り付けて、WordPressコンテンツ管理システムをインストールする:
services:
db:
image: mysql:8.0
restart: unless-stopped
command: --default-authentication-plugin=mysql_native_password
environment:
MYSQL_ROOT_PASSWORD: ${MYSQL_ROOT_PASSWORD}
MYSQL_DATABASE: ${MYSQL_DATABASE}
MYSQL_USER: ${MYSQL_USER}
MYSQL_PASSWORD: ${MYSQL_PASSWORD}
volumes:
- db_data:/var/lib/mysql
wordpress:
image: wordpress:6.5-php8.2-apache
depends_on:
- db
restart: unless-stopped
ports:
- "${WORDPRESS_PORT}:80"
environment:
WORDPRESS_DB_HOST: db:3306
WORDPRESS_DB_NAME: ${MYSQL_DATABASE}
WORDPRESS_DB_USER: ${MYSQL_USER}
WORDPRESS_DB_PASSWORD: ${MYSQL_PASSWORD}
volumes:
- wp_content:/var/www/html/wp-content
phpmyadmin:
image: phpmyadmin/phpmyadmin:latest
depends_on:
- db
restart: unless-stopped
ports:
- "${PHPMYADMIN_PORT}:80"
environment:
PMA_HOST: db
PMA_USER: root
PMA_PASSWORD: ${MYSQL_ROOT_PASSWORD}
UPLOAD_LIMIT: 256M
volumes:
db_data:
wp_content:
Docker Composeファイルができたので、このコマンドを使ってコンテナを起動する:
docker compose up -d
このコマンドはDocker Hubから必要なDockerイメージをダウンロードする。wp-contentやwp-adminのような主要なフォルダが得られます。
おめでとうございます!WordPressコンテナのセットアップが完了しました。 では、最後のステップに進みましょう。
ステップ3:WordPressサイトの作成完了
WordPressのDockerコンテナが稼働しています!さあ、WordPressのセットアップを終わらせましょう。
お気に入りのウェブ・ブラウザを開き、http://localhost:8080またはhttp://host-ip:8080にアクセスする。
リモート・サーバー上でDockerを実行している場合、サイトにアクセスするにはサーバーのIPアドレスを使用する必要がある。例えば、サーバーのIPアドレスが192.168.1.100の場合、http://192.168.1.100:8080。
画面の指示に従ってWordPressウェブサイトを設定します。WordPressダッシュボードとインターフェイスの言語を選択する必要があります。

サイトのタイトル、管理者ユーザー名、パスワードを入力します。セキュリティのため、必ず強力なパスワードを選んでください。

メールアドレスを入力してください。WordPressはこのアドレスを使って重要なお知らせを送信します。また、あなたのサイトを検索エンジンに表示させるかどうかを決めることもできます。
最後に、WordPressのインストールをクリックする。新しいログイン認証を使ってWordPressダッシュボードにアクセスしてください。
phpMyAdminは既にdocker-compose.ymlで定義されています。以下のURLで起動できます: http://localhost:8081 (あるいは何であれ) PHPMYADMIN_PORT あなたが設定した。環境).
おめでとう!あなたは今、Docker上でWordPressを動かしている。
DockerへのWordPressインストールに関するFAQ
既存のWordPressサイトをDocker化するには?
既存のWordPressサイトをDocker化するには、DockerにWordPressをインストールする。次に、Duplicator Proのような移行プラグインをインストールします。既存のサイトのバックアップを作成し、Import Backupsページで新しいサイトにインポートします。

Duplicatorは新しいWordPress Dockerサイトを既存のデータと置き換えます。これでDockerでWordPressサイトを管理できるようになります。
DockerとWordPress VMの違いは何ですか?
WordPressにVMを使用する場合、基本的には既存のコンピュータの中に全く新しいコンピュータを作成することになります。この仮想コンピューターは、メインシステムとは完全に切り離された独自のオペレーティングシステム(WindowsやLinuxなど)を実行します。
Dockerは異なるアプローチを取る。仮想マシン全体を作成する代わりに、アプリケーション(この場合はWordPress)とその依存関係をすべて、コンテナと呼ばれる自己完結型のユニットにパッケージ化する。このコンテナはホスト・オペレーティング・システムのリソースを共有するため、VMよりもはるかに軽量で効率的です。
ほとんどのWordPressユーザーにとって、Dockerはより合理的で開発者に優しいアプローチを提供する。しかし、絶対的な分離が必要な場合や、オペレーティング・システムを完全にコントロールしたい場合は、VMの方が望ましいかもしれません。
DockerでWordPressのバージョンを更新するには?
DockerでWordPressをアップデートするのは、思っているより簡単だ!まず、Docker Hubから最新のWordPressイメージを取り出します:
docker-compose pull wordpress
次に、WordPressコンテナを再作成してアップデートを適用します:
docker-compose up -d --build wordpress
このコマンドは、最新のイメージを使ってWordPressコンテナを再構築し、再起動する。
DockerでWordPressのファイルにアクセスするには?
DockerでWordPressのファイルにアクセスするには、プロジェクトフォルダでdocker execコマンドを使用します:
docker compose exec wordpress <some command>
Dockerを使ったWordPress開発はここから始まる
ここまでで、ローカルのWordPressサイトをDockerにインストールしたことになる!
しかし、本当の楽しみは初期設定にあるのではなく、その先にある。数秒で同一の開発環境を立ち上げ、プラグインの競合を心配することなくテストし、異なるPHPやWordPressのバージョンを試すことができる。
これまでは高価なサーバーのセットアップや複雑な仮想マシン構成が必要だった柔軟性だ。
クライアントサイトの構築、新機能のテスト、WordPress開発のゼロからの学習など、ニーズに合わせて拡張できるプロ級のワークフローを手に入れることができます。
ここで学んだことはすべて、他のアプリケーションのコンテナ化にも当てはまり、トップ・エージェンシーが日々実践している最新の開発手法への扉を開くことになる。
WordPress のデプロイメントを次のレベルに引き上げる準備はできていますか?Duplicator Proは WordPress サイトの移行、クローン作成、バックアップのプロセスを合理化します!
ここにいる間に、WordPressの追加ガイドが気に入るかもしれない: