覚えておきたい基本のVagrantコマンド 基本のき! ITかあさん

ITかあさん

覚えておきたい基本のVagrantコマンド 基本のき!

基本のVagrantコマンド 基本のき

Vagrant

ぎゃー!Vagrantが立ち上がらないよー!どーしよー!プロジェクトががが

とかなる前に基本のVagrantコマンドを覚えておこう。かあさんVagrantコマンドはvagrant upしか知らなくて、

Macがバッテリー切れして落ちる→Vagrant環境で作った仮想環境も落ちる→Mac起動してvagrant upする→起動しない→vagrant upする→起動しない→vagrant up する 起動しない 。。。。。。。。。

超!ドキドキしました。なので、基本のvagrantコマンドはしっかり覚えておきまっしょい。

なお、Vagrantコマンドはvagrantファイルの存在する場所までcdコマンドで移動してから実行します。

仮想マシンの起動

vagrant up

vagrant upは仮想マシンの起動コマンドです。Vagrantfileと同じディレクトリまでターミナルでcdコマンドで移動してからこのコマンドをぽちります。初めてVagrantFileを設置したら、一番最初に打つのがこのコマンドですね。

仮想マシンへSSHログイン

例えば前回の記事での仮想環境はCentOS系です。もちろん、ファイルの編集は自分のローカル環境のファイルを自分の好きなエディタで編集すればよいのですが、やれMySQLだー、あーyumコマンド打ちたいわーとかあるじゃないですか。なのでvagrant環境で作った仮想環境には

vagrant ssh

これだけでvagrantでつくった仮想環境にログインすることが出来ます。

$ vagrant ssh
The following plugins were installed with a version of Vagrant
that had different versions of underlying components. Because
these component versions were changed (which rarely happens),
the plugins must be uninstalled and reinstalled.

トップにcdで移動します

$cd /
ls コマンドで share ディレクトリの存在を確認します。
[vagrant@cakephp /]$ ls
bin dev home lib64 media opt root selinux srv tmp vagrant
boot etc lib lost+found mnt proc sbin share sys usr var

今回だとshareフォルダ以下がドキュメントルート直下になります。

$ cd share/
[vagrant@cakephp share]$ ls
README.md cake composer.lock crontab lib vagrant
app composer.json composer.phar deployer up vendor

ほら、ローカルと一緒ですよね。

仮想マシンの状態の確認

vagrant status
$ vagrant status
vagrant-vbguest
Current machine states:

default running (virtualbox)

The VM is running. To stop this VM, you can run `vagrant halt` to
shut it down forcefully, or you can run `vagrant suspend` to simply
suspend the virtual machine. In either case, to restart it again,
simply run `vagrant up`.

default running (virtualbox)

となっているので、defaultという名前のvirtualboxが起動しているのが分かります。

仮想マシンの停止

仮想マシンの停止するには

vagrant halt
$ vagrant halt

vagrant-vbguest
[default] Attempting graceful shutdown of VM…

仮想マシンの消去

vagrant destroy

すると、削除してもよか質問されるので、yキーを押して実行します

$ vagrant destroy -f

-fのオプションで強制的に実行します。

プロビジョニングとかscript.shを何か変更したら

起動している仮想マシンに対して実行します。プロビジョニングをします。

vagrant provision

後からモジュールやらナンやら追加したい場合もありますね。
そんな時はscript.shに追記するのですが、追記してから
vagrant provisionを実行します。
すると、追記した分のインストールも実行してくれます。

Macの電源が落ちる→vagrant upしてもダメ。

そういう時は

$ vagrant halt

(一度正しく終了)
$ vagrant up

(起動)
$ vagrant provision

(プロビジョニングを実行)

正しく終了して、vagrant up実行してから vagrant provisionを実行します。

なお、haltしてからupなら

$ vagrant reload 

(再起動)

これでも同じです。

この他にもプラグインインストールのvagrant plunin installやsuspendなど色々あるのですが、配布されているVagrantfileを利用して仮想サーバーを運用するだけならこれら基本コマンドだけで大丈夫かも。

初夏のJavaScript祭 in サーキュレーションビル ForPro