前言 && 目標(biāo)
原先都在mac上安裝開發(fā)rails的環(huán)境,但本機玩一玩後霸旗,
想想最後成品還是得放到遠端去讓人打XD贷帮。
所以想要有一臺linux(Ubuntu)的測試機,希望環(huán)境可以跟遠端的一樣诱告,
這樣deploy時理論上不會有太多環(huán)境轉(zhuǎn)換的問題(應(yīng)該啦)撵枢。
然後本來想雲(yún)端直接開一臺來用,但想想也才剛開始學(xué)進度緩慢精居,
開一臺CP給它很低锄禽,尋找別的方案時就看到方向啦!
[教學(xué)]使用Vagrant練習(xí)環(huán)境佈署
http://gogojimmy.net/2013/05/26/vagrant-tutorial/
雖然強者大大文章寫的很清楚箱蟆,但有些地方偶還是不太懂啊 QQ
剛好Let's Try Rails Tuesday#1 開始辦沟绪,就來去請教(煩)強大的教練們了!
首先了解一下 Virtual Box,Vagrant,vagrantbox.es的關(guān)係
VirtualBox 就是VM啦,跟VMWave空猜,Parallels算是同一類的軟體绽慈。
所以先安裝一下恨旱,這裡下載Vagrant 是用來控制VirtualBox的工具。這裡下載
(VirtualBox本身也有操控的介面可以用坝疼,Vagrant提供另一種用法)Vagrantbox.es 這裡是找各種imagefile的地方搜贤。
點進去看後,選擇太多但根本不知道要找怎樣的版本啊Orz,
只確定我要ubuntu 經(jīng)過教練開示
3-1.如果不想一直更新os版本的話钝凶,可以用長期支援版本(LTS)
3-2.找跟自已機器同個規(guī)格cpu的版本仪芒,以我的來講就是 x86_64啦
3-3.找有Guest Additions的之後用比較方便。Guest Additions 說明
3-4.因為要練習(xí)裝機器用耕陷,所以找個乾淨(jìng)的版本(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
它就會自已在目錄底下幫你產(chǎn)生一個名叫 Vagrantfile 的檔案,
內(nèi)容先不管它先來把機器開起來吧哟沫!
打上 vagrant up
等它一下等等機器就會開好囉饺蔑!
開起來後,直接ssh進去吧嗜诀, vagrant ssh
就成功的開好一臺 ubuntu囉;!(開心)(系統(tǒng)預(yù)設(shè)的account/pwd 都是vagrant)
接下來~我們來安裝系統(tǒng)吧隆敢!
$ 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
結(jié)束!7餍穴墅! 有一臺ub可以用了!
ps.vagrant可以指定box image裡哪個目錄要跟mac裡哪個目錄分享/同步檔案
所以可以把二邊跑的ruby/rails版本設(shè)一致後温自,開發(fā)的rails app
可以在mac裡run,也可以在ub上run封救,真的是很方便啊5纷鳌!!