Edited at

【まとめ】Vagrant コマンド一覧

More than 1 year has passed since last update.

コマンド一覧を表示するコマンド

vagrant list-commands

ヘルプ

vagrant -h


仮想マシンの操作



  • vagrant up 仮想マシンの起動。vagrantfileのあるディレクトリ内で実行


  • vagrant halt 仮想マシンの終了(シャットダウン)


  • vagrant suspend 仮想マシンの一時停止


  • vagrant resume 仮想マシンの一時停止から復帰。--provision オプションでプロビジョン実行


  • vagrant reload ≒ halt & up


  • vagrant provision 仮想マシンは起動したままプロビジョニングのみ再度実行


  • vagrant destroy 仮想マシンの削除(boxは消えない)


  • vagrant status 仮想マシンのステータスを表示


  • vagrant global-status 全仮想マシンの一覧(名前、ステータス、パス)


  • vagrant global-status --prune 全仮想マシンの一覧で削除済のものが出る場合に

    ※上手くいかなかった。手動で vagrant destroy id で削除した(id例:be163bc。稼働分を削除しないよう注意)


  • vagrant ssh 仮想マシンにログイン


  • vagrant ssh-config sshログイン時の設定確認。IdentityFileは秘密鍵の場所


  • vagrant reload --provision 設定ファイル(site.yml)を変更したらこのコマンドで反映


  • vagrant version バージョン確認 + 最新バージョンの表示 (vagrant -vはバージョン確認のみ)

    Vagrant のアップデート方法は記事「Vagrant のアップデート・再インストール」を参照


boxの一覧、追加、アップデート、削除



  • vagrant box list boxの一覧を表示


  • vagrant box add **/** boxの追加。Vagrant Cloud、ローカルのbox、URLから取得から取得

  • vagrant box add 付けたい名前 box名.box


  • vagrant box update --box **/** (vagrant box updateでまとめて)


  • vagrant init BOX_NAME 初期化(Vagrantfileの作成)


  • vagrant box remove **/** boxの削除

    ※ → ユーザーディレクトリ/.vagrant.d/boxes/box名 を手動で削除


  • vagrant box remove **/** --box-version 0.0.1 boxの削除(バージョン指定)


  • vagrant package box名 現在の仮想マシンをboxに。box名省略なら元のbox名

    → これを元に vagrant box add box名 だけで同じ環境を構築できる


  • vagrant box repackage mackerel/centos66 virtualbox 0.0.2 ??再パッケージ化


スナップショット



  • vagrant snapshot save <スナップショット名> スナップショット作成

    --provision 付けると強制的にプロビジョニング、--no-provision 付けると強制的にプロビジョニングさせない


  • vagrant snapshot restore <スナップショット名> スナップショット復元。--[no-]provisionはsaveと同じ


  • vagrant snapshot delete <スナップショット名> スナップショットの削除


  • vagrant snapshot list 名前付きスナップショットの一覧を表示


  • vagrant snapshot push 使わない:スナップショット作成(名前は自動で付く)


  • vagrant snapshot pop 使わない:スナップショット復元


プラグイン



  • vagrant plugin list プラグイン一覧


  • vagrant plugin expunge --reinstall アンインストールして再インストール


  • vagrant plugin install <プラグイン名1> <プラグイン名2> インストール


  • vagrant plugin uninstall <プラグイン名1> <プラグイン名2> アンインストール


  • vagrant plugin update [names...] アップデート(名前省略で全てのプラグイン)


Vagrant Cloud



  • vaglant login ログイン


  • vagrant share ローカル環境を公開。表示されるURLで外部からアクセス可能に。Ctrl + C で終了


  • vagrant connect xxxxx SSHなどでの接続も可能。セキュリティ的リスクあるが便利な場面も

    "hashicorp/precise32"のような名前のboxが作られる。終了しても残るので、要らなくなったらこのboxは手動で削除する


未確認


  • vagrant global-status

  • vagrant push

  • vagrant rdp


Vagrant から直接 WP-Cli コマンドを実行 (WordPress, VCCW)



  • vagrant ssh -c "wp plugin install simple-map --activate" Simple Mapプラグインをインストールして有効化


  • vagrant ssh -c "wp plugin list" プラグインの一覧を表示


メモ


  • 仮想マシンの保存場所:ユーザーディレクトリ/VirtualBox VMs/仮想マシン名/

    初回のvagrant upで生成、vagrant destroyで破棄されるまで存在する

  • 追加したBoxの保存場所:ユーザーディレクトリ/.vagrant.d/boxes/box名/

  • 主な起動遷移の図解:Vagrantコマンド一覧とかチートシート - Qiita