使用敏感设置信息部署到Heroku

TK.*_*TK. 10 deployment ruby-on-rails heroku

我正在使用GitHub代码和Heroku作为我的rails应用程序的部署平台.

我不想在Git下拥有敏感数据.此类数据包括数据库文件设置(database.yml)和一些具有秘密API密钥的其他文件.

当我部署到heroku时,我如何处理不受版本控制的文件.

当我使用Capistrano时,我可以编写一些钩子方法,但我不知道如何处理Heroku.

Joh*_*ley 20

对于Heroku,你需要database.yml在Git下,因为Heroku会自动读取它并从中创建一个PostgreSQL配置.

对于API密钥等其他敏感信息,Heroku提供有效环境变量的配置变量.您可以使用以下方法添加它

heroku config:add KEY=value
Run Code Online (Sandbox Code Playgroud)

- 使用以下命令从您的应用程序中访问它们:

ENV['KEY']
Run Code Online (Sandbox Code Playgroud)

请注意,可以使用heroku命令行程序列出,添加和删除配置变量,并且一旦设置它们就是持久性的.