1. HOME
  2. »
  3. プログラミング・Web
  4. »
  5. Docker
  6. »
  7. Docker Composeで自分のWordPressサイトをローカル開発環境に反映!

Docker Composeで自分のWordPressサイトをローカル開発環境に反映!

ローカルにWordPress開発環境を整えてテーマを作成することがあるのですが、単にローカルに環境を作っただけでは記事がなく、テーマのイメージが分かりません。@It_is_Rです。
かといって、testtestを繰り返して記事をつくるのも大変ですし、やっぱり自分のサイトをそのままローカルの開発環境にも反映させたいのでございます。

そんなわけで、今回はDocker Composeを使ったローカル開発環境に、自分のWordPressサイトを反映させる方法を紹介します。

目次
  1. Docker ComposeでローカルにWordPressの環境を整える
  2. 自分のサイトをローカルのWordPress環境に反映させる
  3. リンク先を変更する
  4. まとめ

Docker ComposeでローカルにWordPressの環境を整える

ではまず、Docker Composeを使ってローカルにWordPressの環境を整えてみましょう。

まず、好きな場所にフォルダを作り、その中へ移動します。今回は「mysite」というフォルダを作成しました。

$ mkdir mysite
$ cd mysite

そこにdocker-compose.ymlというファイルを作成します。

$ vim docker-compose.yml

docker-compose.ymlの中は以下のようにします。

version: '3'
services:
    wp:
        image: wordpress:latest
        ports:
            - "80:80"
        depends_on:
            - mysql
        volumes:
            - ./wordpress:/var/www/html/
        environment:
            WORDPRESS_DB_PASSWORD: p4ssw0rd
            WORDPRESS_DB_NAME: wp
        restart: always
    mysql:
        image: mysql:5.7
        environment:
            MYSQL_ROOT_PASSWORD: p4ssw0rd
            MYSQL_DATABASE: wp
        volumes:
            - ./db-data:/docker-entrypoint-initdb.d
        restart: always

さらに、次のコマンドを実行します。

$ docker-compose up

しばらくしてからhttp://localhost/を確認すると、WordPressの初期設定の画面が表示されます。

確認できたら、いったんctrl + cでストップします。

自分のサイトをローカルのWordPress環境に反映させる

続いて、自分のサイトをローカルに反映させたいと思います。

必要なデータは自分のサイトの「wp-content」フォルダ、データベース、そしてSearch Replace DB masterです。これらはあらかじめ準備しておいてください。

この「Search Replace DB master」は、後ほどurlを書き換える時に使用します。
こちらからダウンロードしておきましょう。

さて、この状態で現在のディレクトリを確認してみると、「db-data」と「wordpress」というフォルダが増えているのが分かります。

このdb-dataフォルダの中に、自分のWordPressサイトのデータベースファイル(xxxxx.sql)を入れます。
また、wordpressフォルダの中の、wp-contentを自分のサイトのwp-contentに置き換えます。
さらにwordpressフォルダの中に、先ほどダウンロードしたSearch-Replace-DB-masterを入れてください。

このままでは先ほどのコンテナが残っていますのでdownしておきましょう。

$ docker-compose down   
Stopping mysite_wp_1    ... done
Stopping mysite_mysql_1 ... done
Removing mysite_wp_1    ... done
Removing mysite_mysql_1 ... done
Removing network mysite_default

もう一度立ち上げてみましょう。今度はオプションをつけてバックグラウンドで起動してみます。

$ docker-compose up -d
Creating mysite_mysql_1 ... done
Creating mysite_wp_1    ... done

しばらく待ってみて、もう一度http://localhost/を開いてみます。

すると、自分のサイトがそっくりそのまま見れるようになります。

リンク先を変更する

しかしこのままだと、例えば記事へのリンクをクリックすると、本当のサイトへリンクされてしまいます。
そこで、リンク先をローカルのものに変更しましょう。

http://localhost/Search-Replace-DB-master/を見てみます。
すると次のような画面が表示されます。

