• 企业400电话
  • 微网小程序
  • AI电话机器人
  • 电商代运营
  • 全 部 栏 目

    企业400电话 网络优化推广 AI电话机器人 呼叫中心 网站建设 商标✡知产 微网小程序 电商运营 彩铃•短信 增值拓展业务
    在 Ubuntu 12.04 Server 上安装部署 Ruby on Rails 应用

    本教程只适合 Ubuntu Server 用于部署项目到线上,建议使用同样的 Ubuntu 版本,以免遇到一些版本不同带来的问题。

    本教程适合新手初次部署 Rails 应用;

    本文测试通过环境

    Ubuntu 12.04 Server,

    服务器安装测试于 Linode VPS (Ubuntu 12.04 LTS (GNU/Linux 3.4.2-x86_64-linode25 x86_64)。

    配置 Ubuntu Server 系统

    如果你是国内服务器,推荐修改网易的源

    输入 sudo vi /etc/apt/sources.list 将里面的内容替换成:

    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

    安装必要的三方库

    $ 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 及相关

    安装 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

    如果你是国内服务器,推荐将 RVM 的安装源替换成 Taobao 的镜像服务器,这样安装能更快!

    $ 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

    国内服务器推荐替换 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 或其他数据库

    当然,如果你的项目是用的其他数据库,请自己解决

    $ sudo apt-get install mysql-server

    跟着提示安装,此处涉及东西在本教程之外,请自行 Google 相关教程解决。

    部署你的网站

    接下来你可以通过 Git 或其他方式将你项目的源代码提交到服务器上面,建议放到用户的 ~/www 下面。

    为了方便教程,我们假设,用户是 jason (拥有 sudo 权限), 项目名 gitlab 后面遇到类似的地方请更具自己的情况修改

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

    修改你的数据库配置,创建数据库,合并 migration ...这些是 Rails 开发的基础,这里就不细说了,重点是最后你能让你的项目能用 rails s 跑起来!

    $ rails s -e production

    安装 Passenger 用于部署 Rails 应用

    $ 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

    接下来会出现提示,选择 Yes: download, compile and install Nginx for me. (recommended) ,对于后面的提示一直选默认哪项,敲回车。

    最后看到

    Nginx with Passenger support was successfully installed.

    表示你人品很好 Nginx 安装成功!否则请看 Passenger 官方安装文档 自行解决……

    安装 Nginx init script

    接下来你需要安装 Nginx 的启动脚本,以及配置开机自动启动

    $ 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 开机自启动

    $ sudo update-rc.d nginx defaults

    配置 Nginx 与网站

    打开 Nginx 的 nginx.conf

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

    PS: 如果你不是 Passenger 安装的 Nginx,这个配置文件还有可能在 /usr/local/nginx/ 或 /etc/nginx 下面

    请参考下面的例子修改:

    user jason; # 修改成你的系统帐号名,不然项目目录 /home/jason/www 这里没有权限 worker_processes 8; # 修改成和你 CPU 核数一样 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"; ## ------------ 重点修改内容 --------  server { # 此处用于防止其他的域名绑定到你的网站上面  listen 80 default; return 403; } server { listen 80; server_name you.host.name; # 请替换成你网站的域名  rails_env production; root /home/jason/www/gitlab/public; passenger_enabled on; location ~ ^(/assets) { access_log off; # 设置 assets 下面的浏览器缓存时间为最大值(由于 Rails Assets Pipline 的文件名是根据文件修改产生的 MD5 digest 文件名,所以此处可以放心开启)  expires max; } } ## --------------------------------- }

    重启 Nginx

    $ sudo /etc/init.d/nginx start

    部署完成!可以尝试访问你的域名。

    其它网友的补充: 推荐查看

    刚才试了一下,很轻松。

    就当是给入门级的一个教程好了。。

    注意:这篇文章只介绍如何在 Ubuntu 12.04 Server 上安装 Rails 环境,不保证你的 Rails 项目一定可以在 12.04 上正常运行。

    本文测试环境

    •装的系统是: Ubuntu 12.04 Server LTS amd64
    •安装于: OSX 上 Parallels Desktop 虚拟机
    Ubuntu 安装
    很常见的安装:

    1.选择 English 安装
    2.Location 选择 other -> Asia -> China
    3.继续安装,一路默认。。
    4.输入姓名、用户名和密码
    5.Write the changes to disks and configure LVM? Yes>
    6.Write the changes to disks? Yes>
    7.Software selection 阶段:选择 OpenSSH server (按空格键)(你以后会用到ssh的。。。)
    8.有关 GRUB 的问题,如果你是多系统,请参考其他资料
    9.安装完成,自动重启。

    更新系统

    1.登陆系统
    2.替换更新源: $ sudo vim /etc/apt/sources.list 我在教育网,所以换的教育网的源
    3.更新软件列表: $ sudo aptitude update
    4.更新软件: $ sudo aptitude upgrade
    5.重启: $ sudo reboot

    安装 Ruby 、 Rails 及相关
    简单方法:

    我写了一个脚本,可以直接用:

    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 失败,重新开一个terminal/shell。

    复杂方法:

    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

    测试安装是否成功

    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的简明指南
    • win7安装ruby on rails开发环境
    • Windows下Ruby on Rails开发环境安装配置图文教程
    • Ruby On Rails上手笔记(安装使用全过程)
    • CentOS7下搭建ruby on rails开发环境
    • Ruby on Rails下的图像处理入门教程
    • 几个加速Ruby on Rails的编程技巧
    • Ruby on rails安装后去掉DL is deprecated,please use Fiddle警告信息的方法【测试可用】
    上一篇:快速正确的安装 Ruby, Rails 运行环境
    下一篇:Ruby学习笔记一
  • 相关文章
  • 

    © 2016-2020 巨人网络通讯 版权所有

    《增值电信业务经营许可证》 苏ICP备15040257号-8

    在 Ubuntu 12.04 Server 上安装部署 Ruby on Rails 应用 在,Ubuntu,12.04,Server,上,安装,