Windows 環境:Vagrant で VVCW を起動させると、エラー出力したので対処

投稿日時:2014年9月5日 カテゴリー:WordPress

WordPress の仮想環境を構築し WordPress のテーマやプラグインが開発できる 宮内さんが開発された VVCWを最近知りましたのでさっそくインストールして検証することにしました。

私の環境は Windows なのですが、作者 宮内さんのページには、VVCW は Windows 環境でも一応動作するとのことです。

現在のVCCWはWindowsでも動作確認ができています。
URL:http://firegoby.jp/archives/5542

インストール方法は他の方が十分すぎるほど、説明されていますので、ここでは大まかな手順だけを説明します。

  1. 1) VirtualBox のインストール
  2. 2) Vagrant のインストール
  3. 3) VCCW をダウンロード

では、さっそくコマンドプロンプトで VCCW のフォルダに移動し「vagrant up」コマンドで仮想環境を起動します。

以下のようなエラーが出ました。

C:\Users\user\Documents\GitHub\vccw>vagrant up
Bringing machine 'default' up with 'virtualbox' provider...
==> default: Importing base box 'chef/centos-6.5-i386'...
==> default: Matching MAC address for NAT networking...

			~中略~

==> default: Running cleanup tasks for 'chef_solo' provisioner...
C:/Users/user/.vagrant.d/gems/gems/vagrant-hostsupdater-0.0.11/lib/vagrant-hosts
updater/HostsUpdater.rb:82:in `initialize': Permission denied - C:/Windows/syste
m32/drivers/etc/hosts (Errno::EACCES)

パーミッションがなんたらと言っています。
メッセージから、権限がなくて hosts ファイルへの書き込みが失敗したようです。
Windows のユーザー権限ははっきり言ってわかりにくいです。

「右クリック」→「管理者として実行」で管理者権限を与えてコマンドプロンプトを起動すれば問題ないはずです。

コマンドプロンプト管理者権限で起動

では改めて仮想環境を起動します。

C:\Users\user\Documents\GitHub\vccw>vagrant up
Bringing machine 'default' up with 'virtualbox' provider...
==> default: Checking if box 'chef/centos-6.5-i386' is up to date...
==> default: Clearing any previously set forwarded ports...
==> default: Clearing any previously set network interfaces...
==> default: Preparing network interfaces based on configuration...
    default: Adapter 1: nat
    default: Adapter 2: hostonly
==> default: Forwarding ports...
    default: 22 => 2222 (adapter 1)
==> default: Running 'pre-boot' VM customizations...
==> default: Booting VM...
==> default: Waiting for machine to boot. This may take a few minutes...
    default: SSH address: 127.0.0.1:2222
    default: SSH username: vagrant
    default: SSH auth method: private key
    default: Warning: Connection timeout. Retrying...
==> default: Machine booted and ready!
==> default: Checking for guest additions in VM...
==> default: Checking for host entries
==> default: adding to (C:/Windows/system32/drivers/etc/hosts) : 192.168.33.10
wordpress.local  # VAGRANT: 0b167e35f4de773ca0279b5f211a3096 (default) / 18dd076
6-c860-4214-99f3-99130bbf313d
==> default: Setting hostname...
==> default: Configuring and enabling network interfaces...
C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-1.6.4/plugins/guests/redhat/cap/
configure_networks.rb:31:in `configure_networks_default': wrong number of argume
nts (1 for 2) (ArgumentError)

			~以降省略~

hosts ファイルへの書き込み問題は解決したようですが、またしてもエラーが。。
しかもこれはまずいです。トラブル解決においては百戦錬磨を自負していますが、いかんせん、Ruby がわかりません。
わかっているのは、「ネットワーク系の問題」、「関数呼び出しの引数が足りない?」です。

上記のように問題の原因が一部しかわからない場合のトラブル解決でやってみることは限られます。
自分で解決できない場合は作者の宮内さんに質問するしかありません。
では一般的な以下の手法を試します。

Vagrant を 「vagrant_1.6.4.msi」から「vagrant_1.6.3.msi」へ変更することで問題は解決しました。

ちなみに、vagrant_1.6.4.msi はこの記事を執筆時点での 2日前(2014/9/3)にバージョンアップしたようです。最新バージョンになって仕様がかわったのかな。

Vagrant バージョンアップ日時


コメントを残す