Search Replace DB master

search for… : 元のurl
replace width … : 新しいurl

つまり今回は「search for…」の部分に自分のサイトのURL(xxxxx.comなど)を、「replace width…」の部分にlocalhostと入力します。
もしsslを使っている場合は、「search for…」の部分に「https://xxxxx.com」、「replace width…」の部分に「http://localhost」と入力すればいけるみたいです。

そしてまず「dry run」をクリックして、問題がなければ「live run」を押します。

これでURLが変更され、ローカルのページへのリンクに書き換わります。

まとめ

ローカルにWordPress開発環境を整えてテーマを作成するとき、やはり本来のサイトとローカルのサイトは同じものにしたいです。
今回はリモートのWordPressサイトを、Docker Composeを使ったローカルの環境にそのまま反映させる方法を紹介しました。

スポンサードリンク

関連コンテンツ

オススメ記事

【Bootstrap 4】ボタングループ使い方。ボタンの一まとめにする方法

Bootstrap4の使い方、第6回目です。 前回、Bootstrap4でのボタンの作り方を紹介しましたが、今回はそのボタンをグループにしてひとまとめにする方法です。 Bootstrapにはボ

FC2 blog customize

FC2ブログ ”最強” カスタマイズ入門講座。ブログ全体の幅を変更。

現実社会では殆ど言葉を発しない@It_is_Rです。だって、厄介なことになりたくないじゃん。 今回も前回に引き続き、FC2ブログカスタマイズの記事です。前回、ヘッダーのサイズを変更しましたが、ブ

リセットCSS は何を使う? まとめ8選と2019年版ランキング

Web開発でブラウザごとの表示の違いをリセットしてくれる リセットCSS というものがあります。 しかし、何を使っていいのかと感じている人もいると思います。 今回はこの リセットCSS につい

Bootstrap 4 を読み込む為の方法を徹底解説。パッケージマネージャーなど。

今回は Bootstrap 4 の使い方です。It_is_Rです。 では詳しくみていきましょう。 Bootstrap とは Bootstrap は Webサイトを制作するときに使う、

enchant.jsのロード画面を、好きな画像に変更する方法。

今日は爆睡していました。@It_is_Rです。 enchant.jsのロード画面はカッコわるいなとずっと思っていました。「あ、これenchant.jsで作ったんだな」って思われてしまうじゃないで

小学生からのJavaScript入門。画像の表示と移動をしてみよう!

小学生からのJavaScript入門、第3弾です。 今回はゲーム開発(かいはつ)へもう一歩踏み込んでみましょう! [serif icon="aru-s.jpg" name="アル"]うーん……

WordPress|特定カテゴリーに属する記事を一覧表示させる方法!!

今まで、何度かに分けて書いた記事でも、その一覧がなかったので見にくいなーと思っていた@It_is_Rです。 昨日、記事の一覧表示をするショートコードを作って、記事の一覧が欲しい記事にだけ貼り付けてみ

Scratchでピアノを 作ってみよう!

小学生から始めるScratch入門。ピアノ鍵盤を作って音を鳴らそう!

小学生から始めるScratch入門です。 前回はじゃんけんゲームを作りました。 今回はピアノの鍵盤を作って、音を鳴らしてみましょう。 プロローグ [serif icon="ar

zsh

enhancd で cd コマンドを超便利に! インストールと使い方。

曲を作っても、再生数が伸びない。@It_is_Rです。 やかましいわ。 ターミナルをカッコよくするシリーズ4回目です。 今回は enhancd というプラグインを使って cd コマンドを便利

キャラを決まった間隔ずつ動かすよ!

小学生からのJavaScript入門。キャラを決まった間隔ずつ動かす!

小学生からのプログラミング入門講座(にゅうもんこうざ)、第8弾です。 前回は、キャラクターの画像(がぞう)をスムーズに動かす方法でしたが、スピードが速すぎたので、画像の移動間隔(かんかく)を短く

コメントをどうぞ!

メールアドレスが公開されることはありません。