はじめに
以前、Dockerで環境構築を行なったので、色々と比較されているVagrantの方でも環境構築をしてみました。
その時の備忘録として記載しておきます。
# Vagrantのインストール [Vagrant by HashiCorp](https://www.vagrantup.com/)からインストーラーがダウンロードできます。 Macなら「MAC OS X」を選択してください。
# VirtualBoxのインストール [Oracle VM VirtualBox](https://www.virtualbox.org/)からインストーラーがダウンロードできます。 Macなら「OS X hosts」を選択してください。
# Vagrantで使用するOSをダウンロード 「**box**」という形でOSが公開されているので以下のコマンドでダウンロードする。 種類は「[Vagrantbox.es](http://www.vagrantbox.es/)」で確認できます。
$ vagrant box add {自分でつけたbox名} {vagrantboxのURL}
今回は「Official Ubuntu 16.04 daily Cloud Image amd64 (Long Term Support release, No Guest Additions)」を選択しました。 なので以下のようなコマンドになります。
$ vagrant box add ubuntu1604 https://cloud-images.ubuntu.com/xenial/current/xenial-server-cloudimg-amd64-vagrant.box
ちなみにvirtualboxを使用しているので、「provider」が「virtualbox」のものを選択しないとダメみたいです。
# 作業用ディレクトリの作成 今後ここで作業していきます。
$ mkdir ~/works/vagrant/ubuntu1604
$ cd ~/works/vagrant/ubuntu1604
# Vagrantの設定ファイルの作成 以下のコマンドを実行すると先ほどダウンロードした「ubuntu1604」を基礎に設定ファイルを作成します。
$ vagrant init ubuntu1604
「ubuntu1604」を打ち忘れても設定ファイルの1行が違うだけなので後で修正できます。
# Vagrantの設定の変更
$ vi Vagrantfile
29行目(私の場合)の「config.vm.network "private_network"」の行のコメントを外します。
config.vm.network "private_network", ip: "192.168.33.10"
ちなみに「vagrant init」の時点で「ubuntu1604」を打ち忘れた人は15行目(私の場合)の以下の部分も変更してください。
config.vm.box = "base"
↓
config.vm.box = "ubuntu1604"
# 仮想サーバーの立ち上げ ここでサーバーが立ち上がります。
$ vagrant up
**【仮想サーバーの確認】**
$vagrant status
Current machine states:
default running (virtualbox)
runningになっていたらOK!
# 仮想サーバーにログインする
$ vagrant ssh
これで、あとは好き放題すればいいわけですね!!
# 仮想サーバーからログアウトする
$ exit
# 仮想サーバーの停止
$ vagrant halt
**【仮想サーバーの確認】**
$ vagrant status
Current machine states:
default poweroff (virtualbox)
poweroffになっていたらOK!!
# 仮想サーバーの削除 構築したサーバーを削除するだけでBoxは削除されません。
$ vagrant destroy
# Boxの削除
$ vagrant box remove {box名}
例)今回ダウンロードした「Ubuntu16.04」を削除する場合
$ vagrant box remove ubuntu1604
最後に
前回Docker for Mac、今回Vagrantを触ってみましたが、比較できるほど触ってない上に知識もないため、どっちがオススメとかはわかりません。
これから勉強していきます。
本当に申し訳ない。