ruby-on-rails – Rails – Mina – 无法在database.yml文件中加
发布时间:2020-12-16 21:03:47 所属栏目:百科 来源:网络整理
导读:Mina无法加载 database.yml文件中的环境变量,如下所述: deploy.rb: task :deploy = :environment do deploy do # Put things that will set up an empty directory into a fully set-up # instance of your project. invoke :'git:clone' invoke :'deploy:
Mina无法加载
database.yml文件中的环境变量,如下所述:
deploy.rb: task :deploy => :environment do deploy do # Put things that will set up an empty directory into a fully set-up # instance of your project. invoke :'git:clone' invoke :'deploy:link_shared_paths' invoke :'bundle:install' invoke :'rails:db_migrate' queue! "#{rake} db:seed" invoke :'rails:assets_precompile' invoke :'deploy:cleanup' end end vim~ / .bash_profile: export MYSQLUSERNAME=mysql_user_name export MYSQLPASSWORD=mysql_password database.yml的: production: adapter: mysql2 encoding: utf8 reconnect: false database: my_db_name pool: 5 username: <%= ENV['MYSQLUSERNAME'] %> password: <%= ENV['MYSQLPASSWORD'] %> 错误: $mina deploy ..... ....... -----> DB migrations unchanged; skipping DB migration $RAILS_ENV="production" bundle exec rake db:seed rake aborted! Mysql2::Error: Access denied for user 'root'@'localhost' (using password: NO) /home/user_name/.rvm/gems/ruby-2.0.0-p247/gems/mysql2-0.3.16/lib/mysql2/client.rb:70:in `connect' 注意:如果我替换用户名(mysql_user_name)和密码(mysql_user_name)而不是<%= ENV ['MYSQLUSERNAME']%>和<%= ENV ['MYSQLPASSWORD']%>在database.yml文件中,它运行良好. 任何人都可以请帮助我,我可以在部署使用Mina时在* .yml文件中加载ENV变量. 谢谢! 解决方法
也许迟到了,但这可能有助于其他用户.
对于部署,我使用Figaro gem,它允许在一个YML文件中配置一组环境变量.这些变量以相同的方式使用. 例如: 阳明: MY_ENVIRONMENT_VARIABLE: 'Hi there!' 应用程序Ruby文件: <%= ENV['MY_ENVIRONMENT_VARIABLE'] %> 优点是您可以使用SCP命令将文件复制到服务器(假设您使用的是* nix系统),更好的是您可以创建一个Mina任务来完成它. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |