ruby服務(wù)器的部署

下載ubuntu 14.4server版安裝坤次,

裝完干凈的系統(tǒng)后步鉴,我們首先需要更新

$ sudo apt-get update

$ sudo apt-get upgrade

這兩個(gè)命令是更新服務(wù)器環(huán)境

下一步是安裝 Mysql 當(dāng)然如果你的數(shù)據(jù)庫是其他的服務(wù)器可以省去這個(gè)步驟

$ sudo apt-get install mysql-server

$ sudo apt-get install libmysqlclient-dev

下一步是調(diào)整服務(wù)器的時(shí)區(qū)

$ sudo dpkg-reconfigure tzdata

接下來進(jìn)入正題

安裝ruby前需要先安裝基本工具和組件庫

$ sudo apt-get install build-essential zlib1g-dev libssl-dev libreadline5 libyaml-dev

建立一個(gè)專門用于部署的用戶 我的習(xí)慣是建一個(gè)用戶 apps

建立apps用戶后 記得賦予其 sudo 權(quán)限

然后我們將用戶切換到 apps

進(jìn)入ruby的安裝‘

服務(wù)器環(huán)境的ruby安裝與本地開發(fā)不同 很多人還是習(xí)慣用rvm 但有很多最佳實(shí)踐說rvm并非服務(wù)器裝ruby的首選

我的習(xí)慣是 chruby 安裝簡單 使用方便

安裝步驟 1:執(zhí)行以下命令

$ wget -O chruby-0.3.9.tar.gz https://github.com/postmodern/chruby/archive/v0.3.9.tar.gz

$ tar -xzvf chruby-0.3.9.tar.gz

$ cd chruby-0.3.9/

$ sudo make install

執(zhí)行后就算裝好了

然后是要激活

在 ~/.bashrc 或者 ~/.zshrc 文件里加入以下代碼:

source /usr/local/share/chruby/chruby.sh·

這樣就算激活了 此時(shí)可以試試 chruby -v

但安裝ruby 還需要一個(gè)工具叫 ruby-install

這個(gè)跟 chruby 是不矛盾的 我的理解是 ruby-install 就是一個(gè)ruby版本的安裝工具 而chruby是ruby管家

ruby-install 跟 chruby 的安裝方法類似 也是執(zhí)行幾句命令:

$ wget -O ruby-install-0.5.0.tar.gz https://github.com/postmodern/ruby-install/archive/v0.5.0.tar.gz

$ tar -xzvf ruby-install-0.5.0.tar.gz

$ cd ruby-install-0.5.0/

$ sudo make install

裝好后揪胃,便可以使用 ruby-install 的命令來安裝 ruby的版本了

具體命令如下:

ruby-install -M http://ruby.taobao.org/mirrors/ruby/ ruby 2.2.3

這里的 -M 是選擇下載鏡像

使用淘寶鏡像基本是秒下的

但用國外鏡像進(jìn)度條基本是不動(dòng)的

完成后 試試 ruby -v 可以看到版本


后面就是安裝 rails

ruby的環(huán)節(jié)完成后 安裝以下系統(tǒng)組件:nodejs 和 nginx

gem install rails

ruby的應(yīng)用服務(wù)器 我習(xí)慣上使用 unicorn 配合 cap使用還是比較方便的

服務(wù)器的配置基本上是這些

接下來本地的配置 剛才說到gem 先說第一個(gè) capistrano 它是基本組件

使用方法:$ bundle exec cap install

這個(gè)命令會(huì)生成


這些文件

Capfile 可以直接復(fù)制

deploy 文件夾下的兩個(gè)文件 production 和 staging

分別是生產(chǎn)環(huán)境和演示環(huán)境

staging可以不用

如果有需要的話 可以另外配置服務(wù)器搭一套演示環(huán)境

一般就配 production

這個(gè)也非常簡單 就一句話 照抄現(xiàn)有代碼

接下來是 deploy.rb 文件

這是最關(guān)鍵的配置文件

首先 :application 是應(yīng)用名稱 如果你一臺(tái)服務(wù)器上要跑多個(gè)應(yīng)用 必須保證名字唯一性

:repo_url 是源代碼的 git 庫

ask :branch 這句我建議開出來

每次部署時(shí)它會(huì)問你 要部署哪個(gè)分支

接下來 是:deploy_to 表示服務(wù)器的網(wǎng)站根目錄

后面是 linked_files 和 linked_dirs 這兩個(gè)是非常關(guān)鍵的配置

簡單說就是公共目錄

你想把那些東西放在公共目錄就可以在這里配置

