Question

Je voudrais déployer un petit Rails 3 application sur dreamhost (uniquement à des fins de test, rien de grave) et je me demande si quelqu'un a déjà fait ... S'il vous plaît choisir une des options suivantes:

  1. Je l'ai fait et il est super facile, voici comment: ...
  2. Bien que je n'y suis pas allé, il devrait être facile, voici comment: ...
  3. Il est assez compliqué, mais cela devrait vous aider à démarrer: ....
  4. NO WAI !!! 1! Un! 1 installer sur slicehost ou d'une autre hébergement non-partagé ou vous allez mourir d'une mort douloureuse essayant de forcer le DH
Pensées

Était-ce utile?

La solution

Malheureusement, je pense que cela dépend en grande partie sur l'installation des pierres précieuses Dreamhost pour vous, et permettant l'accès à eux par l'environnement partagé. Vous pouvez communiquer avec leur service d'assistance pour plus d'informations sur si et quand ils projettent sur le déploiement Rails 3 sur leurs serveurs partagés.

Par contre, vous peut faire ce que votre quatrième option implique et juste aller de l'avant et obtenir une tranche quelque part (ne doit pas nécessairement être avec Slicehost, vous pouvez déployer à moindre coût avec Heroku) qui vous permet de déployer vos propres pierres précieuses.

Hope this helps!

Autres conseils

Vous pouvez le faire, mais il nécessite des compétences de sysadm avancées.

Pour utiliser Rails 3 sur DreamHost vous devez:

  • installer Ruby 1.8.7
  • installer RubyGems
  • installer Rails 3

tous dans votre répertoire personnel parce que vous ne disposez pas de privilèges pour installer tout ailleurs.

En outre, cela garantit pas travailler avec la configuration existante Dreamhost de passagers.

Je viens de recevoir un courriel de dreamhost. Je leur ai envoyé il y a en ce qui concerne environ 2 mois rails 3.0, ils commencent à pousser sur leurs serveurs que nous parlons. les choses fonctionnent sur l'hypothèse, les rails 3 devraient être pris en charge dans le mois.

La machine à dreamhost j'ai alloué espace, Pisces, semble avoir mis à niveau vers Rails 3.0.3 hier. Je ne remarqué parce qu'un exemple Redmine cassé horriblement: (

A partir d'aujourd'hui, voici ce qui est ma machine dreamhost:

    $ 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)

De documentation voyageurs: http://www.modrails.com/ documentation / utilisateurs% 20Guide% 20Apache.html # bundler_support

Créer un fichier config / setup_load_paths.rb dans votre application et ajoutez cette ligne:

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

Je déballe gem Bundler dans le chemin fournisseur / bundle avec cette commande:

gem unpack bundler --target=vendor/bundle

Et les autres pierres précieuses avec:

bundle install --deployment

Cela devrait fonctionner avec Dreamhost et passager> = 2.2.14

J'ai pu obtenir que cela fonctionne en utilisant RVM et FastCGI

Mon fichier .htaccess ressemblait à ceci:

<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"

Et mon dispatch.fcgi ressemblait (notez que vous devez remplir):

#!/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)
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top