Назад | Перейти на главную страницу

Как перенести приложение ruby ​​on rails на новый сервер

У меня есть приложение rails на старом сервере Ubuntu, мне нужно перейти на новую машину.

Я не работал с Ruby on Rails, поэтому ничего не знаю о структуре приложения.

Я хочу загрузить это в Ubuntu 8.04 AMI на Amazon EC2 и ищу любую информацию о процессе миграции, такую ​​как:

Могу ли я копировать всю папку, определенную как корень приложения в конфигурации mongrel (например, / u / apps / myapp / current), или только определенные папки?

Ищу ли я проблем, если буду использовать последние версии Ruby и различные драгоценные камни?

Любые общие ошибки, на которые следует обратить внимание в процессе.

Текущая информация о сервере:

root@webnode001:/# cat /proc/version
Linux version 2.6.15-27-server (buildd@terranova) (gcc version 4.0.3 (Ubuntu 4.0.3-1ubuntu5)) #1 SMP Fri Dec 8 18:43:54 UTC 2006
root@webnode001:/# rails -v
Rails 1.2.3
root@webnode001:/# mongrel_rails cluster::configure --version
Version 1.0.1
root@webnode001:/# gem -v
0.9.0
root@webnode001:/# gem list -l

*** LOCAL GEMS ***

actionmailer (1.3.3, 1.2.5)
    Service layer for easy email delivery and testing.

actionpack (1.13.3, 1.12.5)
    Web-flow and rendering framework putting the VC in MVC.

actionwebservice (1.2.3, 1.1.6)
    Web service support for Action Pack.

activerecord (1.15.3, 1.15.2, 1.14.4)
    Implements the ActiveRecord pattern for ORM.

activesupport (1.4.2, 1.4.1, 1.3.1)
    Support and utility classes used by the Rails framework.

cgi_multipart_eof_fix (2.1)
    Fix an exploitable bug in CGI multipart parsing which affects Ruby
    <= 1.8.5 when multipart boundary attribute contains a non-halting
    regular expression string.

daemons (1.0.7, 1.0.5, 1.0.4, 1.0.2)
    A toolkit to create and control daemons in different ways

eventmachine (0.7.2, 0.7.0)
    Ruby/EventMachine socket engine library

fastercsv (1.2.0, 1.1.0)
    FasterCSV is CSV, but faster, smaller, and cleaner.

fastthread (1.0)
    Optimized replacement for thread.rb primitives

ferret (0.11.4)
    Ruby indexing library.

gem_plugin (0.2.2, 0.2.1)
    A plugin system based only on rubygems that uses dependencies only

mongrel (1.0.1, 0.3.13.4)
    A small fast HTTP library and server that runs Rails, Camping, Nitro
    and Iowa apps.

mongrel_cluster (0.2.1)
    Mongrel plugin that provides commands and Capistrano tasks for
    managing multiple Mongrel processes.

mysql (2.7)
    MySQL/Ruby provides the same functions for Ruby programs that the
    MySQL C API provides for C programs.

piston (1.3.3)
    Piston is a utility that enables merge tracking of remote
    repositories.

rails (1.2.3, 1.1.6)
    Web-application framework with template engine, control-flow layer,
    and ORM.

rake (0.7.3, 0.7.1)
    Ruby based make-like utility.

sources (0.0.1)
    This package provides download sources for remote gem installation

swiftiply (0.5.1)
    A fast clustering proxy for web applications.

Возьмите все это под ток.

Скорее всего, ваш текущий сайт может использовать Capistrano для развертывания. Если это так, вы можете изучить это. Если это то, за что вы были возложены, и предыдущий человек больше не доступен для общения, вам также нужно попытаться получить дополнительную информацию:

  • Была ли эта версия под контролем?
  • Использовали ли Капистрано?
  • Была ли база данных перенесена и настроена на новом хосте?

База данных, вероятно, будет называться application_production, если это стандартная установка Rails.

Также загляните в config / environment.rb, чтобы узнать о других вещах, которые вам могут понадобиться для установки. Эта версия Rails довольно старая, но все еще должна быть доступна для установки через gem install как вам, кажется, удалось.