[Windows10]Vagrant+VirtualBoxで仮想マシンを構築

Vagrantについて学んだので、忘れないようにメモしておこうと思います。

私はWindows10上にVagrant+VirtualBoxで仮想マシンを構築しました。

コマンドを数回実行するだけで構築できるのですごく楽だと思います。

  1. vagrant box add ボックス名 ボックスファイルのURLでボックスファイルを登録。
  2. 任意の場所にディレクトリを作成して、cdでそこまで移動。
  3. vagrant initで初期化。
  4. vagrant upで仮想マシンを起動。
  5. vagrant sshで接続。

これだけで仮想環境は構築を作れます。

Windowsでユーザー名が日本だと上手くいかない可能性があります。

私はこちらの記事でなんとか動くようになりました。

プロビジョニング

仮想マシンの初回起動時にシェルスクリプト実行させてソフトウェアをインストールさせたり出来るようです。

以下のようにすることで、初回起動時にApacheとPHPをインストールさせることができます。

  config.vm.provision "shell", inline: <<-SHELL
    sudo yum install -y httpd
    sudo yum install -y php
  SHELL

パッケージ

Vagrantで作成した仮想環境を複製することができるようです。

同じ環境を複数つくる場合や配布する場合に使えそう。

vagrant packageを実行するとpackage.boxが作成されます。

ファイルサイズは少し大きいです。私の場合は1GBぐらいでした。

パッケージにした.boxファイルを利用する場合は、以下の手順で大丈夫だと思います。

  1. vagrant box add ボックス名 .boxファイルのパスを実行する。boxが登録されます。
  2. vagrant box listで登録されたことを確認します。
  3. vagrant init ボックス名で初期化します。
  4. vagrant upで仮想マシンを起動。

Vagrantfileはパッケージには含まれないので、複製元のをコピーする必要があります。