WordPress
 | 

【10分で完了】M1 MacのDockerでWordPressのローカル環境を構築する方法

M1 MacのDockerで、WordPressのローカル環境を構築する方法です。

 

MAMPでうまく構築できない...という方はぜひ試してみてください。

複雑な手順は一切無いので、Dockerを初めて使う方もぜひ試してみてください。

 

M1以前はMAMPでローカル環境を構築していたのですが、M1に変えたら何故かうまくいかず...。

そこで、MAMPではなくDockerでローカル環境を構築してみたところ、思いの外簡単でした。

 

しかし、Dockerはまだまだ慣れていないので、備忘録も兼ねてこの記事を書くことにしました。

 

■参考記事
https://qiita.com/Nerosui777/items/dfef9612e4bbb86af3b5

手順

  1. Dockerをインストール
  2. WordPress用のディレクトリを作成&必要なファイルを配置
  3. Dockerで少しだけ操作
  4. wp-config.phpを書き換える
  5. 終わり

1. Dockerをインストール

以下記事を参考にDockerをインストールします。

https://qiita.com/kurkuru/items/127fa99ef5b2f0288b81

 

インストール後、以下コマンドを実行。

docker version

Dockerのバージョンが返ってきたらOKです。

返ってこない場合、ターミナルを再起動してみる。パスが通っているか確認する。などを試してみて下さい。

「docker パス 通す」なので検索すれば解決策が出てくるはずです。

(ここで詰まる可能性はほぼ無いと思いますが...)

 

インストールしたら、Dockerを起動しておきましょう。

メニューバーにDockerのアイコンがあればOKです。

2. WordPress用のディレクトリを作成&必要なファイルを配置

公式サイトから必要なファイルをダウンロードします。

https://ja.wordpress.org/download/#download-install

その後、任意のディレクトリにファイル一式を配置してください。

 

今回は以下のようなディレクトリ構成とします。

wordpress
└ index.php
└ license.txt
└ readme.html
└ wp-activate.php
└ wp-admin/
└ wp-blog-header.php
└ wp-comments-post.php
└ wp-config-sample.php
└ wp-config.php


・ // 略

3. Dockerで少しだけ操作

本当に少し操作するだけです。

ファイルをひとつ作り、コマンドを一つ実行するだけです。

ファイルを作成

wordpress/ディレクトリの中にdocker-compose.ymlという名前でファイルを作成して、以下コードをそのまま貼り付けます。

 

version: '3.3'

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

  db:
    image: mariadb
    container_name: wp_portfolio_mysql
    ports:
      - "4306:3306"
    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作成後は、以下のようなディレクトリ構成になります。

wordpress
└ docker-compose.yml // これを新規作成
└ index.php
└ license.txt
└ readme.html
└ wp-activate.php
└ wp-admin/
└ wp-blog-header.php
└ wp-comments-post.php
└ wp-config-sample.php
└ wp-config.php


・ // 略

■Tips
mysqlではなく、mariadbを使っています。
参考記事によると、mysqlだとうまく動かないとのことです。Dockerの参考記事ではほとんどmysqlになっているので、ここで詰まる方がいそうですね...。

Dockerコマンドを実行

ターミナルでdocker-compose.ymlのディレクトリに移動します。

その後、以下コマンドを実行します。

docker-compose up -d

Docker上にWordPressを動かすために必要なデータ(サーバなど)を作成するコマンドです。

 

4. wp-config.phpを書き換える

wp-config.phpを開き、以下のように書き換えます。

 

/** WordPress のためのデータベース名 */
define( 'DB_NAME', 'wordpress' );

/** MySQL データベースのユーザー名 */
define( 'DB_USER', 'wordpress' );

/** MySQL データベースのパスワード */
define( 'DB_PASSWORD', 'wordpress' );

/** MySQL のホスト名 */
define( 'DB_HOST', 'db:3306' );

(ユーザー名などはdocker-compose.ymlで自由に変更できます)

 

以上で環境構築は終了です。

WordPressがローカルで動くか確認する

試しに、http://localhost:3001/にアクセスしてみましょう。

(ポート番号の3001はdocker-compose.ymlで自由に変更できます)

 

インストール画面が開けば成功です。

ユーザー名などは、先程wp-config.phpで設定した値にしましょう。

まとめ

Dockerを初めて使う方でも簡単にできると思うので、MAMPで上手くいかなかった方はぜひ試してみてください。