0

私はNginxとUnicornをインストールし、Ubuntu 14.04上でRails 5アプリケーションを動作させようとしました。私はRailsに環境変数を読み込ませるにはどうすればよいですか?

...私はnginxのとユニコーンを再起動し、私のWebページを訪問しようとすると

development: 
    secret_key_base: 547268978521e278fd572db969ce2d25cea9da7c6db4f7164942d02322177128704a4c76ed1f536dd7ac791b10ef0355b4542f21b128077657bdef156472ad81 

test: 
    secret_key_base: c1aae665f8ed25da55a457870526dcac878d5a3734ab2fd29b4ec32b4b31bbe2f16d3b72bf0cacf0c6c1c88e4862d35f45c2c10140d990388e5e2184459cd23e 

# Do not keep production secrets in the repository, 
# instead read values from the environment. 
production: 
    secret_key_base: <%= ENV["SECRET_KEY_BASE"] %> 

はまだ、私は私のユニコーンログにこのエラーが出る含まれている〜/ myprojectに/設定/ secrets.yml内のファイルを持っています私のプロジェクトのディレクトリで

E, [2017-04-09T22:37:34.736220 #11291] ERROR -- : app error: Missing `secret_key_base` for 'production' environment, set this value in `config/secrets.yml` (RuntimeError) 
E, [2017-04-09T22:37:34.736414 #11291] ERROR -- : /home/rails/.gem/ruby/2.4.0/gems/railties-5.0.2/lib/rails/application.rb:513:in `validate_secret_key_config!' 
E, [2017-04-09T22:37:34.736462 #11291] ERROR -- : /home/rails/.gem/ruby/2.4.0/gems/railties-5.0.2/lib/rails/application.rb:246:in `env_config' 
E, [2017-04-09T22:37:34.736491 #11291] ERROR -- : /home/rails/.gem/ruby/2.4.0/gems/railties-5.0.2/lib/rails/engine.rb:693:in `build_request' 
E, [2017-04-09T22:37:34.736515 #11291] ERROR -- : /home/rails/.gem/ruby/2.4.0/gems/railties-5.0.2/lib/rails/application.rb:521:in `build_request' 
E, [2017-04-09T22:37:34.736541 #11291] ERROR -- : /home/rails/.gem/ruby/2.4.0/gems/railties-5.0.2/lib/rails/engine.rb:521:in `call' 
E, [2017-04-09T22:37:34.736646 #11291] ERROR -- : /home/rails/.gem/ruby/2.4.0/gems/unicorn-5.2.0/lib/unicorn/http_server.rb:562:in `process_client' 
E, [2017-04-09T22:37:34.736680 #11291] ERROR -- : /home/rails/.gem/ruby/2.4.0/gems/unicorn-5.2.0/lib/unicorn/http_server.rb:658:in `worker_loop' 
E, [2017-04-09T22:37:34.736709 #11291] ERROR -- : /home/rails/.gem/ruby/2.4.0/gems/unicorn-5.2.0/lib/unicorn/http_server.rb:508:in `spawn_missing_workers' 
E, [2017-04-09T22:37:34.736738 #11291] ERROR -- : /home/rails/.gem/ruby/2.4.0/gems/unicorn-5.2.0/lib/unicorn/http_server.rb:132:in `start' 
E, [2017-04-09T22:37:34.736767 #11291] ERROR -- : /home/rails/.gem/ruby/2.4.0/gems/unicorn-5.2.0/bin/unicorn:126:in `<top (required)>' 
E, [2017-04-09T22:37:34.736793 #11291] ERROR -- : /home/rails/.gem/ruby/2.4.0/bin/unicorn:22:in `load' 
E, [2017-04-09T22:37:34.736818 #11291] ERROR -- : /home/rails/.gem/ruby/2.4.0/bin/unicorn:22:in `<top (required)>' 
E, [2017-04-09T22:37:34.736842 #11291] ERROR -- : /usr/local/rvm/gems/ruby-2.4.0/gems/bundler-1.13.7/lib/bundler/cli/exec.rb:74:in `load' 
E, [2017-04-09T22:37:34.736867 #11291] ERROR -- : /usr/local/rvm/gems/ruby-2.4.0/gems/bundler-1.13.7/lib/bundler/cli/exec.rb:74:in `kernel_load' 
E, [2017-04-09T22:37:34.736894 #11291] ERROR -- : /usr/local/rvm/gems/ruby-2.4.0/gems/bundler-1.13.7/lib/bundler/cli/exec.rb:27:in `run' 
E, [2017-04-09T22:37:34.736939 #11291] ERROR -- : /usr/local/rvm/gems/ruby-2.4.0/gems/bundler-1.13.7/lib/bundler/cli.rb:332:in `exec' 
E, [2017-04-09T22:37:34.736968 #11291] ERROR -- : /usr/local/rvm/gems/ruby-2.4.0/gems/bundler-1.13.7/lib/bundler/vendor/thor/lib/thor/command.rb:27:in `run' 
E, [2017-04-09T22:37:34.736996 #11291] ERROR -- : /usr/local/rvm/gems/ruby-2.4.0/gems/bundler-1.13.7/lib/bundler/vendor/thor/lib/thor/invocation.rb:126:in `invoke_command' 
E, [2017-04-09T22:37:34.737021 #11291] ERROR -- : /usr/local/rvm/gems/ruby-2.4.0/gems/bundler-1.13.7/lib/bundler/vendor/thor/lib/thor.rb:359:in `dispatch' 
E, [2017-04-09T22:37:34.737050 #11291] ERROR -- : /usr/local/rvm/gems/ruby-2.4.0/gems/bundler-1.13.7/lib/bundler/cli.rb:20:in `dispatch' 
E, [2017-04-09T22:37:34.737078 #11291] ERROR -- : /usr/local/rvm/gems/ruby-2.4.0/gems/bundler-1.13.7/lib/bundler/vendor/thor/lib/thor/base.rb:440:in `start' 
E, [2017-04-09T22:37:34.737106 #11291] ERROR -- : /usr/local/rvm/gems/ruby-2.4.0/gems/bundler-1.13.7/lib/bundler/cli.rb:11:in `start' 
E, [2017-04-09T22:37:34.737136 #11291] ERROR -- : /usr/local/rvm/gems/ruby-2.4.0/gems/bundler-1.13.7/exe/bundle:34:in `block in <top (required)>' 
E, [2017-04-09T22:37:34.737170 #11291] ERROR -- : /usr/local/rvm/gems/ruby-2.4.0/gems/bundler-1.13.7/lib/bundler/friendly_errors.rb:100:in `with_friendly_errors' 
E, [2017-04-09T22:37:34.737200 #11291] ERROR -- : /usr/local/rvm/gems/ruby-2.4.0/gems/bundler-1.13.7/exe/bundle:26:in `<top (required)>' 
E, [2017-04-09T22:37:34.737230 #11291] ERROR -- : /usr/local/rvm/gems/ruby-2.4.0/bin/bundle:22:in `load' 
E, [2017-04-09T22:37:34.737253 #11291] ERROR -- : /usr/local/rvm/gems/ruby-2.4.0/bin/bundle:22:in `<main>' 
E, [2017-04-09T22:37:34.737266 #11291] ERROR -- : /usr/local/rvm/gems/ruby-2.4.0/bin/ruby_executable_hooks:15:in `eval' 
E, [2017-04-09T22:37:34.737280 #11291] ERROR -- : /usr/local/rvm/gems/ruby-2.4.0/bin/ruby_executable_hooks:15:in `<main>' 

、/home/rails/myproject/.rbenv-vars、私はRailsが環境中にこれらの値を組み込むために得る、またはいくつかがあるにはどうすればよい

SECRET_KEY_BASE=secretbase 
APP_DATABASE_PASSWORD=apppassword 

を定義しています私は他の場所に置くshoudlこれらの値は何ですか?

答えて

1
シェル
  • 使用フィガロの宝石で
  • 使用export SECRET_KEY_BASE=secretbaseが、私はそれを使用
    1. はlocal_env.ymlファイルを使用
    ここ

    さらに詳しい情報:rails environment variables

  • +0

    、私はそれを入れていますようapplication.rb 3.宝石でconfig/で.ymlと負荷を作成します?。 #2のために、単に私のGemfileにその宝石を含める以上のことは何もありません。 #3では、config/secrets.xmlではなくlocal_env.ymlを使用していますか? – Dave

    +0

    コマンドの#1では、レールを実行します。 #2の場合は、gemのGithubで指示を得ることができる設定ファイルを作成してください。 #3のためにはまだそれが必要です。 local_env.ymlはuse env変数を管理する単なる方法です。 – aisensiy

    0

    は、あなたをENV変数を宣言するにはこれをホームフォルダのSECRET_KEY_BASE=secretbase .bashrcまたは.bash_profileに追加するか、シェル内にSECRET_KEY_BASE=secretbaseを書き出すことができます。あなたはthis.because RailsはあなたがYMLにRubyのコードを使用している知っている必要がありますため、他の宝石を使用したくない場合は、yml.erbにごymlファイルの拡張子を変更する必要がありYMLファイルにそれを使用する

    さて第二の点、ファイル。 <%= %>'は、拡張でyml.erbになるように、Railsでvarとメソッドを呼び出す方法です。

    0

    これは、env変数を読み取る方法です。<%= ENV["SECRET_KEY_BASE"] %> エラーを解決するには、SECRET_KEY_BASEの値を指定する必要があります。 これには、次のいずれかの方法を使用できます 1.シェルを使用してエクスポートします。 export SECRET_KEY_BASE=secretvalue 2.#1についてはfigaro, dotenv

    関連する問題