主頁(yè) > 知識(shí)庫(kù) > 在 Ubuntu 12.04 Server 上安裝部署 Ruby on Rails 應(yīng)用

在 Ubuntu 12.04 Server 上安裝部署 Ruby on Rails 應(yīng)用

熱門標(biāo)簽:中牟外呼系統(tǒng)違法嗎 巫師3地圖標(biāo)注魔力之所 AI電銷機(jī)器人 線路 柯城手機(jī)地圖如何做地圖標(biāo)注 天津外呼系統(tǒng)怎么收費(fèi) 淮安自動(dòng)外呼系統(tǒng)供應(yīng)商 征服者企業(yè)地圖標(biāo)注 漯河電銷 外呼線路從哪里出來的

本教程只適合 Ubuntu Server 用于部署項(xiàng)目到線上,建議使用同樣的 Ubuntu 版本,以免遇到一些版本不同帶來的問題。

本教程適合新手初次部署 Rails 應(yīng)用;

本文測(cè)試通過環(huán)境

Ubuntu 12.04 Server,

服務(wù)器安裝測(cè)試于 Linode VPS (Ubuntu 12.04 LTS (GNU/Linux 3.4.2-x86_64-linode25 x86_64)。

配置 Ubuntu Server 系統(tǒng)

如果你是國(guó)內(nèi)服務(wù)器,推薦修改網(wǎng)易的源

輸入 sudo vi /etc/apt/sources.list 將里面的內(nèi)容替換成:

deb http://mirrors.163.com/ubuntu/ precise main restricted universe multiversedeb
http://mirrors.163.com/ubuntu/ precise-security main restricted universe multiversedeb
http://mirrors.163.com/ubuntu/ precise-updates main restricted universe multiversedeb
http://mirrors.163.com/ubuntu/ precise-proposed main restricted universe multiversedeb
http://mirrors.163.com/ubuntu/ precise-backports main restricted universe multiversedeb-src
http://mirrors.163.com/ubuntu/ precise main restricted universe multiversedeb-src
http://mirrors.163.com/ubuntu/ precise-security main restricted universe multiversedeb-src
http://mirrors.163.com/ubuntu/ precise-updates main restricted universe multiversedeb-src
http://mirrors.163.com/ubuntu/ precise-proposed main restricted universe multiversedeb-src
http://mirrors.163.com/ubuntu/ precise-backports main restricted universe multiverse

然后更新一下:

$ sudo apt-get update

安裝必要的三方庫(kù)

$ sudo apt-get install -y wget vim build-essential openssl libreadline6 libreadline6-dev libmysqlclient-dev curl git-core zlib1g zlib1g-dev libssl-dev libyaml-dev libxml2-dev libxslt-dev libcurl4-openssl-dev autoconf automake libtool imagemagick libmagickwand-dev libpcre3-dev nodejs libpq-dev

安裝 Ruby, Rails 及相關(guān)

安裝 RVM

$ /curl -L https://get.rvm.io | bash -s stable $ echo '[[ -s "$HOME/.rvm/scripts/rvm" ]]  . "$HOME/.rvm/scripts/rvm"' >>~/.bashrc $ source ~/.bashrc $ rvm -v

安裝 Ruby

如果你是國(guó)內(nèi)服務(wù)器,推薦將 RVM 的安裝源替換成 Taobao 的鏡像服務(wù)器,這樣安裝能更快!

$ sed -i -e 's/ftp/.ruby-lang/.org//pub//ruby/ruby/.taobao/.org//mirrors//ruby/g' ~/.rvm/config/db

用 RVM 安裝 Ruby:

$ rvm pkg install readline openssl $ rvm install 2.0.0 
$ rvm use 2.0.0 --default $ ruby -vruby 2.0.0p247

國(guó)內(nèi)服務(wù)器推薦替換 RubyGems 的到淘寶鏡像:

$ gem sources --remove https://rubygems.org/ 
$ gem sources -a http://ruby.taobao.org/ 
$ gem sources -l *** CURRENT SOURCES *** http://ruby.taobao.org

安裝 Rails

$ gem install rails $ rails -vRails 4.0.0

安裝 MySQL 或其他數(shù)據(jù)庫(kù)

當(dāng)然,如果你的項(xiàng)目是用的其他數(shù)據(jù)庫(kù),請(qǐng)自己解決

$ sudo apt-get install mysql-server

跟著提示安裝,此處涉及東西在本教程之外,請(qǐng)自行 Google 相關(guān)教程解決。

部署你的網(wǎng)站

接下來你可以通過 Git 或其他方式將你項(xiàng)目的源代碼提交到服務(wù)器上面,建議放到用戶的 ~/www 下面。

為了方便教程,我們假設(shè),用戶是 jason (擁有 sudo 權(quán)限), 項(xiàng)目名 gitlab 后面遇到類似的地方請(qǐng)更具自己的情況修改

$ cd ~/ $ pwd /home/jason/ 
$ mkdir www 
$ cd www 
$ git clone git@you.host:gitlab.git 
$ cd gitlab 
$ bundle install

修改你的數(shù)據(jù)庫(kù)配置,創(chuàng)建數(shù)據(jù)庫(kù),合并 migration ...這些是 Rails 開發(fā)的基礎(chǔ),這里就不細(xì)說了,重點(diǎn)是最后你能讓你的項(xiàng)目能用 rails s 跑起來!

$ rails s -e production

安裝 Passenger 用于部署 Rails 應(yīng)用

$ gem install passenger $ passenger -vPhusion Passenger version 4.0.10

由于 Passenger 需要重新編譯 Nginx,如果你之前有安裝 Nginx 需要卸載掉!
nginx -v,有的話卸載 $ sudo apt-get remove nginx-common nginx-full nginx

用 Passenger 安裝 Nginx

$ sudo passenger-install-nginx-module

接下來會(huì)出現(xiàn)提示,選擇 Yes: download, compile and install Nginx for me. (recommended) ,對(duì)于后面的提示一直選默認(rèn)哪項(xiàng),敲回車。

最后看到

Nginx with Passenger support was successfully installed.

表示你人品很好 Nginx 安裝成功!否則請(qǐng)看 Passenger 官方安裝文檔 自行解決……

安裝 Nginx init script

接下來你需要安裝 Nginx 的啟動(dòng)腳本,以及配置開機(jī)自動(dòng)啟動(dòng)

$ cd ~/ $ git clone git://github.com/jnstq/rails-nginx-passenger-ubuntu.git $ sudo mv rails-nginx-passenger-ubuntu/nginx/nginx /etc/init.d/nginx $ sudo chmod +x /etc/init.d/nginx

配置 Nginx 開機(jī)自啟動(dòng)

$ sudo update-rc.d nginx defaults

配置 Nginx 與網(wǎng)站

打開 Nginx 的 nginx.conf

$ sudo vim /opt/nginx/conf/nginx.conf

PS: 如果你不是 Passenger 安裝的 Nginx,這個(gè)配置文件還有可能在 /usr/local/nginx/ 或 /etc/nginx 下面

請(qǐng)參考下面的例子修改:

user jason; # 修改成你的系統(tǒng)帳號(hào)名,不然項(xiàng)目目錄 /home/jason/www 這里沒有權(quán)限 worker_processes 8; # 修改成和你 CPU 核數(shù)一樣 pid /var/run/nginx.pid; http { include mime.types; default_type application/octet-stream; client_max_body_size 50m; sendfile on; access_log /var/log/nginx/access.log; error_log /var/log/nginx/error.log; gzip on; gzip_disable "msie6"; ## ------------ 重點(diǎn)修改內(nèi)容 --------  server { # 此處用于防止其他的域名綁定到你的網(wǎng)站上面  listen 80 default; return 403; } server { listen 80; server_name you.host.name; # 請(qǐng)?zhí)鎿Q成你網(wǎng)站的域名  rails_env production; root /home/jason/www/gitlab/public; passenger_enabled on; location ~ ^(/assets) { access_log off; # 設(shè)置 assets 下面的瀏覽器緩存時(shí)間為最大值(由于 Rails Assets Pipline 的文件名是根據(jù)文件修改產(chǎn)生的 MD5 digest 文件名,所以此處可以放心開啟)  expires max; } } ## --------------------------------- }

重啟 Nginx

$ sudo /etc/init.d/nginx start

部署完成!可以嘗試訪問你的域名。

其它網(wǎng)友的補(bǔ)充: 推薦查看

剛才試了一下,很輕松。

就當(dāng)是給入門級(jí)的一個(gè)教程好了。。

注意:這篇文章只介紹如何在 Ubuntu 12.04 Server 上安裝 Rails 環(huán)境,不保證你的 Rails 項(xiàng)目一定可以在 12.04 上正常運(yùn)行。

本文測(cè)試環(huán)境

•裝的系統(tǒng)是: Ubuntu 12.04 Server LTS amd64
•安裝于: OSX 上 Parallels Desktop 虛擬機(jī)
Ubuntu 安裝
很常見的安裝:

1.選擇 English 安裝
2.Location 選擇 other -> Asia -> China
3.繼續(xù)安裝,一路默認(rèn)。。
4.輸入姓名、用戶名和密碼
5.Write the changes to disks and configure LVM? Yes>
6.Write the changes to disks? Yes>
7.Software selection 階段:選擇 OpenSSH server (按空格鍵)(你以后會(huì)用到ssh的。。。)
8.有關(guān) GRUB 的問題,如果你是多系統(tǒng),請(qǐng)參考其他資料
9.安裝完成,自動(dòng)重啟。

更新系統(tǒng)

1.登陸系統(tǒng)
2.替換更新源: $ sudo vim /etc/apt/sources.list 我在教育網(wǎng),所以換的教育網(wǎng)的源
3.更新軟件列表: $ sudo aptitude update
4.更新軟件: $ sudo aptitude upgrade
5.重啟: $ sudo reboot

安裝 Ruby 、 Rails 及相關(guān)
簡(jiǎn)單方法:

我寫了一個(gè)腳本,可以直接用:

Server 版 Ubuntu 12.04

$ curl -L https://raw.github.com/gist/2521307/install-rails-12-04-server.sh | bash
Desktop 版 Ubuntu 12.04

$ curl -L https://raw.github.com/gist/2521307/install-rails-12-04-desktop.sh | bash
跑完腳本后如果 rails -v 失敗,重新開一個(gè)terminal/shell。

復(fù)雜方法:

1.安裝 RVM: $ curl -L get.rvm.io | bash -s stable
2.將 rvm 加入 PATH : $ source ~/.rvm/scripts/rvm
3.查看需要安裝的包: $ rvm requirements
4.安裝上一步提示所需的包: $ sudo aptitude 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 ncurses-dev automake libtool bison subversion
5.安裝 Ruby 1.9.3 : $ rvm install 1.9.3
6.替換 gem 的 source : $ gem source -r http://rubygems.org/;gem source -a http://ruby.taobao.org
7.安裝 Bundler 和 Rails : $ gem install bundler rails

測(cè)試安裝是否成功

1.$ rails new path/to/your/new/application
2.$ cd path/to/your/new/application
3.$ vim Gemfile ,將第一行的 source 改為 http://ruby.taobao.org ,末尾行添加: gem 'therubyracer'
4.$ rails server
5.用瀏覽器打開 http://ip.of.your.host:3000/ ,如果可以訪問,則安裝成功。

您可能感興趣的文章:
  • 快速安裝Ruby on Rails的簡(jiǎn)明指南
  • win7安裝ruby on rails開發(fā)環(huán)境
  • Windows下Ruby on Rails開發(fā)環(huán)境安裝配置圖文教程
  • Ruby On Rails上手筆記(安裝使用全過程)
  • CentOS7下搭建ruby on rails開發(fā)環(huán)境
  • Ruby on Rails下的圖像處理入門教程
  • 幾個(gè)加速Ruby on Rails的編程技巧
  • Ruby on rails安裝后去掉DL is deprecated,please use Fiddle警告信息的方法【測(cè)試可用】

標(biāo)簽:大慶 南昌 棗莊 內(nèi)江 河池 克拉瑪依 甘孜 西雙版納

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《在 Ubuntu 12.04 Server 上安裝部署 Ruby on Rails 應(yīng)用》,本文關(guān)鍵詞  在,Ubuntu,12.04,Server,上,安裝,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《在 Ubuntu 12.04 Server 上安裝部署 Ruby on Rails 應(yīng)用》相關(guān)的同類信息!
  • 本頁(yè)收集關(guān)于在 Ubuntu 12.04 Server 上安裝部署 Ruby on Rails 應(yīng)用的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章