Webブラウザフロントエンドのphpvirtualboxを使ってみた

注意: Virtualbox 4.x にはまだ対応していません。 もう対応しているようです。

VirtualboxはGUIがあるのでデスクトップの仮想化ソフトウェアと思われがちですが、VBoxManageやVBoxHeadlessなどを使うとコマンドラインだけで操作できるのでサーバーに仕込むこともできます。

ですが、なにかをするためにコマンドを叩くのは面倒くさい。ということでWebブラウザからVirtualboxの操作ができるphpvirtualboxを使ってみました。

とりあえず現在使っているクライアント環境で試してみました。

準備するものとしてはphpvirtualboxはPHPで書かれているのでPHPが動く環境が必要です。今回は定番のApache2とPHPの環境を用意してみました。Apache2とPHPについては問題なく動いているなら、特に設定をいじるところはないと思います。

phpvirtualboxはサイトからダウンロードしたアーカイブをApacheから見える適当なところに展開します。

展開したディレクトリの名前はアクセスしやすいようにvboxに変更しました。

config.phpにphpvirtualboxにアクセスするための設定が書いてあるので設定します。

class phpVBoxConfig {

/* Username / Password for system user that runs VirutalBox */
var $username = 'ian'; ← Virtualboxを動かしているユーザー名
var $password = 'pass'; ← Virtualboxを動かしているユーザーのパスワード
var $location = 'http://localhost:18083/';

/* See languages folder for more language options */
var $language = 'en_us'; ← 言語設定

phpvirtualboxはvboxwebsrvのフロントエンドなので起動しておきます。

$ /usr/bin/vboxwebsrv -b --logfile /dev/null >/dev/null

上の設定をしてブラウザからアクセスすれば大丈夫なはず。

トラブルシューティング

「Error logging in or connecting to vboxwebsrv」というエラーが出るconfig.phpを設定していないと出ます。参考にしたページ

サーバーで動かす場合

Virtualbox専用のユーザーを作って動かしましょう。 Debian/ubuntu用のvboxwebsrv起動スクリプトはダウンロードページにあります。