ubuntu 安裝rails

這段時間學習了一下Ruby,感覺真的是比較容易上手。特別是安裝了RubyOn Rails以後,發現通過Ruby On Rails建構網站真的很方便。在這裏分享一下我在Ubuntu上安裝Ruby On Rails的過程,安裝過程比較簡單,不容易出錯,對Ruby有興趣的同學們可以安裝一個試試,學習一種語言的最有效方式就是快速搭建一個環境開始寫代碼。



安裝過程參考了下面這個教程,該教程的作者是Ubuntu社區的“承古韻”,不確定“承古韻”是不是真名,是的話可真是一個有韻味的名字。

http://www.cnblogs.com/msblog/archive/2011/03/08/1977407.html



安裝之前先準備好Ubuntu環境,具體過程我就不講了,大家參考Ubuntu相關文章。



第一步是啓動Ubuntu,通過以下命令安裝一些相關的庫,安裝過程一般不會出什麼問題。

$ sudo apt-get install gcc g++ build-essential libssl-dev libreadline5-devzlib1g-dev linux-headers-generic





然後是下載Ruby1.9.2源碼,我按教程使用下面的命令下載成功,不過就是下載過程有點慢,大家給點耐心。

$ wget ftp://ftp.ruby-lang.org//pub/ruby/1.9/ruby-1.9.2-p0.tar.gz





下載了Ruby源碼後,解壓,配置,編譯,一切正常,命令如下:

$ tar -xvzf ruby-1.9.2-p0.tar.gz

$ cd ruby-1.9.2-p0/

$ ./configure –prefix=/usr/local/ruby

$ make && sudo make install





編譯成功後需要修改/etc/environment文件,將Ruby的路徑加入環境變量中,讓Ruby命令可以直接調用。

開始編輯etc/environment的命令如下:

$ sudo gedit /etc/environment



因爲使用gedit,所以會出現圖形界面的編輯界面,將Ruby的路徑加入環境變量中並保存/etc/environment,如下面內容:

PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/ruby/bin"



修改了環境變量文件後,需要通過source命令讓修改馬上生效,命令如下:

$ source /etc/environment





爲了檢查安裝是否成功,可以輸入下面的命令進行測試 :

$ruby –v





確認安裝成功後通過一下命令添加命令鏈接,目前我也不清楚創建這些鏈接的目的是什麼,按照Ruby“約定大於配置”的原則,應該是一種約定。

$ sudo ln -s /usr/local/ruby/bin/ruby /usr/local/bin/ruby

$ sudo ln -s /usr/local/ruby/bin/gem /usr/bin/gem





以上是安裝Ruby,心急的同學可以先測試一下Ruby的基本語法了。不心急的同學跟着後面的步驟安裝Rails.





首先是通過gem命令安裝一些組件,命令如下:

$ sudo gem install tzinfo builder memcache-client rack rack-test erubis mailtext-format bundler thor i18n



很不幸,在我的環境中執行以上命令時出錯,報的錯是:



Could not find a valid gem '…' (>= 0) in any repository

網上查了一下發現好多人都有這種錯,原因各種各樣,感覺很不靠譜。我自己看看報錯信息,就是找不到某些資源的問題。於是懷疑網絡層面有問題,乾脆***出去試試,問題迎刃而解。至於怎麼***,就自己想辦法吧,遇到這種問題時候就真的是“你有你的張良計,我有我的過牆梯”了。(怎麼,不知道什麼是***?你是不是天朝人士?)



大家注意,以下過程都在***狀態下完成。



另外一個有趣的插曲是我在百度上搜索“ruby on rails could not find a validgem”,出來百度翻譯的結果,結果是“紅寶石對鋼軌無法找到一個有效的寶石”,有點哭笑不得,只能說它已經盡力了。





安裝了以上組件後,通過gem繼續安裝,命令如下:

$ sudo gem install rack-mount

$ sudo gem install rails



一切順利,安裝完成後注意要執行一下命令讓新的環境變量生效:

$ source /etc/environment







然後通過以下命令檢查Rails安裝是否成功:

$ rails –v







安裝了Rails以後安裝MySQL數據庫,命令如下,在我的環境中安裝過程一切正常:

$sudo apt-get install mysql-server libmysqlclient-dev libmysql-ruby

$sudo gem install mysql

安裝完mysql後會有一個配置過程,關鍵就是設置mysql數據庫的root用戶的密碼,按照你的喜好設置一個密碼,一定要記住,後面要用的。





然後是安裝spree框架,命令如下:

$sudo gem install spree

安裝時報錯,說找不到libxml2庫,在這裏我折騰了好久,因爲不斷髮現有其他庫沒有安裝。爲了方便大家,直接將需要的庫列出來,他們是:libxml2 libxml2-dev和libxslt1-dev。

安裝命令如下:

sudo apt-get install libxml2 libxml2-dev libxslt1-dev



安裝後再次執行spree安裝命令:

$sudo gem install spree

安裝成功!







安裝完了就開始測試了,創建一個簡單的應用測試一下。

通過一下命令創建應用,注意其中的xxx是你的應用名:

$rails new xxx -d=mysql

$cd xxx



我使用的應用名是first,所以命令如下:

$rails new first -d=mysql

$cd first



進來first目錄就可以看到創建的各個子目錄了,充分體現了Ruby的“約定大於配置”的原則,很多目錄和文件都按約定創建好了。







因爲數據庫有密碼,所以需要配置一下mysql配置文件,配置文件是config/database.yml,通過gedit打開並進行修改,database.yml文件的內容大概是下面這樣的:

development:

adapter: mysql2

encoding: utf8

database: blog_development

pool: 5

username: root

password:

socket: /tmp/mysql.sock



修改是需要在password: 一行填寫你的mysql數據庫密碼,

注意!! 這個文件裏有三個地方需要填寫這個密碼的,我第一次測試時只填寫了一個,後面創建數據庫時就一直出錯,搞了老半天。







因爲要用spree框架,所以需要編輯Gemfile文件,在裏面添加一句

gem 'spree'







然後後執行下面的命令創建數據庫:

$ bundle install

$ rake db:create



執行“rake db:create”時在我的環境中出錯,錯誤信息如下:

“Could not find a JavaScript runtime”



爲了解決這個問題,需要再次修改Gemfile文件,加入下面兩行:

gem 'execjs'

gem 'therubyracer'



加完保存後再次執行bundle install命令安裝組件

$ bundle install

然後再執行“rake db:create”就沒問題了

$ rake db:create





最後一步,通過以下命令啓動服務器:

$rails server



啓動後在Ubuntu上打開瀏覽器訪問地址http://localhost:3000



訪問結果如下,到此就安裝成功了,開始做你的Ruby on Rails項目吧。


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章