生产环境变量

Car*_*nos 4 deployment capistrano ruby-on-rails

我目前正在亚马逊上部署我的Rails应用程序,我面临着环境变量的问题.

我正在开发和测试中使用dotenv gem,它在尝试访问我的环境变量时工作正常,但在生产中它似乎不起作用.我读到dotenv gem并不适合生产.我必须设置近20个不同的环境变量,包括API密钥等,我正在使用rubber/capistrano进行部署.

我怎样才能以干净的方式工作?

And*_*rew 15

dotenv部署自述中提到了如何在生产环境中使用它:

如果您使用的是Capistrano 3+:

只需将.env添加到linked_files列表中:

set :linked_files, %w{.env}
Run Code Online (Sandbox Code Playgroud)

如果您使用的是Capistrano 2.xx版本:

在您的config/deploy.rb文件中:

require "dotenv/capistrano"
Run Code Online (Sandbox Code Playgroud)

它将符号链接.env位于/path/to/shared在新版本中.

请记住在应用程序的gem中添加:production组:dotenv-railsGemfile

gem 'dotenv-rails', :groups => [:development, :test, :production]
Run Code Online (Sandbox Code Playgroud)


Mar*_*ark 1

你可以使用费加罗宝石。我正在使用它并且它在生产中运行良好。