WockerでWordPressの本番環境をローカルに持ってくる方法

CMS

投稿日

WockerでWordPressの本番環境をローカルに持ってくる方法
Wockerには便利なコマンドがいくつかあって、その中にsqlを取り込んでくれるものがあります。 そういった記事を見つけたのですがバージョンが古いようでしたので自分用に書き直しました。
参考サイト
[WIP] Wocker を使って公開されているサイトをローカルにコピーする

Wockerの起動

すでにWockerが入っている前提での記載になります。 Wockerを導入されてない方はこちらを参考にしてください。 ますはWockerを起動させます。 vagrant up それからSSLにログイン vagrant ssh それからコンテナの起動 wocker start <CONTAINER> ※<CONTAINER>は起動させたいコンテナ名です。

sqlのインポート

本番環境から吸い出したsqlファイルをWockerの使用しているcontainerに置いて、そのファイルをコマンドを叩いて取り込みます。 ※私はcontainerの直下にいつもおいてます。 wocker wp db import <sql> ※<sql>はsqlのファイル名

URLの置換

sqlを取り込んだだけだとsql内のURLが本番環境のままなのでそれを置換します。
問題ないかテスト
wocker wp search-replace '公開されているサイトのURL(http://等はないほうがいい)''wocker.dev' --dry-run
置換実行
wocker wp search-replace '公開されているサイトのURL(http://等はないほうがいい)''wocker.dev'
公開サーバーのwp-contentディレクトリを全てWockerの新しいコンテナに入れ替えれば本番環境と同じ構成になります。

おまけ

新規の案件でsqlもらっただけだと自分のアカウントがなくてログインできないケースもあるかと思います。 そんな時はwp−cliで簡単にユーザーを作れるのでオススメです。

ユーザー作る場合

wocker wp user create <user名> <メールアドレス> --role=<権限名> 例 wocker wp user create conti hogegoe.com --role=administrator 他にもオプションが色々あってパスワードとかもしていできたりします。 詳細はドキュメントをご確認ください。 WP-CLI公式ページ