我正在运行一个 jelastic 设置来托管多个 Rails 应用程序。
在 Rails 中,将配置存储在环境中是很常见的。尤其是机密数据,例如密码或访问密钥。
我应该将它们放在 Ruby/Rails jelastic 设置的什么位置?
我目前有 nginx 和乘客;因为这是默认设置。如果 Puma 或 Unicorn 让这变得更容易或更强大,我很想听听。
/etc/nginx/nginx.conf
我目前在using nginx env指令中声明了我的环境变量。但这意味着我将秘密存储在 nginx.conf 文件中。呸。
## ENV VARS
env SECRET_KEY_BASE=xxxxxxxxxxxx;
env BLAZER_USERNAME=uuuuu;
env BLAZER_PASSWORD=xxxxxxxxxxxx;
env AWS_ID=aaa;
env AWS_SECRET_KEY=aaa;
env BLAZER_DATABASE_URL=postgres://uuu:ppp@example.com:5432/production;
- 您如何在任何 jelastic 设置中管理您的秘密?
- 您如何在 Rails jelastic 设置中管理您的秘密?
- 您在哪里存储环境变量以供正在运行的应用程序获取?
编辑:我对将秘密远离“机器上的其他用户/进程”不感兴趣。我不想将我的秘密存储在我的应用程序 git-repo 中。这是非常非常糟糕的做法。因此,我希望我的 Rails 应用程序能够读取ENV['AWS_SECRET_KEY']
,而不是将该密钥存储在我的代码库中的某个位置。