almost 4 years ago

系統:

Mac OS X Yosemite 10.10.1
Ruby 2.1.5
Rails 4.1.8
Vagrant 1.7.1
VirtualBox 4.3.20

相關連結

Vagrant ( https://www.vagrantup.com/ )
HashiCorp's Atlas box catalog ( https://atlas.hashicorp.com/boxes/search )
Oracle VM VirtualBox ( https://www.virtualbox.org/ )

設定步驟如下

1. 安裝 Vagrant 和 VirtualBox

前往 https://www.vagrantup.com/downloads 下載適合自己版本的 Vagrant,並安裝完成。Vagrant 一般是使用 VirtualBox 來虛擬主機,所以,接下來也前往 https://www.virtualbox.org/wiki/Downloads 下載最新版 VirtualBox。

2. 專案設定

安裝好 Vagrant 和 VirtualBox 後,選取要使用 Vagrant 的專案並初始化,會在專案目錄產生一個 Vagrantfile 設定檔。

$ cd rails_app_directory
$ vagrant init

3. Boxes

Box 就是 Vagrant 用來虛擬主機的映像檔,你可以試著在 HashiCorp's Atlas box catalog 找到你想要的映像檔。

安裝 Box

在 HashiCorp's Atlas box catalog 選好想要的映像檔,複製名稱後執行以下指令安裝。

$ vagrant box add ubuntu/trusty64
使用 Box

設定使用 Box 的方式有以下兩種:

1. 打開專案目錄的 `Vagrantfile` 檔案設定。

Vagrant.configure("2") do |config|
  config.vm.box = "ubuntu/trusty64"
end

2. 在專案設定的時候就設定。

$ vagrant init ubuntu/trusty64

4. Vagrantfile 基本設定

  # 設定使用的 Box
  config.vm.box = "ubuntu/trusty64"
  # 設定虛擬主機僅供自己使用的 ip
  config.vm.network "private_network", ip: "10.10.10.10"
  # 設定對外連網
  config.vm.network "public_network", bridge: "en0: Wi-Fi (AirPort)"
  # 設定虛擬主機的所使用的記憶體,可以避免在虛擬主機 bundle install 時,記憶體不足的錯誤。
  config.vm.provider "virtualbox" do |vb|
    # Display the VirtualBox GUI when booting the machine
    vb.gui = false
    # Customize the amount of memory on the VM:
    vb.memory = "1024"
  end

5. UP 和 SSH

設定好之後,就可以使用下面指令將虛擬主機開機摟!

$ vagrant up

接下來就執行下面指令,將會用 ssh 方式連接虛擬主機。

$ vagrant ssh

6. 同步的專案資料夾

Vagrant 會將專案資料夾的內容,直接分享到虛擬主機的 /vagrant,不管在虛擬主機或是工作主機修改專案資料,兩邊都會是同步處理的。

7. 其他相關指令

重啟虛擬機器

$ vagrant reload

儲存虛擬機器現在的狀態並且暫停

$ vagrant suspend

虛擬機器暫停之後啟動

$ vagrant resume

關閉虛擬主機

$ vagrant halt

移除虛擬主機

$ vagrant destroy
← Post 管理 - part 3 - Translate Permalink 使用 Vagrant 和 Chef 開發 Rails - Part 2 - Chef →
 
comments powered by Disqus