舉例來說 我們有些時(shí)候網(wǎng)站里會(huì)由圖片或文檔 但這些東西我們又不希望放在代碼里管理 因?yàn)楹芏鄨D片和文檔可能是用戶上傳的

所以可以放在 public 下的某個(gè)目錄里 比如 uploads

這樣一來我們就需要在 linked_dirs 中多配置一個(gè) 'public/uploads'

是這個(gè)文件夾不會(huì)因?yàn)榘姹镜牡?而導(dǎo)致訪問不到的情況

接下來 是 :chruby_ruby 這個(gè)參數(shù)是指定ruby版本的

生成的模板里是沒有的

接下來還有個(gè)部署配置

capistrano-unicorn-nginx

這個(gè)gem是幫助你再服務(wù)器上自動(dòng)建立 所有 nginx 和 unicorn 配置文件的 它是模板化操作

$ bundle exec cap production setup

這句命令會(huì)自動(dòng)建立所有服務(wù)器配置文件

接下來這句 $ bundle exec rails g capistrano:unicorn_nginx:config

是在本地生成響應(yīng)的配置模板

這兩句好了以后就是部署命令了

首先是? cap setup 會(huì)建立服務(wù)器的文件結(jié)構(gòu)

然后就是 cap production deploy

會(huì)進(jìn)行自動(dòng)化部署了

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市氛琢,隨后出現(xiàn)的幾起案子喊递,更是在濱河造成了極大的恐慌,老刑警劉巖阳似,帶你破解...
    沈念sama閱讀 218,284評(píng)論 6 506
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件骚勘,死亡現(xiàn)場離奇詭異,居然都是意外死亡撮奏,警方通過查閱死者的電腦和手機(jī)俏讹,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,115評(píng)論 3 395
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來畜吊,“玉大人泽疆,你說我怎么就攤上這事×嵯祝” “怎么了于微?”我有些...
    開封第一講書人閱讀 164,614評(píng)論 0 354
  • 文/不壞的土叔 我叫張陵,是天一觀的道長青自。 經(jīng)常有香客問我株依,道長,這世上最難降的妖魔是什么延窜? 我笑而不...
    開封第一講書人閱讀 58,671評(píng)論 1 293
  • 正文 為了忘掉前任恋腕,我火速辦了婚禮,結(jié)果婚禮上逆瑞,老公的妹妹穿的比我還像新娘荠藤。我一直安慰自己伙单,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,699評(píng)論 6 392
  • 文/花漫 我一把揭開白布哈肖。 她就那樣靜靜地躺著吻育,像睡著了一般。 火紅的嫁衣襯著肌膚如雪淤井。 梳的紋絲不亂的頭發(fā)上布疼,一...
    開封第一講書人閱讀 51,562評(píng)論 1 305
  • 那天,我揣著相機(jī)與錄音币狠,去河邊找鬼游两。 笑死,一個(gè)胖子當(dāng)著我的面吹牛漩绵,可吹牛的內(nèi)容都是我干的贱案。 我是一名探鬼主播,決...
    沈念sama閱讀 40,309評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼止吐,長吁一口氣:“原來是場噩夢啊……” “哼宝踪!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起碍扔,我...
    開封第一講書人閱讀 39,223評(píng)論 0 276
  • 序言:老撾萬榮一對(duì)情侶失蹤瘩燥,失蹤者是張志新(化名)和其女友劉穎,沒想到半個(gè)月后蕴忆,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體颤芬,經(jīng)...
    沈念sama閱讀 45,668評(píng)論 1 314
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡悲幅,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,859評(píng)論 3 336
  • 正文 我和宋清朗相戀三年套鹅,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片汰具。...
    茶點(diǎn)故事閱讀 39,981評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡卓鹿,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出留荔,到底是詐尸還是另有隱情吟孙,我是刑警寧澤,帶...
    沈念sama閱讀 35,705評(píng)論 5 347
  • 正文 年R本政府宣布聚蝶,位于F島的核電站杰妓,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏碘勉。R本人自食惡果不足惜巷挥,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,310評(píng)論 3 330
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望验靡。 院中可真熱鬧倍宾,春花似錦雏节、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,904評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至怔锌,卻和暖如春寥粹,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背产禾。 一陣腳步聲響...
    開封第一講書人閱讀 33,023評(píng)論 1 270
  • 我被黑心中介騙來泰國打工排作, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人亚情。 一個(gè)月前我還...
    沈念sama閱讀 48,146評(píng)論 3 370
  • 正文 我出身青樓妄痪,卻偏偏與公主長得像,于是被迫代替她去往敵國和親楞件。 傳聞我的和親對(duì)象是個(gè)殘疾皇子衫生,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,933評(píng)論 2 355

推薦閱讀更多精彩內(nèi)容