17

我想在 dreamhost 上部署一个小型 Rails 3 应用程序(仅用于测试目的,没什么大不了的),我想知道是否有人已经这样做了...请选择以下选项之一:

  1. 我做到了,而且非常简单,方法如下:...
  2. 虽然我没有尝试过,但应该很容易,方法如下:...
  3. 这很复杂,但这应该可以帮助您入门: ....
  4. NO WAI!!!1!one!1 将其设置在 slicehost 或其他非共享主机上,否则您将在试图将其强制用于 DH 时痛苦地死去

想法?

4

8 回答 8

9

您可以执行此操作,但它需要高级 sysadm 技能。

为了在 DreamHost 上使用 Rails 3,您需要:

  • 安装 Ruby 1.8.7
  • 安装 RubyGems
  • 安装 Rails 3

全部在您自己的主目录中,因为您没有权限在其他地方安装所有内容。

此外,这不能保证与现有的 Dreamhost 乘客配置一起使用。

于 2010-02-12T10:12:42.657 回答
6

以下是一些新鲜的说明:

http://blog.joeygeiger.com/2010/05/17/i-beat-dreamhost-how-to-really-get-rails-3-bundler-and-dreamhost-working/

于 2010-06-02T04:15:46.050 回答
3

不幸的是,我认为这在很大程度上取决于 Dreamhost 为您安装 gem,并允许通过共享环境访问它们。您可以联系他们的支持部门以获取有关他们是否以及何时计划将 Rails 3 部署到其共享服务器的更多信息。

另一方面,您可以按照您的第四个选项所暗示的那样去做,然后继续在某个地方获得一个切片(不一定需要使用 SliceHost;您可以使用 Heroku 进行廉价部署),这样您就可以部署自己的 gem。

希望这可以帮助!

于 2010-02-12T09:21:19.747 回答
2

我刚刚收到了来自 Dreamhost 的电子邮件。大约 2 个月前,我向他们发送了有关 Rails 3.0 的电子邮件,正如我们所说,他们开始将其推送到他们的服务器上。假设一切顺利,Rails 3 应该会在一个月内得到支持。

于 2010-11-30T22:23:57.653 回答
1

