進度條

[Ruby on Rails] 02. [Mac] 如何在Mac底下安裝Ruby On Rails 開發環境

這篇文章要教大家如何在Mac 上面安裝Ruby on rails的開發環境

作者: 縱裕 更新日期:

此文章也有影片介紹,可以搭配影片一起學習!

01. [Mac] 安裝Ruby on Rails (所屬課程)


以下正式開始文章


這篇文章要教大家如何在Mac 上面安裝Ruby on rails的開發環境。

 

Ruby on rails 最後主要是架設在Linux平台上面,他利用到的一些函式庫大多是基於Linux的開源或是標準函式庫。所以以開發來講,與其使用與Linux完全不一樣的Windows系統來做開發,還不如使用Linux系統的遠親MacOS來開發,環境會比較相近,上線時的設定也“比較”不需要考慮差異。所以Ruby on rails 開發者多半是使用MacOS來開發。

 

不過現在Windows版也移植的滿好的,所以如果沒有Mac的話也可以使用Windows版本做Rails的開發與練習。如果不喜歡的話也可以在Windows上面開虛擬機器直接運行Linux來開發(例如Ubuntu),或是直接購買遠端VPS服務取得遠端的虛擬機器,利用SSH和SFTP來開發。

 

 

回到主題,現在開始示範。

 

 

在Mac上面建立開發環境算是滿瑣碎的,也同時有很多種方法。我們這編介紹的是InstallRails.com所整理出來的方式,以下為步驟:

 

 

1. 進入網站,點擊Start Now按鈕。

 

 

 

 

 

2. 選擇你的作業系統,我們這邊是Mac

 

 

 

 

3. 看你的作業系統版本,選擇跟你的作業系統符合的編號,但是我們這邊建議大家都升級到最新的作業系統。因為Mac通常會限制開發Xcode版本(通常用來開發iPhone程式),如果不是最新版本的MacOS就不能下載最新的Xcode。Xcode 除了直接可以用來開發外,他其實也包含了很多的函式庫,所以如果不能隨時在最新版,在開發上可能會有點問題。我們接下來就選擇目前最新版10.13的說明

 

 

 

4. 回到我們的電腦,從 Mac App Store 安裝 Xcode,Xcode是免費的,不過檔案會有點大,所以會等一段時間。

 

 

 

 

5. 打開Xcode,左上角選擇設定  Preference,進入Locations 分頁,安裝Command Line Tools。這主要是用來安裝C語言的compiler。

 

 

 

6. 接下來會使用終端機(Terminal)直接下指令,所以先找到它在哪裡,最好開啟後就所在Dock上面。Terminal對於開發者來說是相當重要的一個工具。可以直接搜尋,或是Application -> Utilities -> Terminal 找到它。

 

 

7.  安裝Homebrew

Homebrew官網是一個套件管理程式,預設並不會被安裝在Mac系統,Homerbrew官方Github上已經寫好了安裝的Script。只需要下載後執行就可以了。

下載可以使用curl 這個指令,並且連線的時候最好要有SSL。 下載下來的Script其實是Ruby的Script,所以我們要用ruby去執行它。把兩段指令合在一起就會變成installrails.com上面的寫法。

 

$ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

 

 

安裝完以後可以跑一下顯示brew的版號,來確定是否有安裝成功。

 

$ brew -v

 

 

新手特別要注意,Homebrew他是一個套件管理系統,所以並不是"屬於"Rails的一部分。

 

 

8.  [可選] 利用 brew 安裝git

$ brew install git

 

 

建議是要安裝Git,版本管理現在已經是工程師常識了。不過我們的Ruby on rails課程沒有跟Git有相依性,所以也可以不裝。

 

9.  [可選擇] 設定Git 資料,如果要使用Git的話一定要設定。

$git config --global user.name "你的名字"

$git config --global user.email "你的Email"

 

 

 

10. 重點1,安裝RVM(官網)

  • 執行指令,他會自動下載後安裝。
    $\curl -L https://get.rvm.io | bash -s stable

     
  • 安裝完以後RVM會是空的,而且初始化設定還沒做,所以就要下載ruby,他同時會把這版本的ruby當作預設的。
    $ rvm use ruby --install --default

     
  • 安裝完可以使用這個指令看版本。
    $ ruby -v 

 

 

 

已知的可能錯誤(不一定會碰到):

 

  • 1. 如果安裝RVM安裝Ruby失敗,可能是使用者不是超級使用者。可參考影片11:25秒
  • 2. 如果你有安裝Avira 防毒的話,會在編譯ruby的時候失敗(rvm use ruby --install --default 編譯錯誤) ,請先關掉Avira 再進行指令,主要是因為Avira會鎖住一些系統權限,例如/dev/fd/4,編譯完成後再開啟Avira就可以了。

 

 

11. 重點2,安裝Ruby on rails 的Gem

