LoginSignup
1
2

More than 3 years have passed since last update.

Docker + WordPress 環境構築(Mac)

Last updated at Posted at 2019-12-01

概要

wordpressの環境をdockerで用意する方法をまとめていきます。

前提

  • mysql 5.7
  • Docker for Mac 無ければDockerの公式からインストール

コンテナ作成

それではdocker-compose.ymlでコンテナを作成していきます。

適当にディレクトリを用意してdocker-compose.ymlファイル作成

$ mkdir docker
$ cd docker
$ vim docker-compose.yml

docker-compose.ymlファイルを下記のように記述

docker-compose.yml
version: '3.3'

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

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

Sequel ProでDBに接続したいので今回はmysql5.7系でインストールします。8.0系はSequel Proのバージョンによって動かないことがあるので対策が必要です(下記リンクを参考)

MySQL8.0.x に Sequel Pro で接続する
MySQL8.0でSequel Proを使えるようにする

またSequel Proに接続するためにpostsを追記していますが

ports:
 - "3306:3306"

3306が既にlocalでmysqlが起動している場合があるので、3306以外を使う必要があります。

volumes:
  - ./wordpress:/var/www/html 

上記はDockerのバインド・マウントを利用して、./wordpress(ホスト側のディレクトリ)と/var/www/html以下のwordpressのファイル群(コンテナ側のディレクトリ)を接続しアクセスできるようにします。

このバインド・マウントによりホスト側のwordpressのファイルを編集するとコンテナ側にも反映させることができます。

参考:
https://qiita.com/mom0tomo/items/7e611ac829863d4c5c82

docker-compose.ymlを作成したディレクトリ内でコンテナの作成と起動

$ docker-compose up -d

コンテナが生成されているか確認

$ docker-compose ps
       Name                  Command           State            Ports         
------------------------------------------------------------------------------
docker_db_1          docker-entrypoint.sh      Up      0.0.0.0:3306->3306/tcp,
                     mysqld                            33060/tcp              
docker_wordpress_1   docker-entrypoint.sh      Up      0.0.0.0:8000->80/tcp   
                     apach ...   

生成、起動されているのでブラウザからhttp://localhost:8000/アクセスすると...

スクリーンショット 2019-12-01 16.01.28.png

wordpressの画面が見れました。

Sequel Proで接続

最後にDB管理ツールのSequel Proでmysqlコンテナに接続していきます。
スクリーンショット 2019-12-01 16.13.07.png
docker-compose.ymlのDBの情報を入力して接続すると成功し

スクリーンショット 2019-12-01 16.14.15.png

デフォルトでテーブルがいくつか確認できます。

最後に

今回は以上です。

自分用のwordpressの環境が整ったので何か作成していきます。
ありがとうございました。

参考

https://qiita.com/mom0tomo/items/7e611ac829863d4c5c82
https://qiita.com/ucan-lab/items/b68db1db931c954da921

1
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
2