• Skip to main content
  • Skip to primary sidebar
  • ホーム
  • お問い合わせ

ハイパー仕事し隊

思い立った吉日!イロイロ試してオンリーワンの起業家を目指してます!

現在の場所:ホーム / ウェブアプリ関連 / Vagrant を使うと仮想マシン構築がすごいラク!まずはインストールしよう!

Vagrant を使うと仮想マシン構築がすごいラク!まずはインストールしよう!

2018年4月1日

vagrant logo

こんにちは。つーびー (tsuBee5) です!

ここ最近 Linux やらネットワークについて勉強始めました!!

でも問題がありまして。。そう、環境構築がなかなか面倒くさい。

そこで Vagrant という良いもの見つけたので、紹介していきたいと思います!


Vagrant (べぃぐらんと)とは?

Vagrant のホームページはココ
サンフランシスコを拠点とした HashiCorp 社の製品で日系と思われる橋本ミッシェルさん達が 2012 年の設立した会社のオープンソース製品になります。

何ができる?

ちょー簡単に言うと、仮想環境の構築を効率化してくれるツールです。
仮想環境を構築するには別のツールが必要で VirtualBox や VMWare などを利用することになります。

何が便利なのか?

一番のメリットは OS から仮想環境をサっと構築できるになります。
他にもたくさんメリットはあります。例えば、

  • LAMP, LEMP, MEAN など色んなスタックの環境をサクッと作って試せる
  • 思いたったら 1 分以内には使いたい仮想環境を構築できる
  • 「nginx ってなんだ!使ってみたい」→ ソッコーで構築できる
  • ちょっとした確認やテストをする際、壊れても良い環境が構築できる
  • 例: 本番環境で動作を確認する前に、テスト環境でテストしておきたいですよね?
  • チームで開発している場合、同じ環境を構築できる
  • 「オラの環境では動いてただよ。お前の環境が悪いんでねーか?」ということがなくせる
  • 環境構築を自動化できる

実際のコードは、

  • Step1: Box の設定 (名前とダウンロード先)
    vagrant box add [title] [url]
  • Step2: Vagrantfile という各種設定ができるファイルを生成
    vagrant init [title]
  • Step3: 起動
    vagrant up

すごい簡単ですね。

実際に触って見よう

では実際に Windows 7 の環境にインストール使ってみましょ。こちらが必要なものになります。

  • VirtualBox
  • Vagrant
  • Box
  • Putty or Git Bash
    • Windows から Linux に接続するための SSH クライアントです

VirtualBox のインストール

まずは、仮想環境を構築するツールをダウンロードします。下記サイトから VirtualBox をダウンロードしましょ。
Downloads – Oracle VM VirtualBox
virtualBox

Vagrant の インストール

次に Vagrant をダウンロード・インストールします。

  • https://www.vagrantup.com/downloads.html

vagrant download

インストールになかなかの時間がかかりますけど、気長に待ちましょ。。

vagrant setup

Vagrant を使って仮想環境を構築するには Box と呼ばれるテンプレートを利用することになります。既にたくさんの Box が準備されています (もちろん自作も可能です)。

  • https://app.vagrantup.com/bento
  • https://app.vagrantup.com/boxes/search
    • 上記 2 つは ‘vagrant add’ が不要なので、環境構築が楽です。
  • http://www.vagrantbox.es/

これでやっと環境は準備はできました!では早速いろんな環境をインストールしていきましょ!

Vagrant から Ubuntu 環境を構築

まず、Bento Box のサイトから Ubuntu を探しましょ。

Ubuntu-17.04 の場合は下記の様になります。コマンドラインからカレントを任意に変更し、下記コマンドを実行します。

vagrant init bento/ubuntu-17.04 \
--box-version 2.3.7

このコマンド実行で Vagrantfile が生成されます。このファイルをもとに仮想環境を構築するので、テキストファイルに下記をコピペの手作業で作成しても問題ありません。

Vagrant.configure("2") do |config|
config.vm.box = "bento/ubuntu-17.04"
config.vm.box_version = "2.3.7"
end

