vagrantBox作成(2): centOS インストール

vagrantBoxの自作から公開までの第2回.
今回はcentOSのインストールを行う.

vagrantBoxの自作から公開までのまとめ記事はこちら.

vagrantBoxの自作から公開まで まとめ
vagrantBoxを自作したので, 公開までの手順をまとめる.

動作環境

  • mac OS X EI Capitan ver: 10.11.4
  • vagrant 1.8.7
  • virtualBox 5.0.20

前提条件

packer, vagrant-vbguest がインストール済みとする.
これらは vagrantBox 作成(1): 下準備 でインストールした.
第1回の内容はこちら.

vagrantBox 作成(1): 下準備
vagrantBoxの自作から公開までの第1回. 今回はvagrantBox作成のための下準備を行う. vagrantBoxの自作から公開...

作業ディレクトリ作成

vagrantBoxを自作する作業ディレクトリをホストマシン上に作成する.
今回の作業ディレクトリ名は vagrantBoxDiy とする.

テンプレート(centOS)ダウンロード: Boxcutter

vagrantBox内でメインで動くOSを Boxcutter から選択する.

今回は centOS を選択.
wgetコマンドでダウンロードする.

コード解説

容量圧迫の原因になるのでzipファイルは削除しておく.
名前が長いので centos へrenameする.
解凍したファイルへ移動する.

centos68.json 編集

ここからはcentos68.jsonファイルを編集してゆく.

次の2点を編集する.

  • iso_url: centOSイメージファイル取得先URL設定
  • install_vagrant_key: default insecure vagrant key インストールをやめる

iso_url: centOSイメージファイル取得先URL設定

ディレクトリ内の centos68.json に次の項目がある.

  • iso_url

この項目でcentOSイメージファイル取得先URLを設定する.
取得先が現在地(日本)から近いほどダウンロードが短時間で済む.

今回は次のサイトから ftp.riken.jp を取得先として選択する.

Actual Country –

http://ftp.riken.jp/Linux/centos/6.8/isos/x86_64/
http://www.ftp.ne.jp/Linux/packages/CentOS/6.8/isos/x86_64/
http://ftp.iij.ad.jp/pub/linux/centos/6.8/isos/x86_64/
http://ftp.jaist.ac.jp/pub/Linux/CentOS/6.8/isos/x86_64/
http://ftp.tsukuba.wide.ad.jp/Linux/centos/6.8/isos/x86_64/
http://mirror.fairway.ne.jp/centos/6.8/isos/x86_64/

引用: centos.org

iso_url は次のように設定する.

install_vagrant_key: default insecure vagrant key インストールをやめる

The variable INSTALL_VAGRANT_KEY can be set to turn off installation of the default insecure vagrant key when the image is being used outside of vagrant.
Set INSTALL_VAGRANT_KEY := false, the default is true.

引用: Makefile.local override | boxcutter/oraclelinux
github

insecureなvagrant keyのinstallをやめる.
insecureなssh keypairについては次の記述が参考になる.

Insecure Keypair

These keys are the “insecure” public/private keypair we offer to base box creators for use in their base boxes
so that vagrant installations can automatically SSH into the boxes.

If you’re working with a team or company or with a custom box and you want more secure SSH,
you should create your own keypair and configure the private key in the Vagrantfile with config.ssh.private_key_path

引用: https://github.com/mitchellh/vagrant/tree/master/keys

「vagrant へログインするときのkeyペアはinsecure.
だから, チームで利用する時はsecureなssh keypairを生成してVagrantfile config.ssh.private_key_path にpathを指定してね.」
とのこと.

今回は一人で使うので次のような設定を行う.

centos68.jsonファイル最末尾に次の項目を追記.
"install_vagrant_key": false

ここまでで centos68.json は次のようになる.

ここまでで centos68.json の編集は完了.

コンパイル&ビルド

ここから先は次のページを参考に進める.

諸注意

公式ドキュメントにある通り, 使用している仮想環境ソフト(VirtualBox, VMware, AWS, etc..)によってbase box作成方法が異なる.

CREATING A BASE BOX

Creating a base box is actually provider-specific.
This means that depending on if you are using VirtualBox, VMware, AWS, etc.
the process for creating a base box is different.
Because of this, this one document cannot be a full guide to creating a base box.

引用: CREATING A BASE BOX | Vagrant by HashiCorp

私はVirtualBoxとpackerを利用して作成する.
まだこれらの環境を整えていない場合は前回の記事を参照.

packer build コマンド実行

先程編集した centos68.json の内容を centos.json に上書きする必要がある.

You tell packer to use a specific user variable file via the -var-file= command line option.
This will override the default options on the core centos.json packer template, which builds CentOS 6.7 by default.

引用: Building the Vagrant boxes with Packer

次のコマンドを実行することで centos.json ファイルに上書きする.
$ packer build -var-file=centos68.json centos.json

このコマンドで実行されるのは次の点.

  • isoファイルのダウンロード
  • 仮想マシンのブート
  • boxファイル化

完了すると次の場所にboxが作成されている

  • centos/box/virtualbox/centos68-0.1.0.box

このboxには centos68 のみが入ったクリーンなboxである.
これからこのboxにLAMP環境などを構築してゆくことになる.

vagrantBox をリストへ登録: vagrant box add xxx

次のコマンドでvagrant boxを使える状態にする.

$ vagrant box add minimun/centos68-minimal ./box/virtualbox/centos68-0.1.0.box

今回は minimun/centos68-minimal というbox名にした.

vagrant box --list で追加したbox一覧が表示される.

ここまででcentOSインストールは完了.
今回は以上.

参考

スポンサーリンク
336 x 280 – レクタングル(大)
336 x 280 – レクタングル(大)
  • このエントリーをはてなブックマークに追加

この記事が気に入ったら
いいね!しよう

トップへ戻る