Развертывание Chiliproject на Dreamhost

Возникли некоторые проблемы при развертывании этого. Я пытался развернуть его дважды сейчас. Вот что я сделал до сих пор....

Установленные гемы и версии, необходимые на странице установки:

gem install -v=2.3.5 rails
gem install -v=1.0.1 rack
gem install -v=0.8.7 rake
gem install -v=0.4.2 i18n

Скачал пакет:

git clone git://github.com/chiliproject/chiliproject.git
cd chiliproject
git checkout stable

Пришлось найти и установить комплект, так как его не было на моем пути:

BUNDLE="/usr/lib/ruby/gems/1.8/bin/bundle"

Поместите информацию о моей базе данных в database.yml:

И тут начался комплектация вещей:

$BUNDLE install --without=postgres rmagick
$BUNDLE exec rake generate_session_store

Последняя команда получила ошибку:

rake aborted!
can't activate rails (= 2.3.5, runtime), already activated rails-2.3.12. Make sure all dependencies are added to Gemfile.

Поэтому я изменил 2.3.12 на 2.3.5 в Gemfile и продолжил:

RAIL_ENV=production $BUNDLE exec rake db:migrate

Тогда я тоже получил ошибку по этой команде:

** Invoke db:migrate (first_time)
** Invoke environment (first_time)
** Execute environment
rake aborted!
undefined method `autoload_paths' for #<Rails::Configuration:0x68a68dbb82c0>
/home/USERNAME/DOMAIN/public/config/environment.rb:44

Я попытался закомментировать строку 44 там, но потом она выдала еще одну ошибку undefined methodconvert_to_without_fallback_on_iso_8859_1'для класса Class' поэтому я не хотел играть с этим дальше. Обратите внимание, что это произошло только во второй раз, когда я попытался развернуть его. В первый раз, когда я попытался выполнить db:migrate, все прошло успешно (и я проверил, что в БД уже нет данных).

*Так что со второй попытки я застрял здесь:-( *

Но это то, что произошло в первый раз после того, как db:migrate удалось...

RAILS_ENV=production $BUNDLE exec rake redmine:load_default_data

С последней командой, однако, не удалось сказать, что в mysql 'user'@'173.236.128.0/255.255.128.0' отказано в разрешении, и я был как WTF, он пытается подключиться к сети, как если бы это был хост?

Поэтому я перешел, скопировал мой файл конфигурации и файлы среды. Изменил / добавил эти строки:

# Uncomment below to force Rails into production mode when
# you don't control web/app server and can't set it the proper way
 ENV['RAILS_ENV'] ||= 'production'

# Specifies gem version of Rails to use when vendor/rails is not present
RAILS_GEM_VERSION = '2.3.5'# unless defined? RAILS_GEM_VERSION

if ENV['RAILS_ENV'] == 'production'  # don't bother on dev
  ENV['GEM_PATH'] = '/home/USERNAME/.gems' + ':/usr/lib/ruby/gems/1.8'
end

Затем сделал этот материал доступным для записи и перезапустил Passenger:

chmod -R 777 files log tmp public/plugin_assets/
touch tmp/restart.txt

Извините за стену текста, кто-нибудь может пролить свет на то, что я сделал неправильно?

Заранее спасибо.

РЕДАКТИРОВАТЬ: Так что это все неправильно, вот как я получил это работает

rm ~/.gem*
gem install bundler

PATH=$PATH:/usr/lib/ruby/gems/1.8/bin

cd ~
git clone git://github.com/chiliproject/chiliproject.git
cd chiliproject
git checkout stable

cp * ../example.com/ -R
cd ../example.com

# Make sure database is working

bundle install --without postgres rmagick test
bundle exec rake generate_session_store

RAILS_ENV=production bundle exec rake db:migrate

# No output is no good, check database.yml

RAILS_ENV=production bundle exec rake redmine:load_default_data

Или посмотрите это: https://gist.github.com/1127306

2 ответа

Решение

Текущие стабильные выпуски ChiliProject (2.x) требуют использования пакета. Таким образом, ответ Slotos здесь неверен. gen install больше не работает, нам нужен пакет.

Также нам сейчас нужен Rails 2.3.12. Вы не получите никаких рабочих результатов, если будете произвольно редактировать файлы. На определенных платформах вам нужно адаптировать Gemfile (например, при использовании Ruby 1.8.6 или для определенных версий ImageMagick). Для предлагаемой в настоящее время установки с использованием Ruby 1.8.7 или REE вам не нужно ничего адаптировать.

Для установки зависимостей стабильных на данный момент выпусков ChiliProject 2.x вам необходимо сделать следующее:

Сначала вам нужно убедиться, что каталог, в который переустанавливается gem binaries, находится в вашем $PATH, Это может быть временно достигнуто путем запуска этого (в вашем случае)

export PATH=/usr/lib/ruby/gems/1.8/bin:$PATH

Затем вам нужно установить гем компоновщика и дать ему указание установить все зависимости

gem install bundler
bundle install --without rmagick postgres test # in your case

Что действительно странно в вашем случае, так это то, что rake пытается включить Rails 2.3.5. Это не должно делать это (и не делает, если вы не изменили определенные файлы). Я настоятельно рекомендую начать с нового чистого исходного кода и не изменять произвольные файлы.

Не перепутай gem install Команды с управлением пакетами пакетов. Вы получите неожиданные результаты от этого.

Если вы действительно хотите использовать bundler - добавьте все драгоценные камни в Gemfile. В противном случае просто опустите его.

Быстрый поиск по запросу "chiliproject" приводит меня к https://github.com/finnlabs/chiliproject-gemfile. По-видимому, это уже слилось с нестабильным.

Другие вопросы по тегам