$ gem install rails --no-ri --no-rdoc

 

 

這裡是我們第一次碰到Gem這個東西,在現代的開發裡面,幾乎不可能不用別人的程式作為基底或是相依性很高來開發。比方說光是個常見的使用者系統,就包含著使用者姓名是一欄、兩欄、三欄(姓、名、中間名),密碼長度與加密(相依別人的加密程式),明碼傳輸還是加密後傳輸,email是不是要判斷是否收得到...等。詳細列完至少30條以上,看需求可能更多。

 

如果是一個剛入行的工程師,可能花了三個月後完成但整個網站也還什麼都不是,沒有主題光有使用者系統其實也沒什麼用。而且如果常瀏覽各大網站的話,會發現基本的功能都差不多。所以早期的工程師通常會做好自己的"軍火庫",等到要用的時候直接複製過去就好了,幾分鐘使用者系統就完成了。但是現在很多Open Source的好心人或是像進度條一樣寫文章教人是一種商業手段(不然吃空氣嗎?)。所以很多工程師的軍火庫不需要自己創作,只要網路搜集使用就好了,當然進階使用還是會改內容,就像我們這邊的行為一樣。Ruby on Rails是David Heinemeier Hansson 與他的公司提供的框架(軍火),使用的語言是ruby。

 

然後我們要利用Rails這個框架改做內容成我們要的功能,這就是利用Ruby on rails來架設網站的另外一層含義。不過你可能會疑惑框架(Framework)、函式庫(Library)、套件(Package)這三個常聽到的詞有什麼差異。比較單純的想法就是框架由“一堆”函式庫組成,不過大多時候講框架都是指基底的函式庫組合。較少情況是會同時使用兩種框架在一個專案,但也不是不可能。然後下載下來無論是框架或是函式庫都是一包下下來,所以就是一個Package(套件),在口語上很容易混著一起講。

 

回到Gem,Ruby的函式庫套件管理就是gem,gem同時是指令名稱與ruby 套件的代稱。所以要看他在語句中的位置才能了解是什麼意思。

 

gem 這個指令是跟Ruby 一起安裝的。當安裝完RVM後,ruby相關內容就會交由RVM管理。RVM則是依靠ruby版本來做分類的,所以沒事不要改ruby的版本,不然會找不到Gem。但是升級對安全性與效能有一定的幫助,所以就看個人需求。

 

所以Ruby on rails也是一個gem,我們要先安裝它才能開始之後的設定。--no-ri 指的是不要 ri 這個文件工具與內容,--no-rdoc 也是類似的說明用途。現在都直接網路查,所以為了省空間可以不裝。如果不小心裝了,也不會發生什麼問題。

 

已知可能錯誤:

  • 1. 如果安裝Rails失敗,可能是SSL問題,可參考影片13:09
  • 2. installrails.com 裡面的這步也有注明一些可能的問題,但因為我沒有碰到過,所以有問題也可以去看看。


 

12. 安裝完以後可以檢查一下Rails的版本,現在的話應該都是5.x.x版。

$ rails --version

 

13. [可選擇] 安裝 Sublime TextBrackets

因為我們預期開始學習Ruby on rails的人應該已經對HTML / CSS / JavaScript 有一定的掌握度。所以你應該會有自己習慣的編輯器。課程影片是使用Brackets免費編輯器。Sublime Text也是很推薦的,但是需要付費。

 

 

14. 在終端機進入要建立專案的資料夾

這邊考驗大家有沒有基本的command line(指令列)常識。當打開終端機後預設會到這個使用者的家目錄,也就是 ~ 這個目錄。“~” 是一個代稱,他在每個使用者底下都"可能"代表著不同的路徑。以圖片 / 影片來說的話就是 /Users/swift 這個資料夾。

 

接著我們要開始建立ruby on rails專案,所以最好建立一個空的資料夾來放。

影片中有提到幾個指令,以下列出來。

a. $ ls               => 顯示當下資料夾所有包含檔案名稱

b. $ pwd           => 顯示當下路徑位置

c. $ cd [路徑]    => 進入路徑

 

 

這邊建議可以執行以下指令,這樣會進入桌面

$ cd ~/Desktop

 

15. 建立 rails 專案

$ rails new [專案名稱]

 

 

 

 

專案名稱可以隨意取,但是不能取名為test,會有問題。

執行後會開始一系列的安裝,需要等一下。

 

16. 建立完畢以後,進入專案資料夾後,執行運行指令,並且打開網頁進入 http://localhost:3000

$ cd [專案名稱]

$ rails server   <= 可以縮寫為 rails s

使用瀏覽器觀看結果。

 

 

 

 

這樣子就可以進去首頁了!!
 

 


最後,如果你喜歡我們的文章,別忘了到我們的FB粉絲團按讚喔!!

Medium picture

縱裕

錄課程錄到快死掉了啊!!!