アイディアボード

Just another WordPress site

WordPressのローカル開発環境(Vagrant)をDropboxで自動バックアップ

   

mba-dropbox-wordpress-vagrant
最近Takayuki Miyauchi (@miya0001)さんが作ったWordPressのプラグインやテーマ、ウェブサイトの開発に超便利なVagrantが本当に超絶便利すぎて万歳三唱です。

もうWordPress開発者はみんなこれ使おうよ〜むしろなんで使わないの〜といった素晴らしさなのですが、これをもう一歩踏み込んでDropboxと連携させたら自動でバックアップ取ってくれて超絶ラクだよなぁ理想的なWordPressのローカル開発環境だよなぁと思ったのでやり方をメモ書き。
まぁDropboxとVagrantと聞いた時点でわかる話ですが、あまりの便利さに感動している間にササッと書いてしまいます。

やっていることはWordPressの設定が詰まったVagrantfileとwwwフォルダをDropboxで共有しているだけです。
編集したテーマ・プラグインのファイルは常にDropboxさんが最新のバックアップを取ってくれます。

ツールを揃える

dropboxLogo
まずはVagrantとDropboxをインストールしましょう。VagrantはVirtualBoxのフロントエンドなので、VirtualBoxも当然必要です。
インストールするのは順番に

  1. VirtualBoxの最新版(4.3)
  2. Vagrantの最新版(1.3.5)
  3. Dropboxの最新版(2.4.4)

です。かっこの中は自分がインストールした2013年10月現在の最新バージョン。
最後にターミナルで
$ vagrant plugin install vagrant-hostsupdater
としてHosts updaterをインストールしたらツールが揃います。
ちなみにHosts updaterをインストールし忘れるとでWordPressのローカル開発環境にアクセス出来なくなったり、色々と困ります。

VagrantでWordPressのローカル開発環境を設定

wapuLogo
Githubから@miya0001さんのVagrantをありがたく頂戴してきます。
Vagrantの保存先はどこでも大丈夫ですが、今回は解りやすくホーム/書類/wordpress_localとしてあります。
$ git clone https://github.com/miya0001/vagrant-chef-centos-wordpress.git ~/Documents/wordpress_local
保存先はどこでも良いのですが、Dropboxフォルダ内はNG。

Dropboxフォルダ内でVagrant起動!

vagrantLogo
今作ったフォルダの中からVagrantfile.sampleをコピーして、Dropboxフォルダ内にVagrantfileを生成します。
Dropboxの中が散らかると良くないので、Vagrant_syncというフォルダを作っておいて、その中にVagrantfileを生成しました。
$ cp ~/Documents/wordpress_local/Vagrantfile.sample ~/Dropbox/Vagrant_sync/Vagrantfile
WordPressの製作案件を複数同時に進めているならば、Vagrant01,Vagrant02みたいにフォルダ毎に複数のローカル開発環境を作っておくとわかり易いかもですね。

さて、ここで一工夫。今作ったVagrantfileを編集します。
最初の状態だと、Vagrantが起動する時にはVagrantfileの存在しているフォルダの中のファイルを使うように設定されているので変更します。
Dir.pwd
お好みのエディタでVagrantfileを開き、36行目の辺りを見て
WP_CHEF_COOKBOOKS_PATH = '~/Documents/wordpress_local'
といった感じに書き換えます。
Vagrantfile
元々Vagrantfile.sampleが入っていた、GitHubからcloneしてきたフォルダを指していればOK。

あとはVagrant_syncフォルダの中に入って仮想マシンを起動します。
$ cd ~/Dropbox/Vagrant_sync
$ vagrant up
最初は諸々ダウンロードしてくるので30〜60分くらいかかったのですが、2回目以降は3分もかかりません。
最後にMacのパスワードを打ち込めば、WordPressのローカル開発環境が起動完了です。

上手くローカル開発環境が正しく起動できていれば

  • VirtualBox VMs(ホーム直下)
  • www(DropboxのVagrant_sync内)
  • .vagrant(DropboxのVagrant_sync内隠しフォルダ)

というフォルダが出来上がっているハズです。
このwwwフォルダこそがDropboxに自動でバックアップを取らせたかった、ローカル開発環境の編集内容そのものです。
中にwp-contentフォルダ等々、WordPressの関連ファイル郡が出来上がっています。

これで、自動バックアップまで至れり尽くせりの理想的なWordPressのローカル開発環境があなたの手に!
バックアップから復元する時はwwwフォルダ内から復活させたいファイルを取り出してやりましょう。
wp-config.phpの中のDB情報等、環境毎に変化するところは上書きしないように注意!

 - 解説記事