2
5

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

WordPressのローカル開発環境にDocker(docker-compose)を用いて開発環境を構築

2
Last updated at Posted at 2018-10-21

Wordpressのテーマをカスタマイズするにあたりローカルで作業する必要があったのですが、MAMPの調子が悪く、新しく開発環境を作らねばならなくなりました。 それならばDocker先生にお世話になろうとdocker-composeにてローカル開発環境を構築したのでここに記します。

作業環境

  • OS: macOS High Sierra 10.13.2
  • Docker Version: 17.09.1-ce-mac42 (21090)
  • docker-compose version: 1.17.1, build 6d101fb

作業内容

$ mkdir work_dir
$ cd work_dir
$ vi docker-compose.yml
Note-----------------
以下を記述

version: '2'
services:
  db:
    image: mysql:5.7
    volumes:
      - "./.data/db:/var/lib/mysql"
    environment:
      MYSQL_ROOT_PASSWORD: wordpress
      MYSQL_DATABASE: wordpress
      MYSQL_USER: wordpress
      MYSQL_PASSWORD: wordpress
    ports:
      - "3306:3306"

  wordpress:
    depends_on:
      - db
    image: wordpress:latest
    volumes:
      - ./public_html:/var/www/html
    links:
      - db
    ports:
      - "8000:80"
    environment:
      WORDPRESS_DB_HOST: db:3306
      WORDPRESS_DB_PASSWORD: wordpress
-----------------------
$ mkdir .data public_html

作業自体は以上となります。
後は解説なので気になる方だけ見てください。
今回作成するコンテナは2つで、dbとwordpressそれぞれが立ち上がるものとなります。 どちらも公式のイメージを用い、

services:
  db:
    image: mysql:5.7

  wordpress:
    image: wordpress:latest

コンテナとホストでディレクトリを共有しています。

services:
  db:
    volumes:
      - "./.data/db:/var/lib/mysql"

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

また、環境変数は .envを作らず、ベタで書いています。
今回はローカルでのみを想定しているため問題ないかな?という判断ですね。
後は以下のようにコンテナ立ち上げ時の順番を定義(depends_on)して、dbコンテナにwordpressコンテナからリンクを貼り参照できるようにした感じですね。

  wordpress:
    depends_on:
      - db
    links:
      - db

あまり複雑な事をせず、簡単な設定で仮想環境を立ち上げられるのは本当に便利ですね。 docker-compose感謝です。

2
5
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
2
5

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?