]]>では前回の「導入編」でソフトのインストールが完了してるものとして進めて行きます!※ちなみに前提としてこの記事は「既にサーバーにアップしてあるWordPressのデータを、ローカル環境に楽に引っ張って来て、尚且つローカルでいじったものをまたサーバー側に楽にUPする」っていう事を目的としたVAGRANT記事となります。※つまり下記の方は対象外となります。「データベース?なにそれ?」っていう方はまだこの記事は早いかもしれません。追記@2019/12/15下記の組み合わせのバージョンでも動きました。2.3.31VCCWで元になるファイルをゲット前回の導入編で必要なソフトはインストール済みだと思いますが、もうひとつzipファイルで持っておくべきファイルがありますのでダウンロードしておきましょう。ダウンロードhttp://vccw.cc/右上のzipをダウンロードしておけばOKです。ファイルを編集するテキストエディタがあれば完璧です。Text」を使ってます。使いやすくて重宝してます。2VCCWのファイルを編集ダウンロードした「vccw」フォルダを解凍し、デスクトップにでも置いておきましょう。ダウンロードしたやつはそのまま残してコピーで複製を作っておきましょう。残しておいた方は「原本」扱いにして次回のサイト作成時にまた複製して使う為に置いておくと楽ですね。任意の分かりやすい名前にリネームしましょう。自分のブログという意味で仮に「myblog」にリネームしたとして解説します。フォルダの中に入ると「provision」というフォルダがあるのでその中を開いてみて下さい。「default.yml」というファイルがありますので、お持ちのテキストエディタで開きます。上記の赤い四角の部分、2ヵ所だけ修正が必要な場所があります。192.168.33.10こういう記述があると思います。192.168.33.11という形で変更し、拡張子も「.dev」から→「.test」とかに変更。「.test」だった場合はそのままtestでOK「.dev」のままでもよかったんですが、ローカル開発中にクロームで開けなくなるという問題があったので今は推奨しません。すると「.test」も今後はどうなるかは分かりませんが。(この記事は2018/1月現在の情報となります)(さらに2019/6月にリライト済みです)ipの方も末尾の数字を10から11に1つ増やしてあります。これはまた別の案件等で次のファイルを増やしたりすれば12...13...と別のipを被らないように指定して行く形になります。※初回の場合は10のままでも問題はないと思います。この「default.yml」のファイルしか触るものはありません。ここの修正が終わったらファイルを上書き保存。3hostsへの追記これは必要だったり必要じゃなかったりする設定となりますが一応やっておくに越した事はないので説明を書いておきます。お使いのPCの「C:\Windows\System32\drivers\etc\」の場所に「hosts」ファイルというものがあります。※上記をフォルダで開けば↓こんな感じで出てきますこの「hosts」っていうファイルを一度デスクトップとかにコピペしてから、そのファイルをまたテキストエディタで開いて下さい。myblog.testこれを追記します。先ほど「default.yml」のファイルの時に修正したipとhostnameの内容と同じ記述通りに書きます。ファイルを上書き保存したらまた先ほどの「C:\Windows\System32\drivers\etc\」の場所にコピペで上書き保存して下さい。設定によるかもですが管理者権限でしか上書きが実行出来なかったりします。4いよいよコマンドプロンプトを利用さぁこれで準備は整った!(はず)そう、ついにあの恐怖の白黒の画面です。初心者にとってあのコマンドプロンプトの画面は何か抵抗ありますよね。そんなに難しい事は必要ありません。→右クリックで「その他」→「管理者として実行」で起動させて下さい。こんな画面が出たりしますがコマンドプロンプト内C:\WINDOWS\system32>気にせず次の1行を打ち込んでエンターです。C:\Users\【PCのユーザー名】\Desktop\myblog【PCのユーザー名】の部分はローカルディスク(C)→ユーザーで入った時にフォルダに表示されてる名前でいけるんじゃないかなと。最後の「myblog」の部分はvccwのフォルダを任意でリネームした時の名前の事です。ちなみに大文字とか小文字とか関係ないと思う。「cd」ってのは階層を移動するコマンドです。上記の1行は先ほどのリネームしたvccwのフォルダにコマンドプロンプトを使って入り込んだ状態ですね。../」って打ち込めばHTMLの書き方のように1つ上の階層に上がる訳です。コマンドプロンプトを使ってフォルダの中を行き来してるイメージで考えてもらえればOKです。上記コマンドが成功すれば(階層が合ってれば)こんな感じになると思います。※ちなみにD:のドライブにデスクトップを移動させてる人はD:へ階層を移動して使う訳です。cdコマンドでさっきのVCCWフォルダがある場所まで移動すればおkです。コマンドプロンプト内C:\Users\【PCのユーザー名】\Desktop\myblog>これでmyblogフォルダの中にいる状態です。次にいよいよVAGRANTを利用して行きます。UP引き続きコマンドプロンプトで次の1行を打ち込んでみましょう。up成功すればずらずら~っと記述が表示されながら5~10分くらい待たされます。ちなみに2回目以降はけっこう早いです。upコマンドを試してみて下さい。ちなみにキーボードの↑キーを押すと入力した履歴が出てくるので楽です。Box」のソフトを起動させておくと、今どういう状態なのかが目に見えて分かるのでオススメかも。最初は見ても意味分からんけどね。UPの時点でエラーが出る人この時点でのエラーはけっこう致命的です。原因が特定しにくい...ソフトの入れ直しやhostsファイルの記述等、ミスがないか再確認するしかないかも。Box」を起動させてたら、エラーの内容が表示する事があるんだけど仮想化支援機能ってのがうまく使えない場合はPCの設定の問題があるかもです。BIOS」とかでググってBIOS内で有効にしてみて下さい。この辺はIntelかAMDかで内容が変わってくるんで各自で調べた方がいいです。ソフトとかの導入は完璧でファイル記述もコマンド入力も完璧の状態なのにPC自体の設定でそれらが使えない状況になってるだけって事。box」っていうのを入れないといけないんですが古い記事のものでは使えなくなってます。インストール出来ない状態っぽいです。俺も新しいPCで環境作る時とかに苦労したんですがやっとインストール方法が分かったので載せておきます。コマンドで以下のものを入れたらボックス入りました。https://vagrantcloud.com/vccw-team/boxes/xenial64/んで、さらに「Vagrantfile」の中もいじらないといけないかもです。"vccw-team/xenial64"使うboxのバージョン追記する感じです。どっかに似たような記述があるので、そこを変更する感じですね。詳しくはこちらに書かれてるやつです。vccw-team/xenial64これ入れる必要があるかもです。(いらんかもです)んで、後はエラーの原因っぽかったやつが「vccw」のバージョンについて。vccwのサイトを久々に見たんですがhttp://vccw.cc/vccwのバージョンが3.18.0とかになってますね。使ってたやつが3.8.0だったのでだいぶ新しくなってる模様。思い切って3.18.0を使ってみました。UPがうまくいった人けっこう長い時間待たされて成功したっぽい人は先ほどのリネームしたvccwのフォルダの中を開いて見てみて下さい。「wordpress」っていうフォルダが出来てたり、「Movefile.yml」っていうファイルが作られているはずです。↓こんな感じになってればOK。upはひとまず成功です。次のステップに進みましょう!8Movefile.ymlを編集するここからはちょっとややこしいです。これを乗り切れば後は楽勝なローカル開発環境が待ってます。upによってリネームしたvccwフォルダの中に「Movefile.yml」が作られたはずなのでそれをテキストエディタ等で開きます。編集する箇所はけっこう多いのでミスのないように1つずつ慎重に埋めて行きましょう。ちなみにMovefileはけっこうシビアで、インデント1つ間違えただけで動かないパターンもあるらしいので気を付けて作業しましょう。↓中はこんな感じになってると思います。※既に記述済みのスクショなので一部モザイク処理してありますでは1つずつ変更して行きましょう。・local:まずはlocalの箇所。ここは何もいじりません。・database:これはlocalの方のデータベースの記述。“http://example.com”ここにサイトURLをそのままhttp~から記入します。ドメインを利用してたとしてもそのままhttp://ナントカ.comみたいに記入してOKです。“/var/www/your_site”あなたのサーバー内でWordPressがインストールされているパスを指定する必要があります。「wp-settings.php」が置かれている場所のパスになるようです。・database:こちらはproduction内の方のデータベースの記述。実際のあなたが借りてるサーバーのデータベースの情報を記入して下さい。WordPressのwp-config.phpの中身に書いてる内容と同じ感じになるはずですね。“3308”」とコメントアウトしても俺の場合は動いてます。“utf8′′」を付け足すのを推奨しているようです。・exclude:ここに記載してあるファイルは同期しないように設定されているって事みたいです。“.htaccess”」も追記してます。※くれぐれもインデントは揃えて書いて下さい・ssh:こちらもあなたのサーバー側の「SSH」の情報をそっくりそのまま記述するだけでOKです。←そのままでOKこれらのSSHは恐らくレンタルサーバーの管理画面とかに情報が書かれてます。サーバーの管理画面内でSSHを有効に設定した上で情報を取得しましょう。ちなみにSSHに対応してないサーバーはやり方が変わって来ます。SSHではなくFTPでの接続も出来るのですが今回はめんどいので長くなるので説明を割愛します。ロリポップでもさくらサーバーでも一応どちらも成功しました。ここまで記述が完了したら上書き保存して終了です。作業はコマンドプロンプトへ戻ります。sshと入力してエンターです。先ほどのMovefileへの記述がミスってなければ成功して表示がコマンドプロンプト内vagrant@myblog:~$みたいな感じになります。ちなみに分かってるとは思いますが、@myblogってなってるのは最初のvccwフォルダを「myblog」にリネームした場合こうなってるっていう事ですからね。さぁこうなればもう一息です!そのまま続けてcdコマンドでvagrant階層へと移動させます。/vagrantと入力し、.vagrantフォルダの階層へと移動します。して↓入力してエンターするとこうですね。階層が移動した訳です。コマンドプロンプト内vagrant@myblog:/vagrant$こういう表示状態になってればOKです。sshがうまくいかない場合は恐らく先程の「Movefile.yml」への記述がどこかミスってるのが1つの原因じゃないかと思われます。インデントが揃ってなかったりするだけでうまくいかないパターンもあるので要注意です。他に可能性があるとしたら...Rubyのpathが通ってない問題とかGitがうまく使えてない問題とかSSHキーの作成が必要問題とか(これがまためんどい)ここでのエラーはけっこう原因が分かりにくくて厄介だと思います。SSHキーの作成が必要なパターンについてはPuTTYのごった煮版とかを使って俺は何とかクリア出来たんですが、説明が難しいので頑張ってググってみて下さい。後はコマンドプロンプトに表示されるエラー内容によってはそのままエラー内容をググれば原因が出る場合もあります。sshが成功した人ここまで来れば後は最後のpullコマンドです。この最後の1行が吉と出るか凶と出るか...ではあなたのサーバー側(本番)からローカル側へとWordpressのデータをそっくりそのまま落としてみましょう。引き続きコマンドプロンプトでそのまま入力します。--allこれで全部ローカルへと落とせます。~っとコマンド内に文章が書かれると思います。※最初はなかなか1回で落ちきれないので2~3回このコマンドを連チャンで叩いて下さい。ちなみに「–all」ってのはサーバー側にある全てのファイルを1セット丸々落としますっていう意味です。-t」とすればテーマ、「-u」ならアップロード(メディア)の意味となります。allの時だけハイフンは2個です。テーマのみを引っ張りたいとか、データベースの中身のみをアップしたいとか使い分ける事が出来ます。注意としてはテーマのみとかメディアのみとか個別で落としたり出来るんですが「テーマの中のこのファイル1つだけ!」ってのは無理っぽいです。テーマはあくまでテーマ丸々の指定となります。逆に言うとテーマはテーマのみなので、プラグインのフォルダとかはまた別になります。pullコマンドで全てのデータを落としたら、最初にリネームした「vccwフォルダ」>「wordpress」のフォルダ内を確認してみて下さい。あなたがサーバー側(本番)にアップしていたWordpressの全てのデータが揃ってるはずです。pullしてサーバー(本番)からローカルに引っ張ったデータの状態ですね。ローカル側で更新作業をする時はもちろんそのフォルダの中のテーマを編集する感じです。後はブラウザのアドレスバーに「http://myblog.test/」(最後のスラッシュも入れた方がいいかも)と入力すれば現在のローカル側にあるWordPressのデータの状態で表示出来ます。sshでサーバーと繋ぐ、wordmoveコマンドで本番とローカルのデータのやり取りが可能、という感じです。この時にもし表示がおかしかったらちゃんとpull出来ていない可能性があります。ありがちなのはテーマはpull出来てるけど、データベースが落ちきれてないとか。pullコマンドした時にエラーを吐いてないかコマンドプロンプト内をよくチェックしながらやりましょう。'wp_';ここのデータベースの接頭辞の記述が本番のデータベースと間違いないかをチェック。違えば本番の記述にこちらも合わせましょう。「wp_」の部分を本番側で変えてた場合はローカル側も揃える必要があります。);ここをTrueからFalseにした方がいいかと思うので↓こうします。これが「False」ではなく「True」になってるとブラウザでの表示がデバッグモードみたいになって邪魔になる場合はFalseにするのを推奨です。さぁ後はローカル内で自由にテーマファイル等をいじって開発を進められます。ちなみに「http://myblog.test/wp-admin」でローカル環境のままWordpress管理画面へのログインももちろん出来ますので管理画面内でいじってローカルのデータベースごとサーバーへ同期という事も簡単ですね。今度は中身をいじったローカルのWordPressデータを今度はサーバー側(本番)にアップするパターンのコマンドです。先ほどの逆の事ですね。--allこのプッシュコマンドでサーバーへアップします。pullの時と同じように「–all」は全て、「-t」や「-d」等で個別にプッシュが出来ます。ちなみによくデータベースだけがうまくpushしきれなかったりpullしきれなかったりするのでコマンドプロンプト内でエラーが出てないかよく確認する事。1回のpullで引っ張り切れないまま知らずにpushしてしまって\(^o^)/オワタなんて事もあるので注意が必要です。1回で行けなかった時は何回かpushして試しましょう。12その他いろいろ・作業を終わる時VagrantがPC裏でずっと動いてる状態っていうのも気持ち悪いのでコマンドプロンプトでオフにしてあげましょう。haltと、すればバーチャルボックスがOFF状態となります。OFFになってる状態ではローカルの「http://myblog.test/」このURLへアクセスしても表示はされません。upの再起動的な事も出来ます。・ファイルを作り直したい例えば「vccw」をリネームしたフォルダがあると思うんですが、これを削除して作り直したい場合。再度、1VCCWでファイルをゲット→「vccw」のzipフォルダを解凍→「default.yml」ファイルの記述からスタート。その時にhostnameやipの数字が既存のものと被らないように設定する事。以上、初心者なりに頑張って説明したと思うんですがもし分からない事があっても決して俺に聞かないで下さい。新規投稿のプッシュ通知を受け取れます(個人情報入力不要&無料)※解除する時は再度上記ボタンから解除を選択してください。