Vagrant + VirtualBox で構築した環境を他の PC へコピー・移設する方法
概要
MacBookPro から iMac へ Vagrant + VirtualBox で構築した環境をコピーする。
開発中のソースは GitHub で管理されているのでどちらのマシンでも作業できるようになる。
- コピー元 = MacBookPro
- コピー先 = iMac
この仮想環境は CentOS 7 なので、ボックス名は cent7 にしている。
[コピー元作業]package.box を作成・転送する
MacBookPro でまず下記を実行してみる。
# vagrant box list cent7 (virtualbox, 0)
box として cent7 が取り込まれていることがわかる。
cent7 の Vagrantfile が置いてあるディレクトリへ移動し、下記を実行する。
# vagrant package
実行したディレクトリに cent7 のpackage.box
が作成される。
AirDrop で MacBookPro から iMac へ package.box と Vagrantfile を送信する。
MacBookPro で行う作業はこれで終わり。
[コピー先作業]package.box を受けとって環境構築する
準備
下記サイトより Vagrant と VirtualBox をダウンロードしてインストールする。
確か両方とも dmg ファイルなのでインストールは簡単。
package.boxを取り込む
受け取った package.box と Vagrantfile を任意のディレクトリへ移動する。
# mv ~/Downloads/package.box ~/WorkSpace/cent7/. # mv ~/Downloads/Vagrantfile ~/WorkSpace/cent7/. # cd ~/WorkSpace/cent7/
package.box を取り込む
# vagrant box add cent7 package.box
下記を実行すると cent7 が取り込まれていることがわかる。
# vagrant box list cent7 (virtualbox, 0)
環境を立ち上げてみる。
# vagrant up # vagrant ssh
無事に立ち上がって完了。
まとめ
非常に簡単に仮想環境を他PCへコピーして動作させることができた。
当然だけど、仮想環境内の秘密鍵や git, ssh, bashrc, vimrc などの設定もまんまコピーされるので、 チームメンバーへ box ファイルを渡すときは注意が必要。
チームで仮想環境の運用を考えると chef でがんばって書いて管理していくか、 個人設定をしていないまっさらな box ファイルを管理していくのがよさげか。
自分用にコピーや移設する分には何も考える必要がなく快適!!