Ruby on rails 缺少'的“机密密钥”基;生产';但它在我的加密文件中

Ruby on rails 缺少'的“机密密钥”基;生产';但它在我的加密文件中,ruby-on-rails,Ruby On Rails,我正在开发一个6.0.2Rails应用程序,在开发过程中一切似乎都很好(我可以创建数据库并在本地主机上运行该应用程序)。然而,我一直在努力让它在生产中发挥作用。我有一个master.key文件,其中包含我的密钥和一个credentials.yml.enc文件,其中包含:secret\u key\u base:123…(当然还有我的真实密钥) 有了这个,我尝试运行RAILS\u ENV=production RAILS db:setup,但它总是失败,出现以下错误: rails aborted!

我正在开发一个6.0.2Rails应用程序,在开发过程中一切似乎都很好(我可以创建数据库并在本地主机上运行该应用程序)。然而,我一直在努力让它在生产中发挥作用。我有一个
master.key
文件,其中包含我的密钥和一个
credentials.yml.enc
文件,其中包含:
secret\u key\u base:123…
(当然还有我的真实密钥)

有了这个,我尝试运行
RAILS\u ENV=production RAILS db:setup
,但它总是失败,出现以下错误:

rails aborted!
ArgumentError: Missing `secret_key_base` for 'production' environment, set this string with `rails credentials:edit`
/Users/victor/.rvm/gems/ruby-2.6.3/gems/railties-6.0.2.1/lib/rails/application.rb:580:in `validate_secret_key_base'
/Users/victor/.rvm/gems/ruby-2.6.3/gems/railties-6.0.2.1/lib/rails/application.rb:423:in `secret_key_base'
/Users/victor/.rvm/gems/ruby-2.6.3/gems/devise-4.7.1/lib/devise/secret_key_finder.rb:24:in `key_exists?'
/Users/victor/.rvm/gems/ruby-2.6.3/gems/devise-4.7.1/lib/devise/secret_key_finder.rb:16:in `find'
/Users/victor/.rvm/gems/ruby-2.6.3/gems/devise-4.7.1/lib/devise/rails.rb:37:in `block in <class:Engine>'
/Users/victor/.rvm/gems/ruby-2.6.3/gems/railties-6.0.2.1/lib/rails/initializable.rb:32:in `instance_exec'
/Users/victor/.rvm/gems/ruby-2.6.3/gems/railties-6.0.2.1/lib/rails/initializable.rb:32:in `run'
/Users/victor/.rvm/gems/ruby-2.6.3/gems/railties-6.0.2.1/lib/rails/initializable.rb:61:in `block in run_initializers'
/Users/victor/.rvm/gems/ruby-2.6.3/gems/railties-6.0.2.1/lib/rails/initializable.rb:60:in `run_initializers'
/Users/victor/.rvm/gems/ruby-2.6.3/gems/railties-6.0.2.1/lib/rails/application.rb:363:in `initialize!'
/Users/victor/Documents/SaaS projects/myblog/config/environment.rb:5:in `<main>'
/Users/victor/.rvm/gems/ruby-2.6.3/gems/bootsnap-1.4.6/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:23:in `require'
/Users/victor/.rvm/gems/ruby-2.6.3/gems/bootsnap-1.4.6/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:23:in `block in require_with_bootsnap_lfi'
/Users/victor/.rvm/gems/ruby-2.6.3/gems/bootsnap-1.4.6/lib/bootsnap/load_path_cache/loaded_features_index.rb:92:in `register'
/Users/victor/.rvm/gems/ruby-2.6.3/gems/bootsnap-1.4.6/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:22:in `require_with_bootsnap_lfi'
/Users/victor/.rvm/gems/ruby-2.6.3/gems/bootsnap-1.4.6/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:31:in `require'
/Users/victor/.rvm/gems/ruby-2.6.3/gems/zeitwerk-2.3.0/lib/zeitwerk/kernel.rb:23:in `require'
/Users/victor/.rvm/gems/ruby-2.6.3/gems/activesupport-6.0.2.1/lib/active_support/dependencies.rb:325:in `block in require'
/Users/victor/.rvm/gems/ruby-2.6.3/gems/activesupport-6.0.2.1/lib/active_support/dependencies.rb:291:in `load_dependency'
/Users/victor/.rvm/gems/ruby-2.6.3/gems/activesupport-6.0.2.1/lib/active_support/dependencies.rb:325:in `require'
/Users/victor/.rvm/gems/ruby-2.6.3/gems/railties-6.0.2.1/lib/rails/application.rb:339:in `require_environment!'
/Users/victor/.rvm/gems/ruby-2.6.3/gems/railties-6.0.2.1/lib/rails/application.rb:515:in `block in run_tasks_blocks'
/Users/victor/.rvm/gems/ruby-2.6.3/gems/railties-6.0.2.1/lib/rails/commands/rake/rake_command.rb:23:in `block in perform'
/Users/victor/.rvm/gems/ruby-2.6.3/gems/railties-6.0.2.1/lib/rails/commands/rake/rake_command.rb:20:in `perform'
/Users/victor/.rvm/gems/ruby-2.6.3/gems/railties-6.0.2.1/lib/rails/command.rb:48:in `invoke'
/Users/victor/.rvm/gems/ruby-2.6.3/gems/railties-6.0.2.1/lib/rails/commands.rb:18:in `<main>'
/Users/victor/.rvm/gems/ruby-2.6.3/gems/bootsnap-1.4.6/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:23:in `require'
/Users/victor/.rvm/gems/ruby-2.6.3/gems/bootsnap-1.4.6/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:23:in `block in require_with_bootsnap_lfi'
/Users/victor/.rvm/gems/ruby-2.6.3/gems/bootsnap-1.4.6/lib/bootsnap/load_path_cache/loaded_features_index.rb:92:in `register'
/Users/victor/.rvm/gems/ruby-2.6.3/gems/bootsnap-1.4.6/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:22:in `require_with_bootsnap_lfi'
/Users/victor/.rvm/gems/ruby-2.6.3/gems/bootsnap-1.4.6/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:31:in `require'
/Users/victor/.rvm/gems/ruby-2.6.3/gems/activesupport-6.0.2.1/lib/active_support/dependencies.rb:325:in `block in require'
/Users/victor/.rvm/gems/ruby-2.6.3/gems/activesupport-6.0.2.1/lib/active_support/dependencies.rb:291:in `load_dependency'
/Users/victor/.rvm/gems/ruby-2.6.3/gems/activesupport-6.0.2.1/lib/active_support/dependencies.rb:325:in `require'
/Users/victor/Documents/SaaS projects/myblog/bin/rails:9:in `<top (required)>'
/Users/victor/.rvm/gems/ruby-2.6.3/gems/spring-2.1.0/lib/spring/client/rails.rb:28:in `load'
/Users/victor/.rvm/gems/ruby-2.6.3/gems/spring-2.1.0/lib/spring/client/rails.rb:28:in `call'
/Users/victor/.rvm/gems/ruby-2.6.3/gems/spring-2.1.0/lib/spring/client/command.rb:7:in `call'
/Users/victor/.rvm/gems/ruby-2.6.3/gems/spring-2.1.0/lib/spring/client.rb:30:in `run'
/Users/victor/.rvm/gems/ruby-2.6.3/gems/spring-2.1.0/bin/spring:49:in `<top (required)>'
/Users/victor/.rvm/gems/ruby-2.6.3/gems/spring-2.1.0/lib/spring/binstub.rb:11:in `load'
/Users/victor/.rvm/gems/ruby-2.6.3/gems/spring-2.1.0/lib/spring/binstub.rb:11:in `<top (required)>'
/Users/victor/Documents/SaaS projects/myblog/bin/spring:15:in `require'
/Users/victor/Documents/SaaS projects/myblog/bin/spring:15:in `<top (required)>'
bin/rails:3:in `load'
bin/rails:3:in `<main>'
Tasks: TOP => db:setup => db:schema:load_if_ruby => db:create => db:load_config => environment
(See full trace by running task with --trace)
rails中止!
ArgumentError:缺少“生产”环境的“secret\u key\u base”,请使用“rails凭据:编辑”设置此字符串`
/Users/victor/.rvm/gems/ruby-2.6.3/gems/railties-6.0.2.1/lib/rails/application.rb:580:in'validate\u secret\u key\u base'
/Users/victor/.rvm/gems/ruby-2.6.3/gems/railties-6.0.2.1/lib/rails/application.rb:423:in'secret\u key\u base'
/Users/victor/.rvm/gems/ruby-2.6.3/gems/designe-4.7.1/lib/designe/secret\u key\u finder.rb:24:在“key\u exists”中
/Users/victor/.rvm/gems/ruby-2.6.3/gems/designe-4.7.1/lib/designe/secret\u key\u finder.rb:16:in'find'
/Users/victor/.rvm/gems/ruby-2.6.3/gems/designe-4.7.1/lib/designe/rails.rb:37:in'block-in'
/Users/victor/.rvm/gems/ruby-2.6.3/gems/railties-6.0.2.1/lib/rails/initializable.rb:32:in'instance_exec'
/Users/victor/.rvm/gems/ruby-2.6.3/gems/railties-6.0.2.1/lib/rails/initializable.rb:32:in'run'
/Users/victor/.rvm/gems/ruby-2.6.3/gems/railties-6.0.2.1/lib/rails/initializable.rb:61:在“运行中的块初始化器”中
/Users/victor/.rvm/gems/ruby-2.6.3/gems/railties-6.0.2.1/lib/rails/initializable.rb:60:in'run_initializers'
/Users/victor/.rvm/gems/ruby-2.6.3/gems/railties-6.0.2.1/lib/rails/application.rb:363:in'initialize!'
/Users/victor/Documents/SaaS projects/myblog/config/environment.rb:5:in`'
/Users/victor/.rvm/gems/ruby-2.6.3/gems/bootsnap-1.4.6/lib/bootsnap/load\u path\u cache/core\u ext/kernel\u require.rb:23:in'require'
/Users/victor/.rvm/gems/ruby-2.6.3/gems/bootsnap-1.4.6/lib/bootsnap/load\u path\u cache/core\u ext/kernel\u require.rb:23:in`block in require\u with\u bootsnap\u lfi'
/Users/victor/.rvm/gems/ruby-2.6.3/gems/bootsnap-1.4.6/lib/bootsnap/load\u path\u cache/load\u features\u index.rb:92:在“寄存器”中
/Users/victor/.rvm/gems/ruby-2.6.3/gems/bootsnap-1.4.6/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:22:in`require_with_bootsnap_lfi'
/Users/victor/.rvm/gems/ruby-2.6.3/gems/bootsnap-1.4.6/lib/bootsnap/load\u path\u cache/core\u ext/kernel\u require.rb:31:in'require'
/Users/victor/.rvm/gems/ruby-2.6.3/gems/zeitwerk-2.3.0/lib/zeitwerk/kernel.rb:23:in'require'
/Users/victor/.rvm/gems/ruby-2.6.3/gems/activesupport-6.0.2.1/lib/active\u support/dependencies.rb:325:in`block in require'
/Users/victor/.rvm/gems/ruby-2.6.3/gems/activesupport-6.0.2.1/lib/active\u support/dependencies.rb:291:in'load\u dependency'
/Users/victor/.rvm/gems/ruby-2.6.3/gems/activesupport-6.0.2.1/lib/active\u support/dependencies.rb:325:in'require'
/Users/victor/.rvm/gems/ruby-2.6.3/gems/railties-6.0.2.1/lib/rails/application.rb:339:in'require_environment!'
/Users/victor/.rvm/gems/ruby-2.6.3/gems/railties-6.0.2.1/lib/rails/application.rb:515:in`block in run\u tasks\u blocks'
/Users/victor/.rvm/gems/ruby-2.6.3/gems/railties-6.0.2.1/lib/rails/commands/rake/rake_command.rb:23:在“执行中的块”中
/Users/victor/.rvm/gems/ruby-2.6.3/gems/railties-6.0.2.1/lib/rails/commands/rake/rake_command.rb:20:in'perform'
/Users/victor/.rvm/gems/ruby-2.6.3/gems/railties-6.0.2.1/lib/rails/command.rb:48:in'invoke'
/Users/victor/.rvm/gems/ruby-2.6.3/gems/railties-6.0.2.1/lib/rails/commands.rb:18:in`'
/Users/victor/.rvm/gems/ruby-2.6.3/gems/bootsnap-1.4.6/lib/bootsnap/load\u path\u cache/core\u ext/kernel\u require.rb:23:in'require'
/Users/victor/.rvm/gems/ruby-2.6.3/gems/bootsnap-1.4.6/lib/bootsnap/load\u path\u cache/core\u ext/kernel\u require.rb:23:in`block in require\u with\u bootsnap\u lfi'
/Users/victor/.rvm/gems/ruby-2.6.3/gems/bootsnap-1.4.6/lib/bootsnap/load\u path\u cache/load\u features\u index.rb:92:在“寄存器”中
/Users/victor/.rvm/gems/ruby-2.6.3/gems/bootsnap-1.4.6/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:22:in`require_with_bootsnap_lfi'
/Users/victor/.rvm/gems/ruby-2.6.3/gems/bootsnap-1.4.6/lib/bootsnap/load\u path\u cache/core\u ext/kernel\u require.rb:31:in'require'
/Users/victor/.rvm/gems/ruby-2.6.3/gems/activesupport-6.0.2.1/lib/active\u support/dependencies.rb:325:in`block in require'
/Users/victor/.rvm/gems/ruby-2.6.3/gems/activesupport-6.0.2.1/lib/active\u support/dependencies.rb:291:in'load\u dependency'
/Users/victor/.rvm/gems/ruby-2.6.3/gems/activesupport-6.0.2.1/lib/active\u support/dependencies.rb:325:in'require'
/Users/victor/Documents/SaaS projects/myblog/bin/rails:9:in`'
/Users/victor/.rvm/gems/ruby-2.6.3/gems/spring-2.1.0/lib/spring/client/rails.rb:28:in'load'
/Users/victor/.rvm/gems/ruby-2.6.3/gems/spring-2.1.0/lib/spring/client/rails.rb:28:in'call'
/Users/victor/.rvm/gems/ruby-2.6.3/gems/spring-2.1.0/lib/spring/client/command.rb:7:in'call'
/Users/victor/.rvm/gems/ruby-2.6.3/gems/spring-2.1.0/lib/spring/client.rb:30:in'run'
/Users/victor/.rvm/gems/ruby-2.6.3/gems/spring-2.1.0/bin/spring:49:in`'
/Users/victor/.rvm/gems/ruby-2.6.3/gems/spring-2.1.0/lib/spring/binstub.rb:11:in'load'
/Users/victor/.rvm/gems/ruby-2.6.3/gems/spring-2.1.0/lib/spring/binstub.rb:11:in`'
/Users/victor/Documents/SaaS projects/myblog/bin/spring:15:in'require'
/Users/victor/Documents/SaaS projects/myblog/bin/spring:15:in`'
箱子/轨道:3:在“装载”中
箱子/轨道:3:in`'
任务:TOP=>db:setup=>db:schema:load\u if\u ruby=>db:create=>db:load\u config=>environment
(通过使用--trace运行任务查看完整跟踪)
我在这里真的很困惑,因为它说没有
密钥库
,但它是在我的
凭证.yml.enc
中定义的(它是其中唯一的东西!)

我查看了一系列其他stackoverflow问题,发现这个问题通常是由于Rails采用的旧方法造成的
rails credentials:edit --environment production