問題タブ [rvm-capistrano]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
ruby - サーバー上でコマンドを実行するためのRubyバージョンの切り替え
capistrano でデプロイする Ruby アプリケーション (Rails 以外) があります。cd
サーバーの/current
ディレクトリにsshして、コマンドで起動できます
ただし、レベルを上げて実行すると
エラーが発生します:
これは明らかに、各ディレクトリで異なる ruby バージョンを使用してコマンドを実行しているためです。
を.ruby-version
指定するアプリケーションにファイルがありますruby-1.9.3-p392
。私の capistrano デプロイ スクリプトは指定されset :rvm_ruby_string, '1.9.3-p392'
ており、デプロイ プロセスの一部として実行bundle install
されると、193-p392 の gem がインストールされます。
問題は、アプリケーション ディレクトリの外からアプリケーションを起動しようとすると、デフォルトの Ruby (RVM によって 193 の下位バージョンに設定されている) が使用されることです。
アプリケーションが実行時に指定された Ruby バージョンを確実に使用するようにするにはどうすればよい.ruby-version
ですか?
システム上で他のアプリケーションが実行されているため、RVM のデフォルトの Ruby バージョンを変更したくありません。
ruby-on-rails - RVM Capistrano を使用してアプリをデプロイできない
最初に、ウェインによって rvm 1.15.8 (安定版) を使用して ubuntu に開発アプリ レールがあり、vps にデプロイします。
私の vps での Rails アプリのビルドの履歴は次のとおりです。
vps でユーザー「user」を使用して rvm をインストールします。ここから試してみました。
/li>rvm info
ディレクトリルートをオンにしてvpsにkloxoコントロールパネルを使用しています
/home/admin/myapp/public
私は展開します、そしてここにあります
deploy.rb
私は実行しようとしcap deploy:setup
ましたが、エラーが発生しました
私の手順とコードを修正するのを手伝ってもらえますか?
ruby - .rvmrc ファイルでの Capistrano デプロイ エラー
ローカル マシンに ruby-2.0.0-p0 があります。Rails アプリケーションをデプロイしていたときに、多くのエラーが発生しました。修正して実行していました。しかし、1日後、同じアプリケーションを実行しようとすると、このメッセージが表示されました
rvm use ruby-2.0.0-p195@rails3
コードを .rvmrc ファイルに入れました。私はそれを変更する必要がありますか、それとも何か他のことをする必要がありますか。
ruby-on-rails - capistrano を使用してプライベート gem をデプロイする方法
私たちのプロジェクトに固有の宝石があり、複数のプロジェクト間でも共有されています。capistrano 経由でコマンドを使用して Gemfile をインストールしようとするとbundle:install
、foo-1.0.0.gem のソースが見つからないというメッセージが表示されて失敗します
この gem をパブリック リポジトリに公開することはできないため、これをどのように解決すればよいでしょうか。バンドルして展開する正しい方法は何でしょうか。
ruby-on-rails - rvm-capistrano を使用した update_code フェーズでデプロイが失敗する
作業中のデプロイ スクリプトがupload via sftp failed on XX.XXX.XXX.XXX: Net::SFTP::StatusException (Net::SFTP::StatusException write /tmp/20130610114941.tar.gz (4, "failure"))
エラーで失敗します。
ここに私の展開スクリプトがあります
何か案が?
ありがとう
編集:確認したところ、ディスク容量がいっぱいです。明らかにこれは私の問題です。これを防ぐための更新後のフック?
ruby-on-rails - capistrano でデプロイしようとすると Psych エラーが発生するのはなぜですか?
現在、Rails 3.2.13 アプリで capistrano をセットアップしています。以下のエラー/詳細が表示されます (「行 1 列 1 で制御文字は使用できません」を含む)。私はこれをいくつか検索しましたが、私に関連するものは何も見当たりません。
rvm-capistrano と ruby 2.0.0-p195 を使用しています。最近、アプリに必要な環境変数を .bashrc に移動しました。
ruby-on-rails - カピストラーノで複数のdelayed_jobsの役割?
有用な情報があまり見つからないという質問があります。これが可能かどうか、もしそうなら、それをどのように実装するのが最善かを考えています。
バックグラウンドで大量のデータ処理を行うアプリをRailsで構築していますDelayedJob
(…私たちにとってはうまく機能しています。)
アプリは AWS で実行され、Capistrano で構成されたいくつかの異なる環境があります。
処理負荷が高い場合、DelayedJob
キューがバックアップされることがありますが、これはほとんど問題ありません。別のノードに傾向がある 1 つまたは 2 つのキューがあります。「詰まった」キューを無視するため、1 つまたは 2 つのキューを処理し続け、最新の状態を維持します。たとえば、個々のジョブには 1 時間以上かかるものもあり、次のワーカーがタスクを完了して優先ジョブを確認するまで、パスワードを忘れた場合の電子メールの配信が 90 分間保留されることは望ましくありません。
私が望むのは、2 つの異なる明示的なキューを処理する 1 つのワーカーを起動する個別の EC2 インスタンスを用意することです。
「--QUEUES」オプションを使用して 1 つまたは 2 つのワーカーを起動することにより、開発マシンでこれを手動で実行できます。
これが私の質問です。カピストラーノで新しいロールを定義し、そのロールのノードに異なる数のワーカーを開始して特定のキューを処理するように指示するにはどうすればよいですか? 繰り返しますが、通常のdelayed_jobs ロールは 3 ワーカーに設定され、すべてのキューを実行します。
これは可能ですか?より良い方法はありますか?
現在、Rails 3.2.13 と PostgreSQL 9.2 およびdelayed_job
gem を使用しています。
capistrano - 特定の capistrano タスクの前提条件を追加する方法
cap deploy タスクの前提条件として cap deploy:setup を追加したいと思います。どうすればいいですか。