Vagrant
言語と開発環境へ戻る。
概要
Vagrant(ベイグラント)はHshiCorp(本社:アメリカ合衆国 カリフォルニア、CEO:Mitchell Hashimoto)が作成したVirtualBoxとかの仮想端末の設定を自動化するツールでコンソールコマンドで、仮想端末の起動、再起動、停止、sshによる接続といった操作もできるようにするアプリケーションです。HashiCorpは明日のDataCenterの在り方を考え、良い方向に導こうとするソリューションを提供する会社のようです。
公式サイト
インストール
自身が使っているOS用のインストールアプリを上記の公式サイトからダウンロードして、目的にもよりますが、インストールアプリのDefault設定で[OK]ボタンを押下していくだけのインストール方法で特段の問題はおこらないかと思います。
コマンド
Vagrantfileと設定を実行するファイル一式を入手もしくは作成して、Vagrantfileのあるフォルダをカレントディレクトリとした状態のコマンドプロンプトもしくはターミナルから以下のコマンドを実行することにより設定を自動化しつつ起動できる
vagrant up
但し、毎回、設定ファイルの内容に従って、自動化処理が動いたうえで起動がなされるため、共有ディレクトリ設定やNATのポートフォリオの設定が思わぬ初期化をされたりする。またWindows10で、共有ディレクトリの設定をすると
vagrant \\?\C:\HashiCorp\SocialWebVM
mount -t vboxsf -o uid=1000,gid=1000 vagrant /vagrant : No such file or directory
のように\\?\という不正な記号が付くためうまく利用出来ず、解決策も見いだせなかった。結局、管理人は最初の起動時にほとんどすべてのあらゆる設定を自身でおこなわなければならない状況になりました。なんじゃこれ…。わけわからん。オライリーの入門ソーシャルデータという本で勉強しようとしたら、コレっすよ。あいたたたでした。ネットでしらべてもWindows10でこの勉強をしようとした人はあまりいないのか、解決させるための記事が見つけられなかった。一番おしい記事でも共有ディレクトリの設定を断つという方法だったのですが、vagrantfileで設定を断っても、なんかしらんけど共有しようとしてくる設定になっていて性根つきた…。vagrant upとかvagrant reload はもう使わね。
このほかに使える主なコマンドは以下のとおり
vagrant reload 動作していたら仮想端末を停止→起動 vagrant halt 仮想端末停止(これはvagrantfileの起動設定がおかしくても使える) vagrant ssh 仮想端末へのssh接続(これも仮想端末のssh設定ができれば使える) vagrant -v バージョン確認
そのほかに使ったコマンド
vagrant plugin install vagrant-vbguest
プラグインのインストールをするときは上記のようにします。上記の例ではvagrant-vbguestをインストールしています。
vagrant box list コマンド結果 precise64 (virtualbox, 0)
管理人の場合はUbuntuの64bit版を使っているので、上記のようになるらしい。
プラグインをリストアップするには以下のようにします。
vagrant plugin list コマンド結果 sahara (0.0.17) vagrant-aws (0.7.2) vagrant-share (1.1.7, system) vagrant-vbguest (0.13.0)
管理人は今、上記のような状態です。ちなみにsahara サハラはOSの設定途中の状態を記憶しておくものです。SQLでたとえるとcomitとかrollbackとかができる感じのものです。途中の時点に戻すためのプラグインです。awsはアマゾンwebサーバの略で、vagrant-awsは仮想環境と同じものを AWS に構築するものです。使うつもりはありません。awsっていうのがあるんだぞっ!っていうことを知るためのものです。vagrant-shareはVagrantを提供しているHashicorpのサービスのひとつで、URLからログインして使うタイプの共有方法です。https://atlas.hashicorp.com/account/new から登録して使います。これも使うつもりはありません。vagrant-vbguestは VitualBoxが保持しているCDイメージでVirtualBox Guest Additionというものがありまして、これにOSに必要なツールがはいってたりするので、仮想CDに簡単に出し入れできるようになっていて、このCDを更新するためのツールだと思えばよいでしょう。以上、管理人がインストールしたプラグインの一部の紹介でした。vagrantってなんかいろいろ便利にしようとするツールなんだなぁということだと思います。
言語と開発環境へ戻る。