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を使ったローカルの環境にそのまま反映させる方法を紹介しました。

スポンサードリンク

関連コンテンツ

オススメ記事

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

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

今月の残り日数を計算するべ!

小学生からのJavaScript入門。今月の残り日数を計算してみよう!

小学生からのJavaScript入門、第2弾です。 今回はJavaScriptでの演算(えんざん)の方法を学び、今月の残り日数を計算してみましょう。 演算というのは、足したり、引いたり、割った

キーボードで画像を動かすよ!

小学生からのJavaScript入門。キー入力でキャラを動かしてみよう!

小学生からのJavaScript入門講座(にゅうもんこうざ)、第4弾です。 前回はHTMLでりこちゃんの画像を表示し、クリックすると前に一歩動くというのをJavaScriptで作りました。 J

宇宙一分かりやすい JavaScript のかなり詳しい基本の解説。

宇宙一分かりやすい JavaScript のかなり詳しい基本の解説。

JavaScriptを使ってゲームを作成するのが好きです。@It_is_Rです。 JavaScriptはWebページに動きを出すのによく使われ、ブラウザゲームなども作ることができます。 今回は

【Xcode7】Swift2でMacアプリ開発。Storyboardでボタンを作る。

喧嘩するほど仲がいいとは言いますが、喧嘩する相手がいません。友達がいないということでしょうか。@It_is_Rです。 前回、StoryboardでMacのウィンドウに文字を表示しました。しかし、

【 Bootstrap 4 】全体的な機能の解説と、Alert の使い方。

頭がお花畑の@It_is_Rです。 今回からは Bootstrap 4 の使い方について、詳しく書いていこうと思います。 このシリーズの、前回の記事はこちらです。 Bootstrap 4 を

【Android Studio】じゃんけんゲームの作り方(アプリ開発の基本)

限りなくじゃんけんが弱い@It_is_Rです。 Androidアプリ開発、11回目となりました。 そろそろ何かアプリを作ってみたいですよね。基本は大事ですが、一番つまらないですね。 そこ

ファイルを分けるべよ!

小学生からのJavaScript入門。ファイルを分けて管理してみよう!

小学生からのJavaScript入門講座(にゅうもんこうざ)、第5弾です。 前回はりこちゃんを方向キーで操作(そうさ)することができるようになりました。 しかしプログラムを作ってくと、コンピュ

【Gitの使い方 – その1】GitHubのアカウントを取得する方法!

Gitを使うとバージョン管理が簡単になりますが、それ以前に自分の頭の中を管理するのが大変な@It_is_Rです。 Gitの使い方をいくつかの記事に分けて紹介していきたいと思います。 まず今回は

Pug

PugでPHPを使うための、最もスマートで分かりやすい方法

HTMLを書くときPugを使うととても便利なのですが、PHPを書きたいと思ったときは少し工夫が必要になります。 ドットや縦棒を使う方法もありますが、無理やり感が否めません。 また、PugでPH

コメントをどうぞ!

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