2020/05/12 2:24
[Windows10版]VCCW+VAGRANT+VirtualBox WordPressローカル環境構築【新規作成編】
2022年6月辺りからVCCWでのWordpress環境構築が使えなくなってる状況です。
私だけなのか、何か原因があるのか、詳細は分かりませんが現在はオススメしておりません。
新規で導入を考えておられる方にはDocker+Wordmoveをオススメいたします。
まだXAMPP使ってますか?
以前の[Windows10版]VCCW+VAGRANT+VirtualBox WordPressローカル環境構築の「サイトの新規作成でスタートする場合」のパターンの記事となります。
※注意
ここに書いている内容は「今から新規でサイト作成する」のみとなります。
「既にサーバーに既存のサイトが存在している場合」という方はこちらの記事を参照ください。
導入に必要なもの
けっこうつまずく人多いと思いますが、やはり初心者向けに分かりやすく解説してる記事が少ないという部分ですよね。
ここのブログは「Qiitaとか見ても文章はしょりすぎてて初心者向けじゃないよね~」という方向けの記事というコンセプトになってます。
ご安心ください。
①「VAGRANT」導入で何が出来るのか
開発中のWP(Wordpress)のデータをテーマ・メディア・データベース等、一瞬でアップロード出来ます。
逆に一瞬でそれらのデータをローカルに引っ張る事も出来ます。
例えばこれがXAMPPとかだったら
サーバー側のphpMyAdminにログインしてデータベースをエクスポートして来て、今度はローカル側のphpMyAdminにログインしてデータベースをインポートしたりする訳ですよ。
(めんどい…ただただめんどい…)
それが何とこの「Vagrant」で「Wordmove」コマンドってのを使えば、たったの1行書いてエンター押せば完了します。
さて、それでは必要なソフトの導入について説明して行きましょう。
②何が必要なのか
ちなみにここでは「Windows10版」での説明になりますのでご了承下さい。
まずざっくり必要なもの(ソフト等)と推奨のバージョンをご紹介。
ちなみに全部無料となってます。
・Vagrant v1.9.4
・Virtual Box v5.1.30
・Git v2.15.1.2
・Ruby v2.5.0
・VCCWファイル v3.18.0
それぞれが何の役割を果たすのかはあえて割愛します。
これ全部理解してから使おうと思うと、それこそ長い記事になってしまうので。
簡単に言うと仮想化ソフトを簡単に操作出来るものとなりまして、まずはそれらを使う為の環境作りからスタートです。
ではオススメのバージョンと導入手順を説明したいと思います。
ソフトにそれぞれ相性があるのですが、ちょっとでもかみ合ってないとエラーの元になってしまいます。
今回はうまくいってる推奨バージョンで進めていきたいと思います。
ちなみにインストール後はこれらのソフトを起動させたりする必要はありません。
取り合えずPCに入れるのみで大丈夫です。
③Vagrant導入
バージョンは1.9.4を推奨。
ダウンロード
Vagrant DL : https://releases.hashicorp.com/vagrant/1.9.4/
WINユーザーなら「vagrant_1.9.4.msi」ってやつでOKだと思います。
インストーラーで特にオプションもいじらず「次へ次へ」ってやってけば大丈夫です。
※2021/2追記
さすがに古くなってきた感があるのでバージョンはv2.2.14を使ってみましたがうまくいきました
④Virtual Box導入
バージョンは5.1.30を推奨。
ダウンロード
Virtual Box : https://www.virtualbox.org/wiki/Download_Old_Builds_5_1
WINユーザー(64Bit)なら「Windows hosts x86/AMD64」ってやつでOKだと思います。
こちらもインストーラーで特にオプションもいじらず「次へ次へ」ってやってけば大丈夫です。
※2021/2追記
windowsアップデートによって古いVirtualboxが使えなくなってしまいました。
v5.2.3以上を使う事を推奨します。
⑤Git導入
これがMACだと不要という話でしたが、恐らくWINDOWSの場合はGitも入れないとダメっぽいです。
そこは詳しくないんで何とも言えないんですが。
バージョンは2.15.1.2を推奨。
ダウンロード
Git : https://npm.taobao.org/mirrors/git-for-windows/v2.15.1.windows.2/
WINユーザー(64Bit)なら「Git-2.15.1.2-64-bit.exe 」ってやつでOKだと思います。
インストーラーで環境変数の選択の時に「Use Git from the Windows Command Prompt」のチェックにした方がいいかも。
⑥Ruby導入
これもWindowsの場合は恐らく導入が必要かもです。
バージョンは2.3.3か、2.5.0を推奨。どちらでもうまくいきました。
ダウンロード
Ruby : https://rubyinstaller.org/downloads/
WINユーザー(64Bit)なら「Ruby 2.5.0-1 (x64)」ってやつでOKだと思います。
インストールの時に「Rubyの実行ファイルへ環境変数PATHを設定する」にチェックしましょう。
RubyはPATHを通さないと使えないので。
余談ですが下記の組み合わせのバージョンでも動きました。
・Vagrant 2.2.6 or 2.2.14
・VirtialBox 5.2.3 or 5.2.34
・Git 2.15.1.2・Ruby 2.3.3
・VCCWファイル v3.18.0
⑦VCCW、使用する元となるファイルを取得
必要なソフトはインストール済みだと思いますが、もう1つ持っておくべきファイルがありますのでダウンロードしておきましょう。
ダウンロード
VCCW : http://vccw.cc/
バージョン指定したい場合はこちら
VCCW Git-Hub : https://github.com/vccw-team/vccw/releases
zipファイルをダウンロードしておけばOKです。
※ちなみに「v3.18.0」を推奨します
さらにファイルを編集するテキストエディタがあれば完璧です。
例えば「Sublime」等、普段使ってるエディタで大丈夫かと思います。
Vagarnt実践編
①ここまでのまとめ
・Vagrant導入
・VirtialBox導入
・Git導入
・Ruby導入
・VCCW ZIPファイルダウンロード
ここまでの5ステップ、お疲れ様でした。
さぁ後は実践となります。
②VCCWのファイルを編集
ZIPでダウンロードした「vccw」フォルダを解凍して使っていくのですが、ダウンロードした大元のZIPはそのまま残してコピーで複製を作って解凍して使う形がいいかもです。
なぜかと言うと、残しておいた方は「原本」扱いにして次回のサイト作成時にまた複製して使う事が楽にできます。
つまり1サイトにつき、VCCWのフォルダ1つを使うというイメージです。
さて、解凍済みの「vccw」フォルダを分かりやすい名前にリネームします。
例えば自分のブログという意味で仮に「myblog」にリネームしたとして解説していきます。
で、以降の説明用に一度フォルダ構成をこの形にしておきます。
・デスクトップに「test」フォルダを新規作成
・リネームした「myblog」フォルダを「test」フォルダに入れる
つまりこうですね。
デスクトップ > test > myblog(元vccwフォルダ)
では、「myblog」フォルダの中に入ると「provision」というフォルダがあるのでその中を開いてみて下さい。
恐らく「default.yml」というファイルがありますので、お持ちのテキストエディタで開きます。
上記の赤い四角の部分、2ヵ所だけ修正が必要な場所があります。
myblog > provision > default.yml
18~19行目辺り
hostname: vccw.test
ip: 192.168.33.10
こういう記述がありますので下記のように修正します。
hostname: myblog.test
ip: 192.168.33.11
vccw.test
↓
myblog.test
そして「ip」の方も末尾の数字を10から11に1つ増やしてあります。
これはまた別の案件等で次のファイルを増やしたりすれば12…13…と別のipを被らないように指定して行く形になります。
※初回の場合は10のままでも問題はないと思います。
取り合えずはこの「default.yml」のファイルしか触るものはありません。
ここの修正が終わったらファイルを上書き保存して次のステップへ。
③hostsへの追記
これは必要だったり必要じゃなかったりする設定となりますが、一応やっておくに越した事はないので説明を書いておきます。
プラグインのインストール
vagrant plugin install vagrant-hostsupdater
これはファイルをリネームしてくれるプラグインです。
入れておきましょう。
続きまして
お使いのPCの
「C:\Windows\System32\drivers\etc\」
の場所に「hosts」ファイルというものがあります。
この「hosts」っていうファイルを一度デスクトップとかにコピペしてから、そのファイルをまたテキストエディタで開いて下さい。
※権限の問題で、そのフォルダ内にある状態ではいじれないからです
そして開いたファイルに既にいろいろと書かれてるとは思いますが、一番最後の行の下に改行して
hosts
192.168.33.11 myblog.test
これを追記します。
先ほど「default.yml」のファイルの時に修正したipとhostnameの内容と同じ記述通りに書きます。
ファイルを上書き保存したらまた先ほどの
「C:\Windows\System32\drivers\etc\」
の場所にコピペでファイル上書き保存して下さい。
設定によるかもですが管理者権限でしか上書きが実行出来なかったりします。
④いよいよコマンドプロンプトを利用
さぁこれで準備は整いました。
慣れてない人には敷居が高い恐怖の白黒の画面です。
初心者にとってあのコマンドプロンプトの画面は何か抵抗ありますよね。
でも大丈夫です、そんなに難しい事は必要ありません。
それではお使いのPCのアプリケーション一覧から
→「WINDOWSシステムツール」
→「コマンドプロンプト」
→右クリックで「その他」→「管理者として実行」
で起動させて下さい。
※権限の問題があるので必ず「管理者として実行」してください
例えばこんな画面が出たりしますが
コマンドプロンプト
C:\WINDOWS\system32>
気にせず次の1行を打ち込んでエンターです。
コマンドプロンプト
cd C:\Users\【PCのユーザー名】\Desktop\test\myblog
※ちなみにデスクトップ上に「test」フォルダを作って、さらに先ほどのリネームしたフォルダをその中に置いてる状態が前提です
【PCのユーザー名】の部分はローカルディスク(C)→ユーザーで入った時にフォルダに表示されてる名前です。
※最後の「myblog」の部分はvccwのフォルダを任意でリネームした時の名前の事です
ちなみに大文字とか小文字とか関係ないかもです。
「cd」ってのは階層を移動するコマンドです。
つまり上記の1行は先ほどのリネームしたvccwのフォルダにコマンドプロンプトを使って入り込んだ状態ですね。
例えば、「cd ../」って打ち込めばHTMLの書き方のように1つ上の階層に上がる訳です。
コマンドプロンプトを使ってフォルダの中を行き来してるイメージで考えてもらえればOKです。
上記コマンドが成功すれば(階層が合ってれば)こんな感じになると思います。
コマンドプロンプト
C:\Users\【PCのユーザー名】\Desktop\test\myblog>
※ちなみにD:のドライブにデスクトップを移動させてる人はD:へ階層を移動して使ってください。
とにかくcdコマンドでさっきのVCCWフォルダがある場所まで移動すればおkです。
はい、これで「myblog」フォルダの中にいる状態です。
次にいよいよVAGRANTを利用して行きます。
⑤VAGRANT UP
引き続きコマンドプロンプトで次の1行を打ち込んでみましょう。
コマンドプロンプト
vagrant up
この「vagrant up」のコマンドは起動みたいなイメージです。
いわゆるローカルマシーンの「立ち上げ」です。
成功すればコマンド内でずらずら~っと記述が表示されながら5~10分くらい待たされますので、そのまま気長に待ちましょう。
ちなみに2回目以降はけっこう早いです。
初回はWPローカル開発にあたって必要となるファイルを生成します。
ずらずら~っと出る表示を見ても何かよく分からないとは思いますが
もしエラーっぽい記述が出る場合は何かがうまくいってないって事なんですが、タイムアウトっぽいエラーが出る事も多いので、何度か上記vagrant upコマンドを試してみて下さい。
ちなみにキーボードの↑キーを押すと入力した履歴が出てくるので楽です。
それと「Virtual Box」のソフトを起動させておくと、今どういう状態なのかが目に見えて分かるのでオススメかも。
最初は見ても意味分からないですけどね。
※基本的にはコマンドプロンプトさえ開いてれば他の導入したソフトとかは何も開く必要はないです
⑥VAGRANT UPの時点でエラーが出る人
この時点でのエラーはけっこう致命的で、原因が特定しにくいです。
ソフトの入れ直しやhostsファイルの記述等、ミスがないか再確認するしかないかも。
ちなみに「Virtual Box」を起動させてたら、エラーの内容が表示する事があります。
・仮想化支援機能の問題
仮想化支援機能ってのがうまく使えない場合はPCの設定の問題があるかもです。
BIOSの設定で仮想化支援機能が無効になってる可能性があります。
「仮想化支援機能 BIOS」とかで検索するとPCのメーカー毎に説明記事とか出ますので、それらを参考にBIOS内で有効にしてみて下さい。
この辺はIntelかAMDかで内容が変わってくるんで各自で調べた方がいいです。
つまり、ソフトとかの導入は完璧でファイル記述もコマンド入力も完璧の状態なのに、PC自体の設定でそれらが使えない状況になってるだけって事です。
・vagrant boxの問題
「vagrant box」っていうのを入れないといけないんですが、だいたいのvagrant導入の古い記事のものは使えなくなってます。
インストール自体が出来ない状態のようです。
今のところ導入可能だった対策として、コマンドで以下のものを入れたら導入できました。
vagrant box add vccw-team/xenial64 https://vagrantcloud.com/vccw-team/boxes/xenial64/
・vagrant box入れてもエラーになる場合
さらに「Vagrantfile」の中もいじらないといけないかもです。(もしかすると不要かもしれません)
config.vm.box = "vccw-team/xenial64"
使うboxのバージョン追記するという形です。
元々似たような記述がどこかにあるので、そこを変更する感じですね。
詳しくはこちらに書かれてるやつです。
参考 : https://app.vagrantup.com/vccw-team/boxes/xenial64
さらにコマンドで
vagrant init vccw-team/xenial64
これ入れる必要があるかもです。(いらんかもです)
・vccwのバージョンとの相性問題
後はエラーの原因として「vccw」のバージョンについて。
vccwのバージョンが3.18.0とかになるので恐らく相性が悪いのではないかという問題です。
Vagrantfileの中にこういう記述が複数あります。
ansible.compatibility_mode = "2.0"
これが書かれてる行を全て(3ヵ所)
# ansible.compatibility_mode = "2.0"
こういう形でコメントアウトしてみてください。
・その他試してみるリスト
リネームプラグインのインストール
vagrant plugin install vagrant-hostsupdater
プラグインのリペア
vagrant plugin repair
プラグインの入れ直し
vagrant plugin expunge --reinstall
Virtualbox側の問題
ファイル>ホストネットワークマネージャーをチェック
または
コントロール パネル>ネットワークとインターネット>アダプターの設定の変更をチェック
ここに「VirtualBox Host-Only Network #●」とかあるかを見る。なければおかしい。
・名前が被ってvagrant upできない場合の対処法
「vagrantがぶっ壊れた!」と思う程のエラーに出くわす時が多々あります。
名前の被りによって以前使ってたもの、あるいは作り直した場合等に起こるエラーでvagrant upがうまくいかない時。
VBoxManageによる仮想マシン登録解除を覚えておくといいかもです。
この階層にコマンドで入る(Virtualboxのインストール先)
C:\Program Files\Oracle\VirtualBox
登録済のNAMEの一覧を確認するコマンド
VBoxManage.exe list vms
下記コマンドで登録されたNAMEを解除していく
VBoxManage unregistervm 〇〇〇〇.test
これで綺麗サッパリになるので、以前使ってた名前でvagrant使えます。
後はVirtualbox側でもファイルを「除去」しておくのを忘れないようにしましょう。
⑦VAGRANT UPがうまくいった人
けっこう長い時間待たされて無事に成功となった暁には、先ほどのリネームしたvccwのフォルダの中(myblogフォルダ)を開いて見てみて下さい。
「wordpress」っていうフォルダが出来てたり、「Movefile.yml」っていうファイルが作られているはずです。
↓こんな感じになってればOK。
これらが生成されていればvagrant upはひとまず成功です。
次のステップに進みましょう。
⑧ローカルでデフォの画面を開いてみる
さて、ここまで来たらやっとブラウザでの確認となります。
まずはブラウザのアドレスバーに「http://myblog.test」と打ち込んでみましょう。
・ブラウザで確認したら何かえらい事になってる問題
ブラウザで確認した時に何かゴチャゴチャとエラー表記が画面上に出てる場合は下記を確認ください。
「myblog(元vccwフォルダ)」 > wordpress > wp-config.php
このファイルの中を確認してください
「wp-config.php」内のWP_DEBUG設定箇所
wp-config.php
define( 'WP_DEBUG', True ); //←これがTrueだとデバッグモードになってしまう
ここをTrueからFalseにした方がいいかと思うので↓こうします。
wp-config.php
define( 'WP_DEBUG', False ); //←Falseにしましょう
こういう形に「True」から「False」にします。
これが「False」ではなく「True」になってるとブラウザでの表示がデバッグモードとなります。邪魔になるのでFalseにしましょう。
後はローカル内で自由にテーマファイル等をいじって開発を進められます。
ちなみに「http://myblog.test/wp-admin」で、ローカル環境のままWordpress管理画面へのログインももちろん出来ますので、管理画面内でいじってローカルのデータベースごとサーバーへ同期という事も簡単ですね。
まずは管理画面にログイン
「http://myblog.test/wp-admin」でまずは管理画面へ入りましょう。
ID:admin
Pass:admin
これがデフォとなってますので、まずは「ユーザー」で管理者権限ユーザーを作りましょう。
つまり自分のアカウントです。
自分のアカウントを管理者として作成したら、その作ったアカウントにログインし直します。
そして「admin」のデフォルトのユーザーをすぐに削除しましょう。
このアカウントが残ったままだとサイト公開後にセキュリティ上よろしくないです。すぐに入られてしまいますので。
⑨後はローカル環境の状態で自由にサイトを作成していきましょう
元々入ってるテーマ(Twentyナントカとか)をいじるのもよし、全部自作で作るのもよし、後は自由に作りましょう。
自作テーマのテンプレも公開してますので参考までにどうぞ。
⑩テーマが完成したらいよいよ公開
さて、テーマが完成してサーバーにアップロード!というところまで来ましたら、先にサーバー側の準備を整えましょう。
※サーバーのレンタルがまだの方はLOLIPOPやエックスサーバー等から好みのものを借りましょう。
そしてサーバーの管理画面内でデータベースの準備をしておきましょう。
データベース新規作成して名前やパスワードをつけるとこまでで大丈夫です。
作成したらそれらの情報が必要となるのでメモっておきましょう。
・データベース名
・データベースホスト
・ユーザー名
・パスワード
ではこれらの情報を元に次の「Movefile」の設定へと進みましょう。
⑪Movefile.ymlを編集する
ここからはちょっとややこしいです。
でもこれを乗り切れば後は楽勝なローカル開発環境が待ってます。
先ほどのvagrant upによってリネームしたvccwフォルダの中(myblogフォルダ)に「Movefile.yml」が作られたはずなので、それをテキストエディタ等で開きます。
編集する箇所はけっこう多いのでミスのないように1つずつ慎重に埋めて行きましょう。
ちなみにMovefileはけっこうシビアで、インデント1つ間違えただけで動かないパターンもあるので気を付けて作業しましょう。
↓中はこんな感じになってます。
Movefile.yml
global:
sql_adapter: default
local:
vhost: "http://myblog.test"
wordpress_path: "/var/www/html" # use an absolute path here
database:
name: "wordpress"
user: "wordpress"
password: "wordpress"
host: "localhost"
charset: "utf8"
# paths: # you can customize wordpress internal paths
# wp_config: "wp-config-custom.php"
# wp_content: "wp-content"
# uploads: "wp-content/uploads"
# plugins: "wp-content/plugins"
# mu_plugins: "wp-content/mu-plugins"
# themes: "wp-content/themes"
# languages: "wp-content/languages"
production:
vhost: "本番環境のドメイン"
wordpress_path: "Wordpressディレクトリへのパス" # use an absolute path here
database:
name: "データベース名"
user: "データベースユーザー名"
password: "データベースパスワード"
host: "データベースホスト名"
# port: "3308" # Use just in case you have exotic server config
mysqldump_options: "--max_allowed_packet=50MB" # Only available if using SSH
charset: "utf8"
exclude:
- ".git/"
- ".gitignore"
- ".sass-cache/"
- "bin/"
- "tmp/*"
- "Gemfile*"
- "movefile.yml"
- "wp-config.php"
- "wp-content/*.sql"
- ".htaccess"
ssh:
host: "SSHのホスト名"
user: "SSHのユーザー名"
password: "SSHのパスワード"
port: 2222
rsync_options: --verbose
では1つずつ解説して行きます。
・local:
まずはlocalの箇所。ここは何もいじりません。
・database:
これはlocalの方のデータベースの記述。これもいじりません。
・production:
↓の中の
vhost: "http://example.com"
ここに本番環境でのサイトURLをそのままhttp~から記入します。
もしドメインを利用してたとしてもそのままhttp://ナントカ.comみたいに記入してOKです。
※最後に「/」はつけないでください
・wordpress_path: "/var/www/your_site"
サーバー内でWordPressがインストールされる想定の場所となるパスを指定する。
「wp-settings.php」が置かれる場所のパスになるようです。
・database:
こちらはproduction内の方のデータベースの記述。
実際の本番環境のサーバーのデータベースの情報を記入します。
先ほどレンタルサーバーの管理画面で作ったデータベース情報の内容と同じにします。
name: "database_name" # ←いじる
user: "user" # ←いじる
password: "password" # ←いじる
host: "host" # ←いじる
port: "3308" # そのままか、コメントアウトでもいけたりする
mysqldump_options: "--max_allowed_packet=50MB" # そのままでOK
charset: "utf8" # ←追記する
「port: "3308"」は「# port: "3308"」とコメントアウトしといて大丈夫です。
さらに最後に「charset: "utf8"」を付け足すのを推奨しているようです。
・exclude:
ここに記載してあるファイルは同期しないように設定されているって事みたいです。
特にいじりませんが「- ".htaccess"」を追記しておくと良いでしょう。
※上記、くれぐれもインデント(頭の空白等)は揃えて書いて下さい
・ssh:
こちらも本番環境のサーバー側の「SSH」の情報をそっくりそのまま記述するだけでOKです。
ssh:
host: "example.jp" # ←いじる
user: "main.example" # ←いじる
password: "examplepassword" # ←いじる
port: 2222 # ←だいたいは2222じゃないかなと
rsync_options: --verbose # ←そのままでOK
これらのSSHは恐らくレンタルサーバーの管理画面とかに情報が書かれてます。
サーバーの管理画面内でSSHを有効に設定した上で情報を取得しましょう。
ちなみにSSHに対応してないサーバーはやり方が変わって来ます。
SSHではなくFTPでの接続も出来ますが、今回はその説明は割愛します。
ロリポップでもさくらサーバーでも一応どちらも成功しました。
さくらサーバーの場合のSSH
ssh:
host: "さくらサーバーのアカウント名.sakura.ne.jp"
user: "さくらサーバーのアカウント名"
password: "さくらサーバーのパスワード"
# port: 22
rsync_options: "--verbose"
恐らくこんな感じで設定すればいけるかと思います。
さて、ここまでMovefile記述が完了したら上書き保存して終了です。
コマンドプロンプトへ作業を戻します。
⑨SSH接続
コマンドプロンプトでvagrant upした後の状態で、そのまま今度は
コマンドプロンプト
vagrant ssh
と入力してエンターです。
先ほどのMovefileへの記述がミスってなければ成功して表示が
コマンドプロンプト
vagrant@myblog:~$
みたいな感じになります。
ちなみに分かってるとは思いますが、@myblogってなってるのは最初のvccwフォルダを「myblog」にリネームした場合こうなるという事です。
もう一息です。
そのまま続けて、今度は「cd」コマンドを使ってvagrant階層へと移動します。
コマンドプロンプト
cd /vagrant
と入力し、「.vagrant」フォルダの階層へと移動するというイメージです。
コマンドプロンプト
vagrant@myblog:/vagrant$
こういう表示状態になってればOKです。
⑩vagrant sshでエラーが出る人
vagrant upはいけたのにvagrant sshがうまくいかない場合…
恐らく先程の「Movefile.yml」への記述がどこかミスってるのが1つの原因じゃないかと思われます。
インデントが揃ってなかったりするだけでうまくいかないパターンもあるので要注意です。
・他に考えられるエラーの可能性
Rubyのpathが通ってない問題とか
Gitがうまく使えてない問題とか
SSHキーの作成が必要問題とか
ここでのエラーはけっこう原因が分かりにくくて厄介だと思います。
後はコマンドプロンプトに表示されるエラー内容によっては、そのままエラー内容を検索すれば原因が出る場合もあります。
⑪vagrant sshが成功した人
・ローカルからサーバー側(本番)へWordpressのデータをアップロード
コマンドプロンプト
wordmove push --all
このプッシュコマンドでサーバーへアップします。
「–-all」は全て、他に「-t」でテーマのみや「-d」でデータベースのみ等、個別にプッシュも出来ます。
pushコマンドが成功すればサーバーへのアップロードが完了です。
あなたのサイトがWEB上に公開されました!
※必ず本番のURL先で確認してください
※重要
「wp-config.php」ファイルがpushされてない場合は手動でアップロードしてください
「wp-config.php」に関しては先ほどのMovefile内の記述で「無視するファイル」として追加されてるのでpushコマンドを無視されてます。
初回のみ手動でアップが必要となりますので忘れないようにしてください。
中身も本番環境のデータベース情報の内容の記述の上でアップするようにご注意ください。
・サーバー側からローカルへとWordPressのデータをそっくりそのまま引っ張る方法
後はpullコマンドというのもあります。
今度はサーバー側(本番)で中身をいじったりした場合に、ローカルのWordPressデータに落としたいパターンの時のコマンドです。
先ほどの逆の事ですね。
サーバー側(本番)からローカル側へとWordpressのデータをそっくりそのまま落とす場合がこのpullです。
こちらもコマンドプロンプトでそのまま入力します。
【コマンドプロンプト】
wordmove pull --all
これで本番環境のデータを全てローカルへと落とせます。またずらずら~っとコマンド内に文章が書かれると思います。
このずらずら~は「pullリクエストによってサーバーからローカルへとファイルを引っ張ってきている」という状態です。
※なかなか1回で落ちきれないので2~3回このコマンドを連チャンで叩いて下さい。これけっこう重要です。
よくデータベースだけがうまくpushしきれなかったりpullしきれなかったりするので、コマンドプロンプト内でエラーが出てないかよく確認する事。
1回のpullで引っ張り切れないまま知らずにpushしてしまって\(^o^)/オワタなんて事もあるので注意が必要です。
1回で行けなかった時は何回かpushして試しましょう。
・「--all」とは何か?
「–-all」というのはサーバー側にある全てのファイルを1セット(wordpressフォルダ丸ごと)丸々落としますっていう意味です。
他に「-d」、つまり「wordmove pull -d」とすればデータベースのみをローカルへ落とします。
後は「-t」、つまり「wordmove pull -t」とすればテーマ、「-u」ならアップロード(メディア)の意味となります。
なぜかallの時だけハイフンは2個です。
例えば、テーマのみを引っ張りたいとか、データベースの中身のみをアップしたい等の使い分けが出来ます。
注意としてはテーマのみとかメディアのみとか個別で落としたり出来るんですが「テーマの中のこのファイル1つだけ!」ってのは無理です。
テーマはあくまでテーマ丸々の指定となります。
逆に、テーマはテーマのみなので、プラグインのフォルダとかはまた別になります。
まとめ
イメージ的にはvagrant upで起動、ブラウザでローカルの状態を確認可能、vagrant sshでサーバーと繋ぐ、wordmoveコマンドで本番とローカルのデータのやり取りが可能、という感じです。
この時にもし表示がおかしい場合は、pullがしっかりと出来ていない可能性があります。
よくありがちなのはテーマはpull出来てるけど、データベースが落ちきれてないとか。
pullコマンドした時にエラーを吐いてないかコマンドプロンプト内をよくチェックしながらやりましょう。
⑫その他いろいろ
・作業を終わる時
VagrantがPC裏でずっと動いてる状態っていうのも気持ち悪いので、コマンドプロンプトでオフにしてあげましょう。
コマンドプロンプト
exit
これでsshの状態から一度抜けてから
コマンドプロンプト
vagrant halt
と、すればバーチャルボックスがOFF状態となります。
もちろんOFFになってる状態ではローカルの「http://myblog.test」このURLへアクセスしても表示はされません。
ちなみに
コマンドプロンプト
vagrant reload
これでvagrant upの再起動的な事も出来ます。
・ファイルを作り直したい
例えば「vccw」をリネームしたフォルダ(myblog)があると思うんですが、これを削除して作り直したい場合。
一度作ったファイル情報をフォルダごと削除します。
コマンドプロンプト
vagrant destroy
これでVirtualBoxのファイルは削除出来たはずです。
ローカルに残ってる「myblog」のフォルダも手動で削除しておきましょう。
・案件(他のサイト)が増えたから新規で追加したい場合
再度、①VCCWでファイルをゲット→「vccw」のzipフォルダを解凍→「default.yml」ファイルの記述からスタート。
その時にhostnameやipの数字が既存のものと被らないように設定する事。
まとめ
一通り必要となる流れを説明してきました。
このVAGRANTでのWordpressローカル環境が楽過ぎて、XAMPPを使ってた頃にはもう戻れません。
1人でも多くこの環境構築をスタートさせる事ができれば幸いです。
では最後にまとめです。
導入編
・Vagrant v1.9.4
・Virtual Box v5.1.30
・Git v2.15.1.2
・Ruby v2.5.0
・VCCWファイル v3.18.0
実践編
・vagrant up
・vagrant ssh
・cd /vagrant
・wordmove pull --all
・wordmove push --all
では現場から以上です!
1898