読者です 読者をやめる 読者になる 読者になる

ponkiti's blog

主に自分用、イベント参加メモや備忘録として利用

VagrantでBoxを作る

この記事の続き。

Boxを作る

vagrant packageは、「現在起動中のVirtualBox環境を、再利用可能なboxファイルにパッケージ」するコマンド。

$ cd myCentOSVM2
$ vagrant package
==> default: Attempting graceful shutdown of VM...
==> default: Clearing any previously set forwarded ports...
==> default: Exporting VM...
==> default: Compressing package to: /Users/user_name/myCentOSVM2/package.box

package.boxが作成された。

$ ls
Vagrantfile     package.box     provision.sh

作成したBoxをVagrantに追加する

Boxをシステムに追加したい場合は、vagrant box addコマンドを使用し、追加するBoxの名前(今回はmy_boxとした)を任意でつける。

$ vagrant box add my_box package.box
==> box: Adding box 'my_box' (v0) for provider:
    box: Downloading: file:///Users/user_name/myCentOSVM2/package.box
==> box: Successfully added box 'my_box' (v0) for 'virtualbox’!

boxesディレクトリに追加したBoxが格納されていることを確認し、元となったpachage.boxは不要となるため、これを削除しておく。

$ ls ~/.vagrant.d/boxes/
centos64                    my_box

$ rm pachage.box
rm: pachage.box: No such file or directory

$ sudo rm package.box
Password:

作成したBoxを利用する

追加したBoxを使って、新しい仮想マシンを立ち上げる。

$ mkdir myBox
$ cd myBox/
$ vagrant init my_box
A `Vagrantfile` has been placed in this directory. You are now
ready to `vagrant up` your first virtual environment! Please read
the comments in the Vagrantfile as well as documentation on
`vagrantup.com` for more information on using Vagrant.
$ vagrant up
(省略)

接続確認

HTTPサーバに接続できていることを確認する。

$ vagrant ssh
(省略)
[vagrant@localhost ~]$ sudo service httpd status
httpd (pid  1410) is running...

参照