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 listBoxの一覧表示。
vagrant box add xx/xxBoxを追加することができます。このコマンドは使用しなくても、仮想マシンを vagrantup で最初に構築するとき追加されます。
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 というのは、 vagrantsuspend  コマンドで一時停止している状態です。

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

 

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

 

vagrant resume

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

 

vagrant provision

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

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

 

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

 

まず、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にはコマンドがありますが、その都度調べましょう。

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

コメント