Ubuntu(14.02)システムでPassenger(5.0.28)+ Apache(2.4.7)、rbenvで管理されているruby(2.3.0)でレール(4.2)アプリケーションを実行しています。私はCapistrano(3.4.0)と一緒に展開します。Capistrano導入時の環境変数へのアクセス方法は?
私の環境変数はすべて、非常に単純なprofile.d
スクリプトで設定されています。
#!/bin/sh
export VAR1=VAL1
export VAR2=VAL2
これは魅力的です。私のアプリENV
にはすべて正しい変数があり、Secrets.yml
は適切に設定されています... sshを使ってCapistranoを使用して配備する場合を除き、すべてが機能します。
deploy.rb
で
:\サーバーの設定ではない私は、なぜ私のENV
変数を見つけ出すように見えることはできません私の強力なポイント非常に限られたとsshさ
set :ssh_options, {
forward_agent: true,
paranoid: true,
keys: "~/.ssh/id_rsa.pub"
}
カピストラーノドキュメントカピストラーノは見ていない。デプロイメントフロー中にputs ENV.inspect
を実行すると、"TERM_PROGRAM"=>"Apple_Terminal"
やローカルマシンのユーザー情報などになります。なぜカピストラノは遠隔地の環境を使用していないのですか?この問題を解決するために、サーバーサイドまたはデプロイスクリプトの設定をどのように修正できますか?
ありがとうございました。
優れた答え。 –
これを書く時間をとってくれてありがとう、ありがとう。リンクの最後のグラフは素晴らしいです。 –