Contents
【簡単】WordPress環境をDockerで構築手順
1)作業フォルダを作成
2)1)内に「docker-compose.yml」を作成
version: "3.7"
services:
db:
image: mysql:8.0
container_name: mysql8
restart: always
environment:
MYSQL_ROOT_PASSWORD: password # rootユーザのパスワード
MYSQL_DATABASE: db_local # WordPress用データベース名
MYSQL_USER: wp_user # WordPress用データベース接続ユーザ名
MYSQL_PASSWORD: password # WordPress用データベース接続パスワード
WordPress:
image: wordpress:latest
container_name: wordpress
restart: always
depends_on:
- db
ports:
- 10090:80
environment:
WORDPRESS_DB_HOST: db:3306 # データベースサーバ名:ポート番号
WORDPRESS_DB_USER: wp_user # WordPress用データベース接続ユーザ名(dbの内容に合わせる)
WORDPRESS_DB_PASSWORD: password # WordPress用データベース接続パスワード(dbの内容に合わせる)
WORDPRESS_DB_NAME: db_local # WordPress用データベース名(dbの内容に合わせる)
WORDPRESS_DEBUG: 1 # デバッグモードON
volumes:
- ./wp-content:/var/www/html/wp-content
# - ./html:/var/www/html
phpmyadmin:
image: phpmyadmin/phpmyadmin:latest
container_name: phpmyadmin_ingrid
restart: always
depends_on:
- db
ports:
- 10099:80
volumesは画像のパス等にあわせてください
ボリュームマウントの概念
Dockerコンテナは、デフォルトで隔離された環境を提供します。これにより、コンテナ内のファイルシステムはホストマシンから独立しています。しかし、多くの場合、ホストマシン上のファイルやディレクトリをコンテナ内で直接利用したい場合があります。このような場合にボリュームマウントが使用されます。
ボリュームマウントの構文は以下の通りです
volumes:
- <ホストのパス>:<コンテナのパス>
3)作業ディレクトリにて下記コマンド
docker-compose up -d
多少時間がかかるかもしれません。
4)「Docker Desktop」で確認
エラーログの確認方法
1. Dockerコンテナ内でWordPressのエラーログを有効化
まず、WordPressのwp-config.php
にエラーログを有効にする設定を追加します。
phpコードをコピーするdefine('WP_DEBUG', true);
define('WP_DEBUG_LOG', true);
define('WP_DEBUG_DISPLAY', false);
この設定により、エラーログがwp-content/debug.log
に保存されます。
2. Dockerコンテナ内でエラーログを確認する
方法1: docker-compose exec
でコンテナ内に入って確認
Dockerコンテナ内に直接アクセスして、エラーログを確認することができます。
bashコードをコピーするdocker-compose exec <コンテナ名> bash
コンテナ内に入ったら、エラーログファイルにアクセスします。
bashコードをコピーするcat /var/www/html/wp-content/debug.log
※ <コンテナ名>
は、WordPressが稼働しているコンテナの名前に置き換えてください。
方法2: docker-compose logs
でコンテナのログを直接表示
WordPressやApache/Nginxのエラーログは、コンテナの標準出力にも表示される場合があります。以下のコマンドでログ全体を確認できます。
bashコードをコピーするdocker-compose logs -f <コンテナ名>
上記コマンドで、リアルタイムにエラーログを追跡しながら確認できます。
方法3: ログファイルをホストマシンにマウント
Dockerのdocker-compose.yml
ファイルで、WordPressのwp-content
ディレクトリをホストマシンと共有すると、ホスト側で直接debug.log
を確認できます。たとえば、以下のように設定を変更します。
yamlコードをコピーするservices:
wordpress:
volumes:
- ./wp-content:/var/www/html/wp-content
これにより、./wp-content/debug.log
でホスト側からログを確認できるようになります。
参考サイト
【入門】Dockerで環境構築|WordPress環境をローカルPCに作ろう!
https://coosy.co.jp/blog/docker-environment