End To End RoR Demo

[b]1、生成項目架構[/b]
rails new  demo_app

該命令會生成之前的博文中提到的標準的rails項目框架。
bundle install

該命令會自動安裝當前項目需要的所有Gem,(注意,如果安裝gem時,提示沒有寫Gem庫目錄的權限,是因爲你使用了系統默認的Ruby,一般來說,使用RVM管理ruby的版本,在項目中使用自己安裝的ruby比使用系統自帶的好,避免很多的權限問題)。
rails s

運行當前項目,一個可以運行的Web項目就搭建完成了。可以通過http://localhost:3000訪問當前項目。
[img]http://dl.iteye.com/upload/attachment/0070/7417/6b13f2c5-b3a3-39b2-af4d-d3da0b706ddf.png[/img]

[b]2、把項目放到GitHub上[/b]
首先,在GitHub上創建一個Repository,我的repository地址爲:[email protected]:xianlinbox/RailsTutorial.git

然後,在demo-app目錄下,
git init
創建一個Git本地庫,
git add ,
把所有的項目文件加入Git管理,然後,
git commit -m "creat project"
提交到本地庫。
再然後,
git remote add github [email protected]:xianlinbox/RailsTutorial.git 
爲Github上的repository創建一個Remote分支,
最後,
git push github master
把本地庫的master分支推送到遠程庫中,這樣就能在GitHub上看到當前project的內容了。
[img]http://dl.iteye.com/upload/attachment/0070/7419/6453cd0b-30e5-32dc-8176-ee513e2c9212.png[/img]

[b]3、把項目部署到Heroku上[/b]
首先,註冊Heroku賬號,
然後,
gem install heroku
爲當前項目安裝Heroku的gem。和GitHub一樣,Heroku爲了保障安全也是通過SSH協議傳送文件的,因此,
heroku keys:add
把本地機器的公鑰加載到heroku上,這樣就可以通過SSH協議給heroku服務上傳文件了。
再然後,
heroku create --stack cedar
創建heroku庫,即在服務器上爲當前項目申請一個空間,創建完成之後,會返回一個URL,就當前產品部署到heroku上的地址。我測試demo的地址是:http://http://sharp-water-7348.herokuapp.com/

最後,git push heroku master 把本地項目內容上傳到heroku服務器上,默認的初始化項目中,使用的是Sqllite3作爲DB服務器,heroku不接受這種類型的DB服務器(因爲Sqllite3僅供本地調試用,heroku認爲自己是一個產品環境),因此,要想push成功,需要修改Gemfile,在production 環境使用 PostgressSQL,在開發和測試環境使用Sqllite3,
group :production do
gem 'pg'
end

group :development, :test do
gem 'sqlite3'
end

push成功之後,就可以在創建heroku庫的時候返回的URL上看到當前項目了
[img]http://dl.iteye.com/upload/attachment/0070/7417/6b13f2c5-b3a3-39b2-af4d-d3da0b706ddf.png[/img]

heroku還有幾個比較常用的指令,heroku ps查看進程狀態,heroku logs可以查看當前項目在heroku上的日誌記錄,heroku run console可以直接遠程到heroku的服務器上使用Ruby命令行,更多的指令可以通過heroku --help查看。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章