LoginSignup
83
82

More than 5 years have passed since last update.

OSXでpackerでCentOS6.4のVirtualBox VMを作成する

Last updated at Posted at 2013-08-07

2014-05-23追記 vagrantcloud.comにCentOS 6.5とUbuntu 14.04のVMを登録しました

作成済みのVMだけ使いたい場合はそちらをご利用ください。手順は"packer - Ubuntu 14.04 を Vagrant に準備する - Qiita"へのコメントを参照してください。

また、packer用のtemplate.jsonはshiguredo/packer-templatesを利用するのがお勧めです。CentOSとUbuntuの新しいバージョンが出る度にpacker templateが追加されています。私もいつも利用させて頂いています。ありがとうございます!

packerのインストール

詳細はInstall Packer - Packerを参照してください。

  • Downloads - PackerでMac OSXのamd64のリンクをクリックしてダウンロードします。
  • ダウンロードしたzipファイルを解凍して~/packer/に配置します(~/packer/packerというパスでアクセスできるようにします)。
  • 以下のコマンドを実行します。
$ echo 'export PATH=~/packer:$PATH' >> ~/.bash_profile
$ exec $SHELL -l

packerが実行できることを確認します。

$ packer
usage: packer [--version] [--help] <command> [<args>]

Available commands are:
    build        build image(s) from template
    fix          fixes templates from old versions of packer
    validate     check that a template is valid

vagrantのbox作成

私が作成したpacker用の設定ファイルが
https://github.com/hnakamur/my-packer-template-files/tree/895f40358ff38328d30a69727bceba5f4962c3e2/centos6.4
に置いてあります。これをダウンロードしてpacker buildを実行します。

https://github.com/hnakamur/my-packer-template-files/commit/c90c7d6a17d522f9516a07176e873b99f30251da の方を使うと、provisioningでepelとAnsibleもインストールします。

$ git clone https://github.com/hnakamur/my-packer-template-files
$ cd my-packer-template-files/centos6.4
$ packer build -only=virtualbox template.json

これで、以下の処理が実行されます。

  • CentOSのisoイメージをダウンロード
  • VirtualBoxのVMを作成
  • プロビジョニング実行(template.jsonのprovisionersに対応)
  • vagrantのVM作成(template.jsonのpost-processorsに対応)

最終的にはpacker_virtualbox_virtualbox.boxが生成されます。VirtualBoxのVMは途中で一旦登録されますが削除されます。

vagrant box addコマンドで好きな名前をつけて登録します。

$ vagrant box add centos6.4 packer_virtualbox_virtualbox.box 

あとはいつも通りVagrantファイルを作ってvagrant upでお使いください。

参考サイト

Packerリリースおめでとうございます! - As a Futurist...を参考にさせて頂きました。ありがとうございます。

83
82
8

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
83
82