Vagrantfile が生成できましたら、あとは起動するのみです。しかも下記 1 ラインのみ!!

vagrant up

実行後は、ダウンロードが始まり仮想環境が起動します (すげーー楽!)。Windows の場合は SSH による接続が必要になります。

vagrant ssh

Putty や Git bash などの SSH クライアントから接続する場合は、コマンド出力結果から接続情報を確認できます。

default: SSH address: 127.0.0.1:2222
default: SSH username: vagrant

コマンドからの接続は下記の様になります。

//Git bash からの接続の場合: @ -p ssh vagrant@127.0.0.1 -p 2222

パスワードも vagrant です。
いやー、すごいですね。ちょー簡単。。

終了する場合

vagrant hault

環境を削除する場合

vagrant destroy

いやー、ホントすごい。。

エラーがでた場合①: OS が仮想環境の構築を許可していない

virtualbox error message

だーー!全然接続できない!!

VirtualBox から接続するとこんなダイアログが!!

って人は、BIOS から設定が必要である可能性があります。PC によると思いますが、BIOS から仮想化を **有効** にする必要があります (これまで初期状態から有効だった PC なかったですけど。。)。なので、「全然起動しない!」と思ったら BIOS 設定を見直してみてください。

エラーがでた場合②: Powershell のバージョンが低い

PS Version Check

Windows 7 で 特に何もしていなければ、Powershell のバージョンは 2.0 です。ですが、Vagrant では最低でも 3.0 が必要なので、アップグレードする必要があります。(Vagrant はコマンドプロンプトからも実行できますが、Vagrant 側が Powershell を実行しています。)

必要なモジュールは マイクロソフトのオフィシャルページ からダウンロードできます。

公式ページにもありますが PowerShell 専用のインストーラーはありません。WMF (Windows Management Framework) の一部として提供しています。WMF と Powershell のバージョンは合っていますので、3.0 以上にアップグレードすればエラーはなくなります。

ヒント: WMF をインストールする際、いくつかある *.msu ファイルの内インストール時にエラーがでるものがあります。インストールできるものをインストールすれば OK ですので、エラーがでても他の *.msu を実行していきましょ。

まとめ

これから Linux やネットワークの勉強するには大変助かりますね。

他にも頻繁に利用しそうなコマンドは下記になります。これからどんどん色んな環境を試していきたいですね!

#コマンド一覧を表示するコマンド
vagrant list-commands

#ヘルプ
vagrant -h

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

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

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

#仮想マシンの一時停止から復帰
vagrant resume

#仮想マシンの再起動
vagrant reload

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

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

#全仮想マシンの一覧
vagrant global-status

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

Vagrantfile で Linux, Apache, MySQL, PHP (LAMP) を一括構築! で実際に LAMP スタックを作成しています。こちらの見て下さいね!

では、また!

カテゴリー: ウェブアプリ関連
タグ: vagrant

最初のサイドバー

簡単な自己紹介

ごく普通の 30 代サラリーマンです。世界を旅しながらの生活が目標!!
IT 全般に興味あり: Python (Flask, Django) / PHP (Laravel, Wordpress) / Golang / AWS / Network Security.
Read More…

サイト内検索

最近の投稿

  • 【VS Code プラグイン】Postman より便利!? Rest Client をオススメする理由
  • MySQL と phpMyAdmin を Docker Compose で作って、Python から接続する
  • Windows10 上の Ubuntu から “curl localhost” を実行すると “Connection refused” になる原因
  • リダイレクトの仕組み知ってる?Flask で調べるてみるのだ。
  • Apple 独自の 検索エンジンで何が変わるのか

アーカイブ

  • 2021年3月
  • 2021年1月
  • 2020年10月
  • 2019年3月
  • 2018年11月
  • 2018年10月
  • 2018年9月
  • 2018年8月
  • 2018年7月
  • 2018年5月
  • 2018年4月

タグ

amazon cloudfront amazon s3 aws coursera css django docker flask fullstack gcp github hawaii life in USA linux mongodb mysql postgresql pwa python sqlite vagrant

Contact
Privacy Policy and Term of Use
Copyright © 2025 · All rights reserved.