LoginSignup
19
23

More than 5 years have passed since last update.

【仮想環境】vagrantの使い方〜初心者の書いた備忘録〜

Last updated at Posted at 2018-06-12

はじめに

最近、業務でvagrantを触る機会があり、
なんとなく調べて、とりあえず手順をメモしてコマンドを叩いていましたが、
(さすがにvagrant upで起動?するのかなくらいはわかります)
せめて何が起きてるのかくらいは知らないとまずそうだなと思い、せっかくなので色々調べてみました。

注意:現時点では、あくまでも情報の整理が目的です。ご了承ください。

Vagrant.png

参考

以下の記事がわかりやすかったので、これらを元に作成しています。(`・ω・´)

vagrantのできること

  • 仮想環境(開発環境)をファイルとして配布、共有できる。
  • 機能拡張や、仮想環境のコマンド操作が可能。

vagrantを使ってみる

ダウンロード

下記のサイトから、VagrantとVirtualBoxを簡単にダウンロードできます。
https://www.vagrantup.com/downloads.html
https://www.virtualbox.org/
※VitualBoxは仮想マシンを管理できるソフトのこと

vagrant init 〜作業用ディレクトリでVagrantfileを作成〜

vagrant initによって、ディレクトリにVagrantfileという設定ファイルが作成されます。

Vagrantfileってなに?

  • VMを立ち上げる際のconfigやprovisionを記述するファイルのこと。
  • Vagrantfileはデフォルトで多くの設定がコメントアウトされている。
  • Vagrantfileは、ひとつのプロジェクトに最低ひとつ必要。
  • Rubyで書かれている。

※ちなみにVMとは、Virtual Machine(仮想機械)の略。

Vagrantfileの設定

〜超基本的な設定〜

# Vagrantfile
Vagrant.configure("2") do |config|
  # ボックス名を設定。設定したボックスのOSがインストールされる
  config.vm.box = "chef/centos-6.6"

  # ホスト(PC)からVMにアクセスできるプライベートIPを設定
  # VM上でアプリを作ったときに、PCのブラウザからこのIPアドレス(192.168.33.10)を使ってアクセスできる
  config.vm.network "private_network", ip: "192.168.33.10"

  # 共有フォルダの設定(PCとVMでファイルを共有できる)
  # ホストのsync_folderとVMの/home/vagrant/sync_folderをNFSで共有する
  config.vm.synced_folder "./sync_folder", "/home/vagrant/sync_folder", type: "nfs"
end

引用:http://ruby-rails.hatenadiary.com/entry/20150719/1437249020#vagrant-setting

Vagrantfileを設定(編集)すればできること

VMを立ち上げる際のboxの指定
IP、ポートの設定
VM立ち上げ時に、自分で書いたシェルスクリプトを走らせる
VM立ち上げ時に、Chef-Soloを実行し開発環境を整える
複数のVMを立ち上げられるようにする
etc...
引用:Vagrantの重要ファイル「Vagrantfile」の読み込みとその周りの挙動をちょっと細かく追ってみた

とりあえずいろいろできる!(`・ω・´)

VM・イメージ(box)を指定

【Vagrant】VirtualBoxにBoxファイルを追加する
ここがわかりやすいです。(`・ω・´)

vagrant up 〜VM(仮想マシン)を起動する〜

Vagrantfileの設定内容が読み込まれて、
VirtualBoxに仮想マシンが作成され、
その上にボックスのOS(例)CentOS 6.4)がインストールされます。

vagrant status 〜VirtualBoxのVMの状態を確認〜

こんな感じで、VMの状態を確認できます。

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`.

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

成功するとvagrantアカウントでログインした状態となります。
もしパスワードを聞かれる場合は、vagrantと入力します。

vagrant halt 〜仮想マシンの停止〜

最後にVagrantのVMを使わないときはCPUやメモリの消費を抑えるために留めておくらしいです。

vagrantの仮想環境でrootユーザーになるには

(2018/06/26追記)

cd [vagrantのある場所。([]は不要)]
vagrant ssh
cd /vagrant/
su root

今後、Vagrantを触っていく機会も増えるかも?なので、
タイミングのいい時に追記していけたらと思います。(`・ω・´)
ご指摘などありましたら、コメントくださると幸いです。

19
23
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
19
23