2019.04.15 2020.02.10

Xserver WordMoveでWordPressを速攻ローカル環境に持ってくる

Vagrantを使ってローカルにWordpress環境を作るまでは一瞬でできるのですが、WordMoveを使うときにいつも手間取っちゃうので備忘録としてアウトプットすることにします。SSHの接続先サーバーは大好きXserverです。

環境

macOSでの解説になります。

  • MacBook Pro (15-inch, 2016)
  • macOS Mojave 10.14.4
  • Xserver
  • ターミナル iTerm2

やること

今回のやることです。主にターミナル、通称「黒い画面」での操作がほとんどです。

苦手意識のある方がいるかもしれませんが全然大丈夫です。今回はほぼ全てコピペで解決します。

  1. Vagrantにログイン
  2. 秘密鍵と公開鍵を生成
  3. 公開鍵をXserverに登録
  4. XserverにSSH接続チェック
  5. WordMoveの設定
  6. WordMoveでPULLる

Vagrantなどの準備や環境は、すでに準備済みという前提で進めていきます。

Vagrantにログイン

Vagrantを展開したフォルダに移動してVagrantを起動します。※vagrantfileのあるフォルダ

$ vagrant up //Vagrant起動
$ vagrant ssh //Vagrantにログイン

秘密鍵と公開鍵を生成

そんままssh-keygenコマンドで鍵を生成します。

vagrant@eightyeight:~$ ssh-keygen
Generating public/private rsa key pair.
Enter file in which to save the key (/home/vagrant/.ssh/id_rsa): //ここはそのままEnter
/home/vagrant/.ssh/id_rsa already exists.
Overwrite (y/n)? y
Enter passphrase (empty for no passphrase): //ここのPassは覚えておく
Enter same passphrase again:
Your identification has been saved in /home/vagrant/.ssh/id_rsa. //秘密鍵
Your public key has been saved in /home/vagrant/.ssh/id_rsa.pub. //公開鍵

公開鍵をコピー

公開鍵は相手側に渡しておくもので、今回の場合はXserverに持っていてもらいます。Xserverに登録するために準備します。

$ sudo chmod 600 ~/.ssh/id_rsa.pub //エラーが出ることがあるようなので、パーミッションを変更しておきます。
$ cat ~/.ssh/id_rsa.pub //表示された文字を全部コピーする

表示されているssh-rsaからvagrant@~まで全てコピーします。

公開鍵をXserverに登録

サーバーパネルにログインします。ログイン後、Wordpressをインストールしているドメインに移動します。

アカウント > SSH設定をクリックします。

SSH設定 > 公開鍵登録・設定
さっきコピーした公開鍵をそのまま全てペーストして登録します。Xserver側の準備はこれで完了です。

XserverにSSH接続チェック

まずXserverにSSHでログインできるか確認します。インフォパネルに表示されるサーバーIDが必要です。

サーバーIDはこれです。
サーバー番号やらなんやらで混乱してなかなか見つけることができませんでしたが、インフォパネルにログインすると確認することができます。

$ ssh サーバーID@サーバーID.xsrv.jp -p 10022
$ exit //接続が確認できたらexitでログアウト

ログアウト後ターミナルはそのままにしておいてください。

Wordmoveの設定

最後の準備としてWordMoveの設定をします。本番環境にあるwp-config.phpを見てデータベースやID、パスワードを入力します。本番環境のルートパスも間違え易いのでしっかり確認しましょう。

/home/サーバーID/ドメイン名/public_html //Xserverの場合はだいたいこんな感じになると思います。

WordMoveの設定については、こちらの方が詳しく解説してくれていますので是非参考にしてください。VVV+WordMoveでWordPressのローカル環境を構築するぞッ!【Xserver】

PULLる

ターミナルはVagrant sshでログインしたままWodMoveを動かしていきます。
消しちゃった人は改めてvagrant sshでログインしてください。

$ vagrant up //vagrant haltしてない限りは必要なし
$ vagrant ssh //vagrantにログイン

Vagrantの中のvagrantフォルダに移動します。

vagrant@eightyeight:~$ cd /vagrant

ここでWordMoveコマンドを使うことができます。各コマンドを打つとWordMoveを使うことができます。

vagrant@eightyeight:/vagrant$ wordmove pull --all //全部引っ張ってくる
//WordMoveオプション 
//pushに変えるとローカルから本番へ
$ wordmove pull –all → WordPressまるごと
$ wordmove pull -w → WordPressソースファイル
$ wordmove pull -t → テーマファイル
$ wordmove pull -d → データベース
$ wordmove pull -p → プラグイン
$ wordmove pull -u → uploads
//オプション複数指定も可能
$ wordmove pull -t -d -u

以上がXserverにてWordMoveでPULLる最速設定です。

難しいことは置いといてとにかく動かしてみることが大事かなと思います。出てきたエラーをググっていくことが、スキルアップへの近道です。

最近は他にもローカルで開発できる環境が色々ありますが、WordMoveを利用できるVagrantはまだまだ便利で現役だと思います。

詰まったとこ

  • 公開鍵と秘密鍵の仕組みを理解せずに、他の方の解説を見て適当にやっていたのが原因だった。
  • XserverのサーバーIDがどれのことかわからなかった。
  • ルートを間違えていた。

WordMoveの設定は、Xserverルートパスはftpをつないでみたりwp-config.phpを確認すればスムーズにできると思います。

おわりに

ちなみにですが、試しにと思ってpushしちゃうとローカルのものがそのまま全部本番にいっちゃうので要注意です。本番がそっくり変更されてしまいます。

開発を始めるとき、まずデータベースだけでもPullすると記事や画像などが反映されるので、初めてのときは僕は感動しました。

今回解説したXserverは、僕も4年以上利用しているオススメのレンタルサーバーです。料金もそのままに、まめにアップグレードもされていて最近もSSDの処理速度また早くなりました。

サーバーもクラウド時代になってきていますが、管理など工数も増えるので、自社でエンジニアを抱えているのでなければ、結果的にコストもかかってしまうので小中規模の案件などXserverはまだまだお世話になり続ける所存です。

ほしい物リスト