2

これを展開する際にいくつかの問題があります。私は今それを2回展開しようとしました。これが私がこれまでにしたことです。

インストールページに必要なgemとバージョンをインストールしました:

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.

そこで、Gemfileで2.3.12を2.3.5に変更し、次の手順を実行しました。

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 methodクラスに対して別のエラーconvert_to_without_fallback_on_iso_8859_1'がスローされたClass'ため、これ以上試してみたくありませんでした。 これは、2回目にデプロイしようとしたときにのみ発生したことに注意してください。初めてdb:migrateを試したときは成功しました(そして、DBにまだデータがないことを確認しました)。

* 2回目の試行では、ここで立ち往生しています:-( *

しかし、これは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

4

2 に答える 2

3

現在の 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 バイナリが再インストールされるディレクトリが .xml にあることを確認する必要があります$PATH。これは、これを実行することで一時的に実現できます(あなたの場合)

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

次に、bundler gem をインストールし、すべての依存関係をインストールするように指示する必要があります。

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

あなたのケースで本当に奇妙なのは、rake が Rails 2.3.5 を有効にしようとしているように見えることです。それを行うべきではありません (特定のファイルを変更しない限り、行いません)。新しいクリーンなソース ツリーから開始し、任意のファイルを変更しないことを強くお勧めします。

于 2011-08-05T21:03:12.637 に答える
1

gem installコマンドとバンドラー パッケージ管理を混同しないでください。そうすることで、予期しない結果が得られます。

本当にバンドラーを使用したい場合は、必要なすべての gem をGemfileに追加します。それ以外の場合は省略してください。

「bundler chiliproject」をすばやく検索すると、chiliproject-gemfile にたどり着きます。どうやら、すでに不安定版にマージされているようです。

于 2011-08-05T01:44:58.350 に答える