vagrant のコマンド一覧

Windowsツール
この記事は約9分で読めます。
スポンサーリンク

vagrant(ベイグラントと呼びます)は、自分のローカルパソコン上に、いくつかのパソコンをエミュレートさせることができる便利なツールです。パソコン上に作る偽物のパソコンを仮想マシンとか、仮想環境とか言います。

vagrant 事態は管理ツールなので、実際の仮想パソコンは Virtualbox など別ツールを利用することになります。

vagrant を使った仮想環境の作り方を、記事「windowsにvagrantとvirtualboxでWeb開発環境をつくろう。(その1)仮想マシン作成まで」で紹介していますので興味があれば見てください。

この記事では、vagrantのコマンドをまとめておきます。大雑把に以下の分類で説明します。

  • 仮想マシン管理(仮想マシン管理フォルダ上で実行するコマンド)
  • 仮想マシン管理(どのフォルダでも実行できるコマンド)
  • Box(仮想マシンのベースイメージ)を管理するコマンド
スポンサーリンク

vagrant コマンド一覧

※これが全部ではないですが、普段使いそうなものはピックアップしてます。

個別仮想マシン管理(仮想マシン管理フォルダ上で実行するコマンド)

vagrant init (box名) 仮想マシンの初期化。(フォルダにVagrantファイルを作成)
vagrant up 仮想マシンの起動。初回は構築(プロビジョニング)も同時に行います。
vagrant halt 仮想マシンのシャットダウン(終了)
vagrant suspend 仮想マシンのサスペンド(一時停止)
vagrant resume 仮想マシンの復帰。
vagrant reload 再起動。 halt(シャットダウン) して up(起動) します。
vagrant provision 仮想マシンが起動した状態で使用。構築をし直します。Vagrant ファイルを修正したときに実行します。
vagrant destroy 仮想マシンを削除します。vagrant は 簡単に仮想マシンを削除したり 再構築できるのが便利です。
vagrant status 仮想マシンのステータス(状況)表示。
vagrant ssh 仮想マシンへログインします。

全仮想マシン管理(どのフォルダでも実行できるコマンド)

vagrant global-status 仮想マシンの状況表示。ローカルパソコンのvagrantで管理しているすべての仮想マシンが一覧表示されます。
vagrant destroy xxxx

vagrant global-status で表示されるid を xxxxに指定すると、どのフォルダからでも削除できます。

vagrant plugin list

インストールされているプラグインの一覧表示。
プラグインの操作には、list, install, uninstall, update などあります。

vagrant version

vagrant のバージョン表示

Box(仮想マシンのベースイメージ)を管理するコマンド

vagrant box list Boxの一覧表示。
vagrant box add xx/xx Boxを追加することができます。このコマンドは使用しなくても、仮想マシンを vagrant up で最初に構築するとき追加されます。
vagrant box remove xx/xx

Boxの削除

 

vagrant コマンドの動作例

個別仮想マシン管理

vagrant init (box名)

ちなみにbox名を間違っていてもエラーは出ません。

 

フォルダに既にVagrantfile がある場合はエラーになります。いったん削除してからinitコマンドを使います。

vagrant up

初回

初回は構築(プロビジョニング)も行います。base box をImporting(輸入・取り込み)していると表示されてますね。

起動まで終わっています。

2回目以降poweroff(停止)時

再構築をせず、起動だけします。

 

サスペンド(一時停止)時

普通に復帰します。

 

vagrant reload

halt(終了)してup(開始)します。

 

vagrant ssh

ログインします。ログインした先(=仮想マシン上)では、bashというシェルでlinuxのコマンドを使って仮想マシンを操作します。

linuxのコマンドについては、記事「centosでよく使うLinuxコマンド【基礎編】」で紹介しています。

 

vagrant suspend

仮想マシンを一時停止します。

 

vagrant status

仮想マシンのステータス(状況)を表示します。

 

saved というのは、 vagrant suspend  コマンドで一時停止している状態です。

動作しているときは、「running」 になります。

 

停止時はpoweroff と表示されます。

 

vagrant resume

susupendした仮想マシンを復帰させます。このコマンドを覚えてなくても  vagrant up でも同様に復帰できます。

 

vagrant provision

仮想マシンの管理ファイル Vagrantfile に provision 項目を記述している場合に、プロビジョニングを実施します。

仮想マシンが動いているとき(runningステータス)だけ、できます。また、初回の vagrant up  でも起動した後、プロビジョニングまで行います。

 

プロビジョニングのテストをします。とはいえ、初期設定というより、画面に文字列を表示する echo コマンドを Vagrantfile に記述して、 vagrant provision  を実行してみます。

 

まず、Vagrantfile をエディタで開いてください。
下図のように、config.vm.provision の行があるので、# をはずして有効にしてください。

最初は、

 

のようになっています。# は コメント行の意味で、設定としては意味を持たない行になります。修正により下のリストのようにします。

echo というのは Linuxのコマンドの一つでただ単に画面表示するだけになります。

 

実行結果:

 

ちなみに仮想マシンが動いていないときに行うと、下ログのように、VM(Virtual Machine = 仮想マシン)が動いていませんよと注意され実行されません。

 

vagrant destroy

 

仮想マシンを削除します。

仮想マシンの実体は、

C:\Users\user\VirtualBox VMs

フォルダの下にあります。user はログインユーザ名です。

box と同じ名前のフォルダの下に、そのboxを使用している仮想マシンの数だけ vmdk ファイルができています。

一つ上のフォルダには、管理用のフォルダもできます。vmdkファイルが保存されるcentos-7.5-x86_64 以外の3つのフォルダが 仮想マシン管理フォルダになってます。

destroy すると消えます。

vagrant destroy後のフォルダ

 

全仮想マシン管理

vagrant global-status

vagrant destroy xxxx

このうち、d00b683 を消してみましょう。

→ 仮想マシンの管理フォルダに日本語名が混じっているとNGでした・・・「UTF-8のバイト並びが無効」とか文字コードが問題っぽいエラーが出てます。

 

代わりに管理フォルダが英数文字の 7d8705c の方を削除してみます。こちらは問題なく削除できます。

vagrant plugin list

vagrant の機能を拡張するプラグインの一覧表示です。

何も入れてないのでこんな表示です ^^;

 

vagrant version

バージョン表示です。新しいバージョンがリリースされていると教えてくれます。

BOX管理コマンド

vagrant box list

 

vagrant box add xx/xx

chef社の CentOS 6.9 のboxファイルをダウンロードしてみます。途中で仮想マシンを作成するツールを選択します。VirtualBoxを使用しているので、2 を入力しています。

 

boxファイルは、「C:\Users\user\.vagrant.d\boxes」 フォルダに保存されます。

user は ホストOSであるWindows10のログインユーザ名です。

ダウンロード前:

ダウンロード後:

bento/centos-6.9 のboxが増えてます。

まとめ

この記事では、vagrant でよく使うコマンドをまとめました。

とりあえず、いざ使おうというときは、ここに挙げたもので十分間に合うはずです。

他にもvagrantにはコマンドがありますが、その都度調べましょう。

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

コメント