Vagrant + Virtual Box + UB12.04 + Rails環境

前言 && 目標

原先都在mac上安裝開發rails的環境,但本機玩一玩後,

想想最後成品還是得放到遠端去讓人打XD

所以想要有一台linux(Ubuntu)的測試機,希望環境可以跟遠端的一樣,

這樣deploy時理論上不會有太多環境轉換的問題(應該啦)。

然後本來想雲端直接開一台來用,但想想也才剛開始學進度緩慢,

開一台CP給它很低,尋找別的方案時就看到方向啦!

[教學]使用Vagrant練習環境佈署
http://gogojimmy.net/2013/05/26/vagrant-tutorial/

雖然強者大大文章寫的很清楚,但有些地方偶還是不太懂啊 QQ

剛好Let's Try Rails Tuesday#1 開始辦,就來去請教(煩)強大的教練們了!

首先了解一下 Virtual Box,Vagrant,vagrantbox.es的關係

  1. VirtualBox 就是VM啦,跟VMWave,Parallels算是同一類的軟體。
    所以先安裝一下,這裡下載

  2. Vagrant 是用來控制VirtualBox的工具。這裡下載
    (VirtualBox本身也有操控的介面可以用,Vagrant提供另一種用法)

  3. Vagrantbox.es 這裡是找各種imagefile的地方。

點進去看後,選擇太多但根本不知道要找怎樣的版本啊Orz,
只確定我要ubuntu 經過教練開示

3-1.如果不想一直更新os版本的話,可以用長期支援版本(LTS
3-2.找跟自已機器同個規格cpu的版本,以我的來講就是 x86_64啦
3-3.找有Guest Additions的之後用比較方便。Guest Additions 說明
3-4.因為要練習裝機器用,所以找個乾淨的版本(no Puppet, Chef,Ruby…etc)

上面的Virtual Box,Vagrant安裝好後,就可以來開始啦
簡單的在Vagrantbox.es站上選了這個版本用 ub-12-amd64
先來看一下我們安裝好後的vagrant 版本

$ vagrant -v #Vagrant 1.3.3

然後來把剛找好的image box加入

$ vagrant box add ub-12-amd64 http://cloud-images.ubuntu.com/vagrant/precise/current/precise-server-cloudimg-amd64-vagrant-disk1.box

ub-12-amd64 是你幫這個box image取的名字,然後就會開始下載box了
等下載完後 可以打

$ vagrant box list #可以看到你機器上有那一些image box

UB-12-10 (virtualbox)
precise_64 (virtualbox)

然後找個要建Virtual Machine的地方

mkdir ~/tmp/ub_no3
cd ~/tmp/ub_no3
vagrant init ub-12-amd64

它就會自已在目錄底下幫你產生一個名叫 Vagrantfile 的檔案,
內容先不管它先來把機器開起來吧!
打上 vagrant up 等它一下等等機器就會開好囉!
開起來後,直接ssh進去吧, vagrant ssh
就成功的開好一台 ubuntu囉!!(開心)(系統預設的account/pwd 都是vagrant)


接下來~我們來安裝系統吧!

$ sudo apt-get -y update
$ sudo apt-get upgrade
$ sudo apt-get --no-install-recommends -y install build-essential openssl libreadline6 libreadline6-dev curl git-core zlib1g zlib1g-dev libssl-dev libyaml-dev libsqlite3-dev sqlite3 libxml2-dev libxslt-dev autoconf libc6-dev libgdbm-dev ncurses-dev automake libtool bison subversion pkg-config libffi-dev vim imagemagick libmagickwand-dev

$ sudo apt-get install mysql-server libmysqlclient15-dev
$ \curl -L https://get.rvm.io | bash -s stable
$ echo '[[ -s "$HOME/.rvm/scripts/rvm" ]] && . "$HOME/.rvm/scripts/rvm"' >>~/.bashrc

$ source ~/.bashrc $ rvm -v
$ vim ~/.gemrc
$ gem: --no-ri --no-rdoc  #加入這行
$ rvm pkg install readline openssl
$ rvm install 2.0.0
$ rvm use 2.0.0 --default
$ ruby -v
$ gem install rails

$ rails -v

結束!!! 有一台ub可以用了!

ps.vagrant可以指定box image裡哪個目錄要跟mac裡哪個目錄分享/同步檔案
所以可以把二邊跑的ruby/rails版本設一致後,開發的rails app
可以在mac裡run,也可以在ub上run,真的是很方便啊!!!

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • [りつまお]Deluminator 分級:15 摘要:凛月和真緒都有一個滅燈器,他們的滅燈器就是彼此。 警告:りつ...
    karen牌牛奶阅读 4,681评论 1 3
  • ===離開,不見得是錯誤的決定=== 隔日一早,文星伊率先醒來,見到金容仙安穩的枕在自己的手臂上 微微的笑了起來,...
    heomoomoo阅读 6,009评论 0 4
  • 为何叫做 shell ? shell prompt(PS1) 与 Carriage Return(CR) 的关系?...
    Zero___阅读 8,366评论 3 49
  • 谈到WebKit,我觉得还是挺有缘分的。本人在大学其实是做Java开发,然而大学毕业后的第一份工作却是做了基...
    嘻哈小猴阅读 5,139评论 0 6
  • 每一个家庭成员在一起生活这么多年,大家的本性,每一个家庭成员肯定都会知道的清清楚楚,因此大家的糗事都会记得很清楚。...
    薄荷味的夏天1009阅读 2,629评论 0 0