gpt4 book ai didi

ruby-on-rails - 在Rails 5.2上将凭据.yml与heroku结合使用

转载 作者:行者123 更新时间:2023-12-03 15:34:57 25 4
gpt4 key购买 nike

我在Rails 5.2上有一个应用程序,以前曾在DigitalOcean上托管过,但我需要在heroku上托管它。我一直在阅读heroku无法读取Credentials.yml,因为它位于gitignore上,当然我也不想将其公开。

所以我的关键变量是这样的(还有redis的例子):

host: Rails.application.credentials.redis_host,
password: Rails.application.credentials.redis_password

Heroku无法阅读此内容。所以我的问题是将其更改为heroku ENV变量的最佳方法是什么?我是否需要将所有当前 key (大约340个)编辑为ENV ['SOMEKEY']?

多谢您的协助!

最佳答案

创建certificate.yml和主 key :

rails credentials:edit 

编辑credentails:
EDITOR=vim rails credentials:edit

与VIM合作:
  • 用于插入
  • 按i//进行必要的编辑
  • 退出按Esc
  • :wq//用于退出并保存
  • :q!//退出而不保存

  • 凭证示例.YML如下所示:
    development:
    github:
    client: acascascsacascascasc
    secret: vdsvsvg34g34g
    production:
    github:
    client: 34g3rvv
    secret: erberb43

    查找凭证:
    rails c
    Rails.application.credentials.dig(:aws, :access_key_id)

    或如果使用env变量
    Rails.application.credentials[Rails.env.to_sym][:aws][:access_key_id]

    certificate.yml文件不应位于gitignore中。

    解密凭据的主 key 应该在gitignore中。

    要在生产环境中设置主 key ,请执行以下操作:
    heroku config:set RAILS_MASTER_KEY=123456789

    或者
    heroku config:set RAILS_MASTER_KEY=`cat config/master.key`

    您只需要了解Ruby on Rails中的凭据即可。祝你好运 :)

    关于ruby-on-rails - 在Rails 5.2上将凭据.yml与heroku结合使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62011541/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com