我分配空间的dreamhost 机器pisces 昨天似乎已经升级到Rails 3.0.3。我只注意到一个 Redmine 实例严重损坏:(

于 2010-12-20T15:09:47.697 回答
1

截至今天,这是我的梦想主机:

    $ rails -v
    Rails 3.0.3

    $ ruby -v
    ruby 1.8.7 (2008-08-11 patchlevel 72) [x86_64-linux]

    $ gem list

    *** LOCAL GEMS ***

    abstract (1.0.0)
    actionmailer (3.0.3, 2.3.8, 2.3.5, 2.3.4, 2.3.3, 2.2.2, 2.1.2, 2.1.1, 2.1.0, 2.0.5, 2.0.2)
    actionpack (3.0.3, 2.3.8, 2.3.5, 2.3.4, 2.3.3, 2.2.2, 2.1.2, 2.1.1, 2.1.0, 2.0.5, 2.0.2)
    actionwebservice (1.2.6, 1.2.3)
    activemodel (3.0.3)
    activerecord (3.0.3, 2.3.8, 2.3.5, 2.3.4, 2.3.3, 2.2.2, 2.1.2, 2.1.1, 2.1.0, 2.0.5, 2.0.2)
    activeresource (3.0.3, 2.3.8, 2.3.5, 2.3.4, 2.3.3, 2.2.2, 2.1.2, 2.1.1, 2.1.0, 2.0.5, 2.0.2)
    activesupport (3.0.3, 2.3.8, 2.3.5, 2.3.4, 2.3.3, 2.2.2, 2.1.2, 2.1.1, 2.1.0, 2.0.5, 2.0.2)
    acts_as_taggable (2.0.2, 1.0.4)
    ajax_scaffold_generator (3.1.11, 2.2.1)
    archive-tar-minitar (0.5.2, 0.5.1)
    arel (2.0.4)
    auth_generator (2.0.1, 1.5.3)
    Bloglines4R (0.1.0)
    BlueCloth (1.0.0)
    builder (2.1.2, 2.0.0)
    bundler (1.0.7)
    camping (1.5.180, 1.5)
    capistrano (2.5.1, 2.1.0, 1.4.1)
    classifier (1.3.1)
    cmdparse (2.0.2, 2.0.0)
    curb (0.1.4)
    daemons (1.0.10, 1.0.9)
    dbd-mysql (0.4.3)
    dbi (0.4.3)
    deprecated (2.0.1)
    erubis (2.6.6)
    eventmachine (0.12.10, 0.12.8)
    facets (2.2.1, 1.8.54)
    fastthread (1.0.7, 1.0.1)
    feedtools (0.2.29, 0.2.28)
    ferret (0.11.6, 0.11.4)
    flickr (1.0.2)
    gd2 (1.1.1, 1.1)
    gen (0.41.0)
    geoip (0.6.1)
    gettext (1.90.0)
    glue (0.41.0)
    gnuplot (2.2)
    gravtastic (2.0.0)
    gruff (0.3.1)
    haml (2.0.3)
    hoe (1.5.1)
    hpricot (0.6)
    htmltools (1.10)
    i18n (0.4.2, 0.4.1)
    localization_generator (1.0.8)
    login_generator (1.2.2)
    madeleine (0.7.3)
    mail (2.2.15)
    markaby (0.5)
    mechanize (0.7.6)
    metaid (1.0)
    mime-types (1.16)
    mini_magick (1.2.3)
    mysql (2.7)
    needle (1.3.0)
    net-sftp (1.1.1)
    net-ssh (2.0.23, 1.1.2)
    nitro (0.41.0)
    nokogiri (1.4.4)
    og (0.41.0)
    oniguruma (1.1.0)
    packet (0.1.14)
    PageTemplate (2.2.0)
    ParseTree (2.1.1)
    payment (1.0.1)
    pdf-writer (1.1.8)
    podcast (0.0.4)
    polyglot (0.3.1)
    rack (1.2.1, 1.1.0, 1.0.1, 1.0.0)
    rack-mount (0.6.13)
    rack-test (0.5.6)
    radiant (0.6.9)
    rails (3.0.3, 2.3.8, 2.3.5, 2.3.4, 2.3.3, 2.2.2, 2.1.2, 2.1.1, 2.1.0, 2.0.5, 2.0.2)
    railties (3.0.3)
    rake (0.8.7, 0.8.3, 0.8.2)
    RedCloth (3.0.4)
    rfacebook (0.9.8)
    rmagick (1.15.14)
    rspec (1.1.3)
    ruby-breakpoint (0.5.1)
    ruby-debug (0.10.0)
    ruby-openid (2.1.7)
    ruby-yadis (0.3.4)
    ruby_odeum (0.4.1)
    rubyforge (0.4.5)
    RubyInline (3.6.7)
    rubypants (0.2.0)
    rubyzip (0.9.1)
    ruport (1.6.0)
    ruport-util (0.14.0)
    ruwiki (0.9.3)
    salted_login_generator (2.0.2)
    shipping (1.5.1)
    SimpleSearch (0.5.0)
    sqlite3-ruby (1.2.1)
    stemmer (1.0.1)
    switchtower (1.0.1)
    syntax (1.0.0)
    tagtools (0.0.3)
    thor (0.14.6, 0.14.4)
    tidy (1.1.2)
    treetop (1.4.9)
    tzinfo (0.3.23)
    unicode (0.1)
    uuidtools (1.0.3)
    webgen (0.4.7)
    wee (0.10.0)
    xhtmldiff (1.0.0)
    xml-simple (1.0.11)
    ym4r (0.6.1)
    youtube-g (0.4.9.9)
于 2011-03-17T10:06:33.027 回答
0

来自乘客文档:http ://www.modrails.com/documentation/Users%20guide%20Apache.html#bundler_support

在您的应用程序中创建文件config/setup_load_paths.rb并添加以下行:

$: << "<path-where-bundler-gem-was-installed>/lib"

我使用以下命令在供应商/捆绑路径中解压缩了捆绑器 gem:

gem unpack bundler --target=vendor/bundle

和其他宝石:

bundle install --deployment

这应该适用于 Dreamhost 和 Passenger >= 2.2.14

于 2011-01-22T03:05:32.793 回答
0

我能够通过使用 rvm 和 fastcgi 来实现它

我的 .htaccess 文件如下所示:

<IfModule mod_fastcgi.c>
AddHandler fastcgi-script .fcgi
</IfModule>
<IfModule mod_fcgid.c>
AddHandler fcgid-script .fcgi
</IfModule>

Options +FollowSymLinks +ExecCGI 

RewriteEngine On 

RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ dispatch.fcgi/$1 [QSA,L] 

ErrorDocument 500 "Rails application failed to start properly for your rails app"

我的 dispatch.fcgi 看起来像(注意你需要填写):

#!/usr/bin/env /home/<MY_HOME_DIR>/.rvm/bin/ruby-1.9.3-p0@awesome

require 'rubygems'
require 'fcgi'

ENV['RAILS_ENV'] ||= 'production' 
#ENV['RAILS_ENV'] = 'development'


# Set GEM_PATH and GEM_HOME ("user" is your dreamhost user)
ENV['GEM_HOME'] ||= '/home/<MY_HOMEDIR>/.rvm/gems/ruby-1.9.3-p0@awesome'
ENV['GEM_PATH'] ||= '/home/<MY_HOMEDIR>/.rvm/gems/ruby-1.9.3-p0@awesome:/home/<MY_HOMEDIR>/.rvm/gems/ruby-1.9.3-p0@global'
require 'rubygems'
Gem.clear_paths

require File.join(File.dirname(__FILE__), '../config/environment')

class Rack::PathInfoRewriter
 def initialize(app)
   @app = app
 end

 def call(env)
   env.delete('SCRIPT_NAME')
   parts = env['REQUEST_URI'].split('?')
   env['PATH_INFO'] = parts[0]
   env['QUERY_STRING'] = parts[1].to_s
   @app.call(env)
 end
end

Rack::Handler::FastCGI.run  Rack::PathInfoRewriter.new(Imjustsayin::Application)
于 2012-11-01T14:25:59.767 回答