カテゴリー

DockerでローカルPCにWordPress環境を構築する

今までMAMPやLocal(旧:Local by Flywheel)を使ってローカルの環境構築をしてきましたが、いつかは触らねばならないと思っていたDockerでWordPressを構築することにしました。

Dockerのインストールや使い方はここでは省略し、複数のWordPressプロジェクトをDocker上で開発する為に実行したステップを残しておくことにしました。

プロジェクトフォルダを作る

ローカルの開発したいディレクトリに任意の名前でフォルダを作成します。ここでは「sometimes」とします。

プロジェクトフォルダの中身

環境設定ファイルを作る

そのフォルダの中に、docker-compose.ymlというファイルを新規作成し、中に以下の内容を記述します。

services:
  wordpress:
    image: wordpress:latest
    container_name: wordpress_sometimes
    volumes:
      - ./wordpress:/var/www/html
    environment:
      - WORDPRESS_DB_NAME=wordpress
      - WORDPRESS_TABLE_PREFIX=wp_
      - WORDPRESS_DB_HOST=db
      - WORDPRESS_DB_USER=root
      - WORDPRESS_DB_PASSWORD=password
    depends_on:
      - db
      - phpmyadmin
    restart: always
    ports:
      - "8081:80"
    networks:
      - network_sometimes

  db:
    image: mariadb:latest
    container_name: db_sometimes
    volumes:
       - db_data_sometimes:/var/lib/mysql
    environment:
      - MYSQL_ROOT_PASSWORD=password
      - MYSQL_USER=root
      - MYSQL_PASSWORD=password
      - MYSQL_DATABASE=wordpress
    restart: always
    networks:
      - network_sometimes

  phpmyadmin:
    platform: linux/amd64
    depends_on:
      - db
    image: phpmyadmin/phpmyadmin:latest
    container_name: phpmyadmin_sometimes
    restart: always
    ports:
      - "8184:80"
    networks:
      - network_sometimes
    environment:
      PMA_HOST: db
      MYSQL_ROOT_PASSWORD: password

volumes:
  db_data_sometimes:

networks:
  network_sometimes:  # ここでネットワークを定義

Dockerで他のWordPressをプロジェクトを管理している場合、青くハイライトされている箇所を一意の文字、数字に変更すると、他のプロジェクトを立ち上げていても競合せずに両方アクセスしブラウザ表示することができます。

他のプロジェクトと差異のある部分をハイライト

プロジェクトの起動・停止(削除)

プロジェクトフォルダの中でターミナルを起動し、docker-compose up -dを入力&エンターを押下すると、wordpressフォルダが生成されます。

今回の設定では、WordPressコンテナのホスト側のポートを 8081 に設定したのでhttp://miicoo.shopにアクセスすると、いつものWordPressの初期設定画面が表示されるようになりました。

最後に同じターミナルでdocker-compose downを入力&エンターを押下し、コンテナ・ネットワーク・ボリューム・イメージを削除して終了です。

新着情報

TOP PAGE