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

さまざまな国(Web サーバーまたは環境)に商品を輸送する必要がある船団(アプリケーション)を想像してみてください。各国には独自の規則や規制があり、輸送がロジスティクスの悪夢になる可能性があります。
Docker は、貨物船で見かける標準的な輸送コンテナのように機能します。アプリケーションとそのすべての依存関係を自己完結型ユニットにパッケージ化します。
このコンテナは、基盤となるオペレーティングシステムに関係なく、Docker をサポートする任意のシステムに簡単に輸送して実行できます。
Docker で WordPress を使用する理由
Docker は、ローカルの WordPress 開発を大幅にスムーズかつ効率的にします。
通常、LAMP スタック(Linux、Apache、MySQL、PHP)をインストールする必要があります。完全に異なる Web 開発環境をインストールしたくない限り、この環境に縛られることになります。
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コンテナの構築と実行に使用されるDocker Engineをインストールします。
幸いなことに、Dockerはすべての主要なオペレーティングシステムで利用可能です。macOS、Windows、Linuxでのセットアップ方法を説明します。
macOSにDockerをインストールする
Macを使用している場合は、次の要件を満たしていることを確認してください。
- 4GBのRAM
- 最新のmacOSバージョン
- Rosetta 2(Apple silicon搭載のMacの場合)
次に、Mac用のDocker Desktopをダウンロードします。コンピューターによってバージョンが異なるため、正しいバージョンを使用してください。
ダウンロードが完了したら、Docker.dmgファイルをダブルクリックします。Dockerアイコンをアプリケーションフォルダにドラッグアンドドロップします。

アプリケーションフォルダからDocker Desktopを開きます。プロンプトが表示されたら、インストールを承認してください。メニューバーにDockerアイコンが表示されれば、実行中です。
WindowsにDockerをインストールする
Windowsユーザーの場合は、コンピューターが次の要件を満たしていることを確認してください。
- 64ビットプロセッサ
- 4GBのRAM
- BIOS/UEFIでハードウェア仮想化を有効にする
その後、公式のWindows用Docker Desktopダウンロードページにアクセスします。コンピューターに適したバージョンをダウンロードしてください。
ダウンロードした.exeファイルを開き、画面の指示に従います。Docker DesktopはC:\Program Files\Docker\Dockerに自動的にインストールされます。
WSL 2またはHyper-Vのいずれかを使用します。選択したバックエンドに基づいて適切な方を選択してください。コンピューターが1つしかサポートしていない場合は、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ファイルを使用すると、機密情報をコンポーズファイルから除外し、後でポートや認証情報を簡単に変更できます。
次に、docker-compose.ymlファイルを作成します。新しいプロジェクトディレクトリに保存します。
WordPressコンテンツ管理システムをインストールするには、このコードをYAMLファイルに貼り付けます。
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のセットアップを完了する時間です。
お気に入りのWebブラウザを開き、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で既に定義されています。http://localhost:8081(または.envで設定したPHPMYADMIN_PORT)で開くことができます。
おめでとうございます!これでDocker上でWordPressを実行できます。
DockerでのWordPressインストールに関するFAQ
既存のWordPressサイトをDocker化するにはどうすればよいですか?
既存のWordPressサイトをDocker化するには、DockerにWordPressをインストールします。次に、Duplicator Proのような移行プラグインをインストールします。既存サイトのバックアップを作成し、バックアップのインポートページで新しいサイトにインポートします。

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開発はここから始まります
これで、DockerにローカルWordPressサイトがインストールされました!
しかし、本当の楽しさは初期設定ではなく、その後に続くものです。数秒で同等の開発環境を起動し、恐れることなくプラグインの競合をテストし、さまざまなPHPまたはWordPressバージョンを試すことができるようになりました。
これは、かつては高価なサーバーセットアップや複雑な仮想マシン構成を必要とした柔軟性です。
クライアントサイトの構築、新機能のテスト、またはWordPress開発のゼロからの学習のいずれであっても、ニーズに合わせて拡張できるプロフェッショナルグレードのワークフローが利用できるようになりました。
ここで学んだすべては、他のアプリケーションのコンテナ化にも適用され、トップエージェンシーが日々使用している最新の開発プラクティスへの扉を開きます。
WordPressのデプロイメントを次のレベルに引き上げる準備はできましたか?Duplicator Proは、WordPressサイトの移行、クローン作成、バックアップのプロセスを合理化します!
滞在中はこちらの追加WordPressガイドもおすすめです: