LoginSignup
11
14

More than 5 years have passed since last update.

Vagrant Box をイチから作る!(備忘録)

Last updated at Posted at 2015-11-07

自分が忘れそうなので備忘録。
Vagrant用のboxをVirtualBoxでイチから作ります。
画像が多めです。
※筆者の環境はMac OS Xです

対象

  • vagrant初心者
  • 自分でboxを作ってみたい人

事前準備

  • VirtualBoxがインストール済み
  • Vagrantがインストール済み
  • OSのインストールディスク等を用意

VirtualBoxのインストール

Vagrantのインストール

CentOSのISOをダウンロード

手順

仮装マシンにOSをインストールする!

  1. 新規仮装マシンを作成 2015-11-07 21.55.20.png
  2. 名前は適当に、タイプは今回は「Linux」、バージョンは「Red Hat(64bit)」 2015-11-07 22.04.52.png
  3. メモリは512MB(あまり大きすぎるとPCスペックによっては動作が不安定になります) 2015-11-07 22.08.11.png
  4. 仮装ドライブを作成します 2015-11-07 22.10.23.png
  5. 種類は「VDI(VirtualBox Disk Image)」を選択します 2015-11-07 22.11.08.png
  6. 仮装ハードドライブは「可変サイズ」を選択します 2015-11-07 22.12.30.png
  7. 仮装ハードドライブのサイズは250GBくらいにします 2015-11-07 22.15.13.png
  8. 「設定」をクリックします スクリーンショット 2015-11-07 22.17.13.png
  9. 「ストレージ」をクリックし、「CD/DVDデバイスの追加」をクリックする スクリーンショット 2015-11-07 22.19.18.png
  10. 「ディスクを選択」でダウンロードしたISOを選択します 2015-11-07 22.21.21.png
  11. 「オーディオ」をクリックし、「オーディオを有効化」のチェックを外します 2015-11-07 22.24.05.png
  12. 「ポート」をクリックし、「USB」をクリックする 2015-11-07 22.26.39.png
  13. 「USBコントローラーを有効化」のチェックを外し、OKをクリック 2015-11-07 22.27.52.png
  14. ここまでできたらいよいよ「起動」しましょう 2015-11-07 22.29.23.png
  15. 起動したら「Install or upgrade an existing system」を選択します 2015-11-07 22.31.04.png
  16. メディアはインストールしないので、「Skip」を選択します 2015-11-07 22.33.56.png
  17. 「Welcome to CentOS!」と表示されるので「OK」を選択します 2015-11-07 22.34.25.png
  18. 言語は「Japanese」を選択します 2015-11-07 22.34.48.png
  19. 日本語でのインストールは対応していないので、英語で続行します 2015-11-07 22.35.02.png
  20. キーボードは「jp106」を選択します 2015-11-07 22.35.17.png
  21. Reinitializeする必要があると表示されるので、「Re-initialize all」を選択します 2015-11-07 22.35.34.png
  22. タイムゾーンは「Asia/Tokyo」を選択します 2015-11-07 22.35.50.png
  23. rootパスワードは「vagrant」と入力します 2015-11-07 22.36.16.png
  24. パスワードが簡単すぎると警告がでますが、「Use Anyway」を選択します 2015-11-07 22.36.36.png
  25. インストール用パーティションを作成する場所を聞かれるので、「Use entire drive」を選択します 2015-11-07 22.36.57.png
  26. 既にデータがある警告がでますが、「Write changes to disk」を選択します 2015-11-07 22.37.23.png
  27. しばらくするとインストールが完了するので「Reboot」を選択します 2015-11-07 22.52.58.png

サーバの設定を行う!

 

  1. 再起動したら、rootユーザでログインします
    localhost login: root
    Password: vagrant
    

  2. NICの設定をする
    # ln -f -s /dev/null /etc/udev/rules.d/70-persistent-net.rules 
    # vi /etc/sysconfig/network-scripts/ifcfg-eth0
    
    /etc/sysconfig/network-scripts/ifcfg-eth0
    DEVICE=eth0
    TYPE=Ethernet
    ONBOOT=yes
    NM_CONTROLLED=yes
    BOOTPROTO=dhcp
    
    # service network restart
    

  3. sudoを設定する
    # visudo
    
    /etc/sudoers
    // 56行目をコメントアウトする
    # Defaults    requiretty
    // 最終行に下記を追記
    vagrant         ALL=(ALL)       NOPASSWD: ALL
    

  4. SELinuxを無効にする
    # vi /etc/selinux/config
    
    /etc/selinux/config
    # This file controls the state of SELinux on the system.
    # SELINUX= can take one of these three values:
    #     enforcing - SELinux security policy is enforced.
    #     permissive - SELinux prints warnings instead of enforcing.
    #     disabled - No SELinux policy is loaded.
    SELINUX=disabled
    # SELINUXTYPE= can take one of these two values:
    #     targeted - Targeted processes are protected,
    #     mls - Multi Level Security protection.
    SELINUXTYPE=targeted
    

  5. iptablesを無効化する
    # chkconfig iptables off
    

  6. yumパッケージを最新版にしておく
    # yum -y update
    # yum -y groupinstall "Base"
    # yum -y groupinstall "Japanese Support"
    # yum -y install kernel-devel gcc
    

  7. 一度再起動する
    # shutdown -r now
    

  8. Guest Additionsのインストール
    VirtualBoxのメニューから「Devices」→「Insert Guest Additions CD image...」を選択
    (特になにも表示されていないがマウントされている)
    # mount -r -t iso9660 /dev/cdrom /mnt
    # sh /mnt/VBoxLinuxAdditions.run
    Building the OpenGL support module [FAILED]は無視してOK
    

  9. vagrantユーザを追加する
    # groupadd vagrant
    # useradd vagrant -g vagrant -G wheel
    # passwd vagrant
    New Password: vagrant
    Retype new password: vagrant
    # su - vagrant
    

  10. authorized_keysを登録する
    $ mkdir ~/.ssh/
    $ chmod 0700 ~/.ssh/
    $ touch ~/.ssh/authorized_keys
    $ chmod 0600 ~/.ssh/authorized_keys
    $ curl https://raw.githubusercontent.com/mitchellh/vagrant/master/keys/vagrant.pub > ~/.ssh/authorized_keys
    $ hitory -c
    $ exit
    

  11. DISCを綺麗にする
    # yum -y remove kernel-devel gcc
    # yum clean all
    # dd if=/dev/zero of=/EMPTY bs=1M
    # rm -f /EMPTY
    # history -c
    

  12. シャットダウンする
    # shutdown -h now
    

boxを作成する!

 

  1. Macのターミナルを立ち上げる
  2. boxを作成する
    $ cd ~/VirtualBox\ VMs/[仮装マシン名]
    $ vagrant package --base [仮装マシン名]
    

  3. 好きな名前に変更する
    $ mv package.box centos6_ja.box
    

  4. 完成!

参考にさせていただいたサイト

11
14
0

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
11
14