第18話

WordPressのローカル開発環境をdocker-composeで構築する方法

こんにちは!Takuya.B(@TB_IQ)です。

僕はこれまでローカル環境でWordPressの開発を行う際はMAMPを使っていましたが、データベース接続エラーが頻発するなどの問題もあり、この度dockerでローカル開発環境を構築することにしました。

本記事ではdocker-composeを使ってWordPressのローカル開発環境を構築する方法を紹介します!

スポンサーリンク

docker-composeでWordPressの開発環境作るお

ディレクトリ構造は以下のようにしてください。太字はディレクトリを表しています。

  • docker-compose.yml
  • html

M1 Mac以外をお使いの方は以下のコードをdocker-compose.ymlをそのままコピーしてください。

version: '3.3'

services:
   wordpress:
     image: wordpress:latest
     depends_on:
       - db
     ports:
       - "80:80"
     restart: always
     environment:
       WORDPRESS_DB_HOST: db:3306
       WORDPRESS_DB_USER: wordpress
       WORDPRESS_DB_PASSWORD: wordpress
       WORDPRESS_DB_NAME: wordpress
     volumes:
       - ./html:/var/www/html

   db:
     image: mysql:5.7
     volumes:
       - db_data:/var/lib/mysql
     restart: always
     environment:
       MYSQL_ROOT_PASSWORD: root
       MYSQL_DATABASE: wordpress
       MYSQL_USER: wordpress
       MYSQL_PASSWORD: wordpress
       
volumes:
    db_data:

M1 Macをお使いの方は以下のコードをdocker-compose.ymlにコピーしてください。

version: '3.3'

services:
   wordpress:
     image: wordpress:latest
     depends_on:
       - db
     ports:
       - "80:80"
     restart: always
     environment:
       WORDPRESS_DB_HOST: db:3306
       WORDPRESS_DB_USER: wordpress
       WORDPRESS_DB_PASSWORD: wordpress
       WORDPRESS_DB_NAME: wordpress
     volumes:
       - ./html:/var/www/html

   db:
     platform: linux/x86_64
     image: mysql:5.7
     volumes:
       - db_data:/var/lib/mysql
     restart: always
     environment:
       MYSQL_ROOT_PASSWORD: root
       MYSQL_DATABASE: wordpress
       MYSQL_USER: wordpress
       MYSQL_PASSWORD: wordpress
       
volumes:
    db_data:

docker-compose.ymlを作成したら、以下コマンドを入力。

docker-compose up -d

http://localhostを開いてWordPressのスタート画面表示されたらOKです。

スポンサーリンク

ファイルアップロードサイズを変更したい場合

このWordPress環境ではデフォルトでアップロードできるファイルサイズ上限が2M となっています。

これではzip化したWordPressテーマや画像ファイルがアップロードできない場合もでてきます。

その際にアップロードサイズを変更するには以下手順を試してみてください。

1. コンテナ内に入る

まずはWordPressコンテナの内に入りましょう。ターミナルを開いてください(Windowsの方はUbuntu等開いてください)。

そして以下コマンドを入力

docker-compose exec web bash

2. viエディタのインストール

続いて、コンテナ内でファイルの作成・編集ができるようにviエディタをインストールしましょう。

apt-get update
apt-get install -y vi

3. php.iniファイルの作成

以下、ディレクトリにphp.iniを作成しましょう。

vi /usr/local/etc/php/php.ini

php.ini ファイル内には以下を記述してください。

post_max_size = 10M
upload_max_filesize = 10M
max_execution_time = 300

ファイル生成が完了したら以下コマンドで再起動しましょう。

service apache2 restart

ブラウザを確認してアップロード上限が10M に変わっていれば成功です。

上限を変更したい場合はphp.ini10Mの箇所を変更してください。