Vagrant

タグ別:

WindowsだってVagrantくらいカンタンにインストールできるんやで!

丁稚さんです。ぎじつ系。

Vagrant って浸透してますね。
丁稚さんはあまり使う機会ないのですが…。
だって OpenVZ とか Docker 使ってたから…。

ただ、ちょっとディストリビューションレベルからインストールを繰り返さなきゃいけない事案があって、いちいちHyper-VのインスタンスをGUIで立てるのもめんどくさいのでVagrantを使ってみました。

しかし! ネットでは
「Windowsではどう使うか知りません」
「OS Xではこうやります」
という情報ばかり!

ええい! Windows だって Vagrant くらい一発インストールできるわ!
と奮起して、カンタンなスクリプトを書いてみました。
ホントはコマンドライン3行ですむんだけど、
ていねいにまとめたんだぜ…。

PowerShellスクリプト(.ps1)として保存し、管理者権限で実行すると、

  • (なければ)Hyper-V をセットアップ
  • (なければ)Chocolatey をインストール
  • (なければ)Vagrant をインストール

してくれるはずです。手順ごとに再起動が要求されるというワナ…。

Hyper-V なので Windows は x64 で Professional 以上じゃないとダメだと思います。丁稚さん、VMWare とか VirtualBox と相性悪いねん…。ちなみにこのブログはHyp(以下検閲)。

Vagrant を使うときも、

PS> vagrant up --provider=hyperv

のように --provider=hyperv オプションをつけるのを忘れないであげてください。

あと、真の Windows ユーザーならターミナルは TeraTerm だと思いますが、Vagrant から TeraTerm を使うには、

vagrant plugin install vagrant-teraterm

Write-Output `
    "ENV['PATH'] += ';' + File.expand_path('C:/programs/teraterm')" `
    | Add-Content $HOME\.vagrant.d\Vagrantfile

とかいうPowerShellスクリプトを実行すればOK(C:/programs/teraterm の部分は TeraTerm のインストールディレクトリパスに書き換えてね)。

さらにさらに、プロビジョニングツールに Fabric を使うとかいう好き者は、

if ( Get-Command python -ea SilentlyContinue ) {
} else {
    choco install -y choco install python2
}

if ( Get-Command fab -ea SilentlyContinue ) {
} else {
    python -m pip install --upgrade pip
    pip install fabric
}

vagrant plugin install vagrant-fabric

という PowerShell スクリプトを実行すれば Python(2)も Fabric も、さらに Vagrant-Fabric プラグインもインストールしてもらえるよ♥

なんだ…Windows で Vagrant、かんたんじゃねえか(高倉健)。

でも、丁稚さんのマシンは非力だから二度と使わない! ウワアアン…